The state of ARM GPU's in Linux

What is the state of the GPU drivers for the processor options in the DevTerm?

The RPi driver is somewhat of a known quality at this point: for the CM3 it’s not sufficient to run GNOME 3 well, nor is WebM video accelerated, making YouTube pretty much an experience you’d get from the 90’s Internet.

Where are we at with the A06 and A04 SoC in the DevTerm? Are there decent drivers for the Mali T720 and T860 GPU’s in these chips? Do they offer GPU acceleration that is capable of running GNOME 3 without lag and accelerated web video at at least 1080p resolution without overloading the CPU? Even if you don’t use these, I look at this as being a basic benchmark for modern ARM chips since the lowest-end Intel Atom Embedded CPU that still ships can do both of these things without being dragged down, and every consumer chip including 6-year old Celeron’s can easily handle it. Why are ARM chip dealers willing to embrace closed-source driver development for Android so much but Linux open-source is an after-thought? It’s like the whole ARM computing platform and ecosystem, which is built around custom IP and patent licensing, is a perfect match for Android because Android is friendly towards closed hardware IP. I never really understood why Android uses the Linux kernel in place of a BSD one.

1 Like

Panfrost for the A04 Mali. It’s super buggy though. Definitely don’t want to do anything 3D accelerated on it.

OpenGL renderer string: Mali T720 (Panfrost)
OpenGL core profile version string: 3.1 Mesa 21.0.3

Easy, android is millions of devices, “open source” platform, are what thousands of sales?
SoC used in most “open source” platform come from other market where open or close source driver is not relevant.

As for video decode acceleration, most SoC do that without any issues including the CM3 as long as you are not using the non standard Google format.

Android uses the Linux kernel, which is open source, and includes a monolithic kernel with drivers incorporated. However, ARM licensees only want to make closed-sourced drivers added as external modules to the kernel.

The CM3 is junk for web video due to browsers not supporting ARM video acceleration all around, aside from Chromium, which Google plays fast and loose with open source technologies. I don’t want to be locked to a particular browser just because of hardware support - this is why I don’t use Windows. I know it’s junk because I had a bunch of Raspberry Pi 3’s and got rid of them when they weren’t sufficient as x86 replacements. The CM4 is faster, but the drivers still suck for it. You can’t play any kind of 1080p video without maxing out the CPU - and not just the GPU cores. And for a chip that’s capable of doing 4k output, but also capable via Android, that says a lot about GPL open source support in the ARM hardware ecosystem considering that x86 standardizes on a firmware interface, but also can easily handle 1080p and higher video hardware acceleration along with 3D GPU acceleration for UI and more, with low-end chips, and has mature Linux support. ARM hardware is put out with custom GPU’s that don’t get Linux support for years after their release because of lack of interest from the manufacturers, and that’s just sad.

I think the real problem is that ARM hardware tends to target OpenGL ES for Android, whereas Linux desktop environments want full OpenGL support that is more of a driver hack than being a hardware feature.

GNOME 4/40 has already shipped last year. GNOME 3 came out in 2008 and none of the Raspberry Pi’s can run either “well”, with the exception that the Pi 4 runs it “acceptably”, but with no 3D acceleration to take the load off the CPU cores. This is a sad state of affairs when you consider the RPi4 came out 2 years earlier than GNOME 4.

Food for thought: these desktop environments do not include all the flash and transparency paralaxxing effects that are present in Windows Aero, released in 2006, yet these chip drivers can’t handle something comparatively conservative like GNOME 40, which is closer to the macOS dock/top-menu paradigm introduced by Apple over 20 years ago.

1 Like

There are open gl es pkgs for linux too.
A06 gpu works quite well for 3d graphic acceleration but the rkvdec is still not stable as not many contributors are working on it.

Its hard to say whether arm gpu and vpu drivers will ever be stable on linux unless the vendor themselve contribute it to open source projects.

Until then we should not expect much from the hardware.

Things are changing in the open source world :slight_smile:

(not directly related to the A04/A06)