Boris Brezillon
March 25, 2021
Reading time:
The Panfrost project started as a reverse engineering effort to understand Arm Mali Midgard and Bifrost GPU internals. It quickly evolved to focus on the development of a Gallium driver based on this reverse engineering effort, which was progressively extended to support new GLES and GL features (we recently reached a point where we are almost GLES 3.0 comformant, and GLES 3.1 is in the pipe). Last year, a new compiler backend was added to support Mali Bifrost GPUs.
With the Panfrost driver getting more and more mature, the natural next step was to work on an Open Source Vulkan driver for those GPUs.
![]() |
So here is a preview of this driver with enough functions implemented to have vkcube running. Before you get too excited, it is important to clarify a few things. It really is the early stage of the development, which means:
As a side effect, we don't intend to merge the driver in mesa master branch until we have reached a point where enough features are supported and the code base is clean enough.
If you are interested in helping us, please don't hesitate to reach out on IRC (#panfrost channel hosted on freenode.irc.net). There are plenty of functionalities that are left unimplemented, waiting for someone to pick them up.
I would like to thank Alyssa Rosenzweig for patiently going through various aspects of Mali GPUs during the last 2 years. I would also like to thank Erik Faye-Lund and Faith Ekstrand for taking time explaining some details about the Vulkan API.
13/05/2026
Join us next week in Utrecht for RustWeek! We'll be running a SuperTuxKart tournament to showcase Tyr, the Rust driver for Arm Mali GPUs.…
27/04/2026
Collabora's contributions to Git 2.54 and the upcoming 2.55 add powerful config-based hooks with better visibility, opt-in parallel hook…
20/04/2026
Collabora is headed to Stuttgart for XR Expo 2026! Visit us in Hall 2, booth 2C22, to experience the latest around Monado and ElectricMaple,…