> complaining that they aren't 'real' drivers because they don't give you low enough access to the device is like complaining that your disk controller no longer gives you the ability to manually step the heads and you are limited to asking it to just give you a block.
Let me clarify here. I'm certainly not complaining about what bcom has released for r-pi. It is better than what is available from the other SoC GPU vendors. (Well, ironically, the EGL plugin API (wsegl) is available for some older powervr drivers, which is something roughly equivalent, although only slightly worse because you have to still care about libc version, hardfloat/softfloat, etc)
The only thing I complain about is people who call it a graphics driver, when it very clearly is not.
Posted Sep 28, 2013 4:00 UTC (Sat) by dlang (✭ supporter ✭, #313)
[Link]
Thanks for the clarification.
What is it that defines a "graphics driver" as far as you are concerned?
my view has been that whatever code the OS needs to run to get the pixels on the screen would be the graphics driver and it doesn't matter if the mechanism to control the bits is bit manipulation in video memory (i.e. framebuffer), passing openGL commands directly to the GPU, or even selecting which characters to put where to implement 'graphics' on a vt100 screen.
Free drivers for ARM graphics
Posted Sep 28, 2013 12:05 UTC (Sat) by robclark (subscriber, #74945)
[Link]
To me, a graphics driver is something that drives the hardware, lets me implement new extensions and compiler features, fix bugs that effect me, etc.
opengl is too high level, especially when you take glsl into account.
The closest equivalent in a more traditional gpu architecture to what is open in rp-i would be an open EGL layer (which would let you implement support for wayland or some new window system). The r-pi does have some advantage that libc version isn't a problem, but even that isn't too big of an issue w/ something like libhybris (which would be a considerably more simple thing if it didn't have to emulate one EGL on top of another).