Panthor, Collabora's driver for 10th Generation Arm Mali GPUs

Panthor

Panthor an open source GPU kernel driver for the Arm Valhall GPU

Collabora unveiled via a blog post one of the most recent milestones within their presented works, and that is has announced the long-awaited controller merger of the kernel which adds support for 10th generation Arm Mali GPUs in drm-misc. This driver better known as "Panthor", is an open source driver designed specifically for the 310th generation Mali GPU (G510, G710, GXNUMX).

It is mentioned that the merger of the controller represents a two-year collaborative effort and work between several developers and companies, Collabora highlights the importance of collaboration in the development of advanced technologies.

Arm's involvement in this process has been crucial, not only providing access to key documentation, but also actively participating in the review and co-maintenance of the kernel driver.

At first, the development of the new driver was carried out through reverse engineering, but then ARM joined the project, providing access to documentation and participating in the code review. Two ARM employees have been promoted to driver co-maintainer status for the Linux kernel. In the future, once the OpenGL driver is ready, work will focus on implementing a Vulkan driver for new Mali GPUs and updating the existing Vulkan driver for older Mali GPUs.

This driver uses CSF technology (Command Stream Frontend) to transfer some functions from the controller to the firmware side, which helps reduce the load on the CPU and provides a new model for organizing work on the GPU. The Panthor DRM (Direct Rendering Manager) driver has been accepted into the drm-misc branch and is expected to be included in the Linux 6.10 kernel. Mesa has also adopted changes to support the new driver, which will be included in the Panfrost Gallium driver for Mali GPUs.

In the new generation of Mali GPUs, the Job Manager scheduler is replaced by a CSF interface, which uses a command flow-based model with command flow queue scheduling on the firmware side instead of a command-flow-based model. sending a chain of jobs. This involves the integration of a separate Cortex-M7 microcontroller into the GPU and a special command execution unit to execute CSF instructions. These functions require a fundamentally different organization to transfer work to the GPU from user space.

Initially, An attempt was made to implement support for CSF-based Mali GPUs in the Panfrost DRM driver, but the developers concluded that this would overcomplicate the existing controller. Therefore, for CSF, it was more optimal to create a new controller with a different architecture. The Panthor controller implements a completely new uAPI, new job scheduling logic, and new MMU/GPU-VA control logic. It is based on Panfrost's existing DRM driver code, from which it takes typical driver initialization, frequency control, and power management patterns.

In addition to that, It is mentioned that the kernel driver has merged the request melting mesa which extends the Gallium driver existing to support the new 10th generation Arm Mali GPUs. Collaborate has also worked to ensure that Rockchip RK3588-based boards can be loaded using a completely open software stack. For Rockchip RK3588, a Debian-based system image and open bootloader have been prepared to replace the proprietary BL31 components (bootloader stage 3.1). This is especially significant for Rockchip's RK3588 platforms, where improved performance and efficiency are expected thanks to these updates.

Work on the Gallium driver not only involves enabling support for new GPUs, but also optimizing performance and compatibility with modern graphics APIs. This driver extension is part of an ongoing effort to deliver an exceptional graphics experience across a variety of devices and usage scenarios.

If you are interested in knowing more about it, you can check the details In the following link.


Leave a Comment

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

*

*

  1. Responsible for the data: AB Internet Networks 2008 SL
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.