Безплатният драйвер на Panfrost вече поддържа графични процесори Mali Valhall

Collabora внедри поддръжка за графични процесори от серията Valhall (Mali-G57, Mali-G78) в безплатния драйвер Panfrost, който преди това се фокусира върху внедряване на поддръжка за чипове Midgard и Bifrost. Отбелязва се, че подготвените промени с първоначалното внедряване на драйвера са изпратени за включване в основния състав на Mesa и ще бъдат предоставени на потребителите в едно от следващите значими версии.

Внедряването беше подготвено след 6 месеца обратен инженеринг на патентовани драйвери, използвани в смартфон с Android с GPU Mali G78. Извършената работа е забележителна с това, че разработката е извършена в пасивен режим при липса на root достъп до смартфона с изследвания чип, т.е. разработчиците не можаха да заменят съществуващия драйвер. За да тестваме драйвера и да анализираме съдържанието на видео паметта в смартфона, използвахме режима за разработчици в Android и заместването на нашия код с LD_PRELOAD.

Компилирани шейдъри, последователности от инструкции на GPU и структури от данни, които контролират състоянието на графични примитиви като текстури, бяха извлечени от паметта, след което бяха направени отделни промени в тези шейдъри и структури и резултатът беше анализиран. В резултат на това подготвихме наш собствен шейдър компилатор за Valhall GPU, който направи възможно генерирането на подобни бинарни обекти, както и прототип на драйвер за Mesa. През януари тази година Chromebook, базиран на чип MediaTek MT8192 с графичен процесор Valhall G57, попадна в ръцете на разработчиците, с помощта на които беше извършена окончателна проверка на реално оборудване и доведе до работеща форма на получения драйвер.

Източник: opennet.ru

Добавяне на нов коментар