Die Verfügbarkeit von panthor, einem offenen Treiber für die 10. Generation der Mali GPU, wurde bekannt gegeben.

Das Unternehmen Collabora hat die Fertigstellung des offenen Treibers panthor bekannt gegeben, der für die zehnte Generation der Mali-GPUs (G310, G510, G710) entwickelt wird. Dabei kommt die CSF-Technologie (Command Stream Frontend) zum Einsatz, die einige Funktionen des Treibers auf die Firmware-Seite verlagert, um die CPU-Belastung zu reduzieren und ein neues Modell zur Organisation der Arbeitsausführung auf dem GPU anzubieten. Der DRM-Treiber (Direct Rendering Manager) panthor wurde in den Branch drm-misc aufgenommen und wird voraussichtlich Teil des Linux-Kernels 6.10 sein. Änderungen zur Unterstützung des neuen Treibers wurden auch in Mesa angenommen und in den Gallium-Treiber panfrost für Mali-GPUs integriert.

Im neuen GPU-Mali-Generationen wurde der Job-Manager-Planer durch das CSF-Interface (Command Stream Frontend) ersetzt. Anstelle eines Modells, das auf dem Senden von Job-Chain-Befehlen basiert, wird ein Modell verwendet, das auf dem Befehlstream basiert, wobei die Planung der Befehlswarteschlange auf der Firmware-Seite erfolgt. Um die Arbeit des Planers zu organisieren, ist ein separater Cortex-M7-Mikrocontroller im GPU integriert, und für die Ausführung der CSF-Befehle gibt es eine spezielle Befehlsausführungseinheit (Command Execution Unit). Solche Eigenschaften erfordern eine grundsätzlich andere Organisation der Arbeitstransfers vom Benutzerraum zum GPU.

Ursprünglich wurde versucht, die Unterstützung für Mali-GPUs auf der Basis von CSF im Panfrost-DRM-Treiber zu implementieren, aber die Entwickler kamen zu dem Schluss, dass dies zu einer erheblichen Komplexität des bestehenden Treibers führen würde und es für CSF optimaler ist, einen neuen Treiber zu erstellen, der auf einer anderen Architektur basiert. Im Treiber panthor wird eine völlig neue uAPI, eine neue Arbeitsplanungslogik und eine neue Logik zur Verwaltung von MMU/GPU-VA implementiert. Der bestehende Code des DRM-Treibers Panfrost wurde als Grundlage für den neuen Treiber verwendet, aus dem die typischen Vorlagen für die Initialisierung des Treibers, die Frequenzsteuerung und das Energiemanagement entnommen wurden.

Zunächst wurde der neue Treiber mithilfe von Reverse Engineering entwickelt, aber dann kam das Unternehmen ARM zum Projekt hinzu, stellte den Zugang zu Dokumentationen zur Verfügung und nahm an der Codeüberprüfung teil. Zwei Mitarbeiter von ARM erhielten den Status von Co-Maintainern des Treibers für den Linux-Kernel. Danach wird nach der Fertigstellung des OpenGL-Treibers die Arbeit auf die Implementierung des Vulkan-Treibers für die neuen Mali-GPUs und die Modernisierung des bestehenden Vulkan-Treibers für die älteren Mali-GPUs konzentriert.

Es wird berichtet, dass der vorbereitete Treiber panthor die GPU-Unterstützung auf Karten mit SoC Rockchip RK3588 ermöglicht. Das Unternehmen Collabora hat auch daran gearbeitet, die Bootfähigkeit von Rockchip RK3588-basierten Karten unter Verwendung eines vollständig offenen Softwarestacks zu gewährleisten. Für Rockchip RK3588 wurde ein Systemabbild auf Basis von Debian und ein offener Bootloader zur Ersetzung proprietärer Komponenten BL31 (Boot Loader stage 3.1) vorbereitet.

Quelle: opennet.ru

60GB SSD 8Gb DDR4