Компания Collabora представила новый видеодрайваер для GPU Mali Midgard и Bifrost
Компания Collabora объявила о разработке нового открытого драйвера для GPU на базе микроархитектур Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) и Bifrost (Mali G3x, G5x, G7x), используемых на многих устройствах с процессорами ARM. Набор патчей с реализацией нового драйвера подготовлен для Mesa и DRM-подсистемы (Direct Rendering Manager) ядра Linux.
Драйвер пока находится на начальной стадии разработки и не поддерживает всех запланированных возможностей, но уже вполне пригоден для выполнения некоторых демонстрационных приложений. Например, на стороне DRM-компонента пока оставляет желать лучшего производительность работы с MMU (Memory Management Unit), требует доработки код для обработки ошибок, сброса GPU и синхронизации DMA-буферов ("DMA Fences"). В компонентах на стороне Mesa необходимо решить проблемы при работе GNOME Shell, тестов glmark2 и WebGL в Chromium.
Проект развивается на основе обратного инжиниринга оригинальных драйверов от компании ARM. Большая часть кода для поддержки GPU Panfrost уже принята в кодовую базу Mesa. Конечной целью проекта является включение кода для поддержки GPU Mali Midgard и Bifrost в основной состав ядра Linux. Код драйвера Collabora изначально развивается с оглядкой на требования по помещению кода в ядро, в то время как предоставляемый компанией ARM драйвер не поддерживает DRM ABI и не соответствует критериям включения в основное ядро Linux из-за привязки к закрытым компонентам в пространстве пользователя.