Alla conferenza XDC2020 (X.Org Developers Conference) sull'adesione dell'azienda ARM al processo di sviluppo del progetto , che sviluppa un driver open source per le GPU Mali. L'azienda ARM a fornire agli sviluppatori del driver le informazioni e la documentazione necessarie per una comprensione più completa dell'hardware e per concentrare l'attenzione sullo sviluppo, senza perdere tempo a decifrare enigmi durante il reverse engineering dei driver binari. In precedenza, qualcosa di simile era accaduto con l'integrazione dell'azienda Qualcomm nel progetto , che sviluppa un driver libero per le GPU Qualcomm Adreno.
La partecipazione dell'azienda ARM aiuterà a portare la stabilità dell'implementazione a un livello pronto per un utilizzo diffuso e garantirà un supporto più completo per le istruzioni interne specifiche delle GPU Mali, grazie alla fornitura di informazioni sulle architetture dei chip direttamente. La disponibilità della documentazione interna consentirà anche di raggiungere prestazioni ottimali, piena conformità con le specifiche e di sfruttare tutte le potenzialità delle GPU Midgard e Bifrost.
Le prime modifiche, preparate sulla base delle informazioni ricevute da ARM, sono già state implementate nel codice sorgente del driver. In particolare,
è stato svolto un lavoro per portare a termine le operazioni di impacchettamento delle istruzioni in uno schema canonico e per una revisione completa del disassemblatore, al fine di riflettere in modo più preciso l'architettura del set di istruzioni della GPU Bifrost e di rispettare la terminologia adottata da ARM.
Il driver Panfrost è stato fondato nel 2018 da Alyssa Rosenzweig, che lavora per l'azienda Collabora, e si è sviluppato fino ad ora sulla base del reverse engineering dei driver originali di ARM. Attualmente, il driver supporta il funzionamento con chip basati sulle microarchitetture Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) e Bifrost (Mali G3x, G5x, G7x). Per le GPU Mali 400/450, utilizzate in molti vecchi chip basati su architettura ARM, è in fase di sviluppo un driver separato. .

Fonte: opennet.ru
