AMD's Display Core difficulties
AMD's Display Core difficulties
Posted Dec 16, 2016 15:53 UTC (Fri) by micka (subscriber, #38720)In reply to: AMD's Display Core difficulties by excors
Parent article: AMD's Display Core difficulties
Depends on what you call niche platform. Sure Linux is a niche platform in the case of GPUs, but for most other hardware it is not.
> [...] so the kernel driver is reduced to basically making high-level RPC calls into the firmware.
If I rememeber correctly, that's the model followed by the original RPi graphics driver.
Well it's a bit special I think linux is actually the guest, the GPU being the host.
I found http://airlied.livejournal.com/76383.html
Posted Dec 16, 2016 18:11 UTC (Fri)
by excors (subscriber, #95769)
[Link]
(Linux is non-niche for mobile GPUs, given the dominance of Android, though Android devices usually have millions of lines of non-upstreamed kernel code so they're happy to ignore kernel developers' preferences anyway.)
As far as I'm aware, the RPi 'GPU' is a special case since it started as essentially a multimedia-focused standalone processor that could drive a product all by itself, and the 'firmware' was the entirety of the OS and application software that ran on it. Then one particular chip had a tiny ARM core stuck onto the side because it was cheap so why not, and that chip was eventually adopted by the RPi, which supported OpenGL ES on the ARM by proxying commands across to the original drivers in the firmware - it would have been too expensive to fully port the drivers to the ARM. (Now Broadcom employs Eric Anholt to develop proper Linux drivers for the 3D and display parts of the GPU, but that's taken years of effort and still isn't quite ready, because it's a lot of hard work). So it has that architecture mainly for historical reasons. I think most other GPUs were originally designed as accelerators for a host processor, so they've developed in the other direction and have been moving more logic off the host and into the GPU.
AMD's Display Core difficulties