PanVk – Panfrost gets a Vulkan driver

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.

PanVk Panfrost Vulkan

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 :

  1. The driver lacks almost all core features that would make it usable for real-world applications
  2. Optimizations are left on the side for now
  3. 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

Share this:
FacebookTwitterHacker NewsSlashdotRedditLinkedInPinterestFlipboardMeWeLineEmailShare

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK 5 ITX RK3588 mini-ITX motherboard

7 Replies to “PanVk – Panfrost gets a Vulkan driver”

  1. The Mali-G31 used on the Odroid Go Advance uses the Panfrost driver, right?
    Because if so, when Vulkan becomes available, will make all those retro handhelds even better

  2. When I see news about FOSS driver for ARM GPUs and especially for Panfrost (Alyssa Rosenzweig) I wonder why the Linux progress on the Apple M1 SoC and its GPU is not reported anywhers Asahi Linux?

    1. None of basic platform code for M1 is in mainline yet let alone GPU drivers.

      Following the progress on the arm linux list has been interesting. Especially because Corellium stole the thunder from the asahi guy(s) by going “Linux on M1? Oh, we can do that already” and sending their series in.

      I can’t help that think Apple has made the M1 so weird that it’s going to get irritating to support at some point and it won’t be worth it for the 4 people using it.

      1. I mean, Asahi Linux and Alyssa Rosenzweig wrote superb posts on their blogs, and said to do regularly.
        I feel like both efforts (Corellium) will kind of benefit / help each other.

        The Apple M1 boot loader is left open, not locked like iphone/ipad. Windows and BSD porting will be tried sooner than later too.
        And of course is a lot of effort to get it up, but hardware is nice. So any attention, exposure, help is good.

        1. The problem is that Apple M1 is only available on Apple hardware. There’s no plan to sell the processor or even a system-on-module to third parties. So as long as the processor cannot be used on third-party hardware, or somehow Apple released an SBC, I have no plan to write about it.

        2. >The Apple M1 boot loader is left open,

          For now. As soon as it’s inconvenient it’ll get locked out so you’ll have exactly the same situation as the various Linux on console efforts: You get stuck on one specific firmware version and that version gets blocked from running the stuff you actually want to run when you aren’t booting linux for 5 minutes once in a blue moon to feel like you’re hackerman.

Leave a Reply

Your email address will not be published. Required fields are marked *

Khadas VIM4 SBC
Khadas VIM4 SBC