4 ms·
I've been playing around with Freon on ChromiumOS - it's really a nice solution to pushing pixels fast and I prefer its simplicity to that of Wayland or Mir. T
by convivialdingo 11y ago
I've been playing around with Freon on ChromiumOS - it's really a nice solution to pushing pixels fast and I prefer its simplicity to that of Wayland or Mir. The performance I get out of an ARM GPU is very good.
Only problem I have with my Chromebook is the screen stinks.
- yebyen 11y agoHow have you been playing with Freon, if you don't mind my asking? Specifically wondering, does it expose some GLES context that you can work in, is that passed through, or is that reserved for the compositor... if you have anything at all to share I'd be interested in that. My tale of woe, which is really OT in this thread, is that I've been trying to get an Enlightenment WM to operate in accelerated mode on my Samsung Exynos-based chromebook that has a Mali T-604 graphics chip. Enlightenment says it can support accelerated mode with either an OpenGL or GLES driver, so my impression is this should be technically possible (even if it can never be done in an X server running alongside Freon). I have got free-standing Xorg to run very fast on ALARM Arch Linux, using framebuffer driver, and Arch which provides a decently recent Enlightenment... but damned if I'm able to get the two to talk together and let the WM acknowledge the graphics capabilities of the hardware. I know this has nothing to do with Freon but I am curious what you're doing with it nonetheless, and I saw an opportunity and thought I might be able to corner someone with more knowledge and get some answers at the same time.
- dTal 11y agoI have a similar tale of woe as you. I bought my Samsung xe303 specifically as a kind of budget Macbook Air to run desktop Linux on (I currently use an EeePC which is roughly half as powerful). I haven't tried Enlightenment, have to give that a go; the only window manager I could find that supported GLES was KWin, which actually runs but is quite unstable. I've also experimented with various OpenGL wrappers, with varying success. It's a pain because it's a really nice bit of kit but I haven't managed to make it practical as a desktop machine. I also would be interested in what it's possible with Freon. I am really surprised there isn't a "just works" prebuilt image for ARM Chromebooks. Its absence suggests to me that nobody has figured this out, yet.
- yebyen 11y agoI know some of the Enlightenment core guys, and of course some of them work for Samsung; I've brought it up to them and it's safe to say that this is not a priority business case for them. They are all great folks, but with Samsung driving the train, I think this is no longer exclusively a volunteer project or necessarily strictly a labor of love for everyone anymore. That being said, it should work. I've successfully installed the dev kit from ARM-MALI support which provides Ubuntu + Mali T604 drivers on an SD card or USB (this was a herculean effort, despite the instructions in question being made specifically for the specific device I have). I haven't repeated this experiment, but I'd like to try again. I'd feel the chances it would work would be higher on Arch, where software is kept more up-to-date than on the ancient kernel and OS that ARM documentation suggested (it's Ubuntu, but not the current release, or even the current LTS release.) You probably already found this page[1] -- r6p0 seems to be newer than when I tried last, maybe you also saw this one[2] -- the best "from-scratch" resource I've found that results in a working graphics driver, but good luck getting a modern release of E20 to compile on that... perhaps it could be upgraded without breaking everything. This thread[3] I haven't visited for a while, but that chronicles my journey pretty well, at least prior to the point where I was trying ALARM or Arch Linux for ARM. The arch install guide[4] is probably your best bet for what you wanted. I was able to get framebuffer driver installed and hosting the fastest yet (non-accelerated) enlightenment version 20 without compiling anything, and without any really complicated setup steps. I haven't found anyone who is using the accelerated drivers on Arch, the reason might be that they are closed-source and compiled for a specific (obsolete) kernel version. There are scripts for compiling enlightenment, if you were going to set out to compile it from git head for yourself, by the way[5]. Don't worry they're called "e-nineteen" -- the latest git head is in fact e-twenty. They should work on any recent Ubuntu or Debian release, don't know about Arch, but you will at least need to take out the line that checks for a specific Ubuntu release to get that to work. May need some specific compile-time flags for efl or enlightenment also. I read something about sun-xi the Open-Source GLES driver for Mali, but it seems to be intended for other chipsets than the T604. I would thereby hazard a guess that you're right, and in fact nobody has figured this out yet. [1]: http://malideveloper.arm.com/resources/drivers/arm-mali-midgard-gpu-user-space-drivers/ http://malideveloper.arm.com/resources/drivers/arm-mali-midg... [2]: http://malideveloper.arm.com/documentation/developer-guides/graphics-and-compute-development-on-samsung-chromebook/ http://malideveloper.arm.com/documentation/developer-guides/... [3]: https://community.arm.com/thread/6477 https://community.arm.com/thread/6477 [4]: http://archlinuxarm.org/platforms/armv7/samsung/samsung-chromebook http://archlinuxarm.org/platforms/armv7/samsung/samsung-chro... [5]: http://gitlab.metrixmatrix.com/kingdonb/e-nineteen http://gitlab.metrixmatrix.com/kingdonb/e-nineteen
- convivialdingo 11y agoTo be clear, Freon is just a name for the graphics access model. There's no free-standing freon library per se (All is scattered as bits and bobs between Chrome, ozone and aura) I've been building a generic windowing system, basically just a pet project to get a custom Aura window manager running on Ubuntu without chome OS. I started by checking out, building and getting frecon to run from here: https://chromium.googlesource.com/chromiumos/platform/frecon/ https://chromium.googlesource.com/chromiumos/platform/frecon... This gets you input and display using Linux KMS and DRM. Next, dig into Ozone code and dig into the drm platform code to figure out how Aura (the window manager) builds. https://chromium.googlesource.com/chromium/src/+/lkgr/ui/ozone/ https://chromium.googlesource.com/chromium/src/+/lkgr/ui/ozo... https://chromium.googlesource.com/chromium/src/+/lkgr/ui/aura/ https://chromium.googlesource.com/chromium/src/+/lkgr/ui/aur... That's basically where I'm at - I have a KMS screen init'ed and am able to push pixels. I'm still working on getting GL wired in correctly myself.