Il driver Panfrost gratuito ora supporta le GPU Mali Valhall

Collabora ha implementato il supporto per le GPU della serie Valhall (Mali-G57, Mali-G78) nel driver Panfrost gratuito, che in precedenza si concentrava sull'implementazione del supporto per i chip Midgard e Bifrost. Si noti che le modifiche preparate con l'implementazione iniziale del driver sono state presentate per l'inclusione nella composizione principale di Mesa e saranno portate agli utenti in una delle prossime versioni significative.

L'implementazione Γ¨ stata preparata dopo 6 mesi di reverse engineering dei driver proprietari utilizzati in uno smartphone Android con una GPU Mali G78. Il lavoro svolto Γ¨ notevole in quanto lo sviluppo Γ¨ stato effettuato in modalitΓ  passiva in assenza di accesso root allo smartphone con il chip in studio, i. gli sviluppatori non potevano sostituire il driver esistente. Per testare il driver e analizzare il contenuto della memoria video nello smartphone, abbiamo utilizzato la modalitΓ  sviluppatore in Android e la sostituzione del nostro codice utilizzando LD_PRELOAD.

Gli shader compilati, le sequenze di istruzioni della GPU e le strutture di dati che controllano lo stato delle primitive grafiche, come le texture, sono stati recuperati dalla memoria, dopodichΓ© sono state apportate modifiche individuali a questi shader e strutture e il risultato Γ¨ stato analizzato. Di conseguenza, Γ¨ stato preparato il nostro compilatore shader per la GPU Valhall, che ha permesso di generare oggetti binari simili, nonchΓ© un prototipo di driver per Mesa. Nel gennaio di quest'anno, un Chromebook basato su un chip MediaTek MT8192 con una GPU Valhall G57 Γ¨ caduto nelle mani degli sviluppatori, con l'aiuto del quale Γ¨ stato eseguito un controllo finale sull'attrezzatura reale e portato a una forma funzionante del driver risultante.

Fonte: opennet.ru

Aggiungi un commento