We’ve followed with interest the progress of the Panfrost open-source driver for Arm Mali Midgard and Bifrost GPUs which has gotten more traction over time with official support from Arm and is getting closer to OpenGL ES 3.0 compliance with work on OpenGL ES 3.1 on the way.
But Collabora has now started working on PanVk driver for the more recent Vulkan graphics API, as part of the Panfrost project.
This is very early stage, but the 3D cube demo above appears to be rendered with Panfrost’s PanVk Vulkan driver on Wayland in a Khadas VIM3 board based on Amlogic A311D hexa-core Cortex-A73/A53 processor with a Mali-G52 GPU.
As noted in the announcement, getting a useful Vulkan driver will take time as :
- The driver lacks almost all core features that would make it usable for real-world applications
- Optimizations are left on the side for now
- The code base is likely to evolve quickly as features/optimizations are added
That also means upstreaming to mesa will not happen right now, but only once Collabora engineers consider enough features are supported and the code base is clean enough.
You can check out the code on Gitlab’s Panfrost project, PanVk tree, and/or can join the
fun development on #panfrost IRC channel hosted on freenode.irc.net.