Представлен открытый драйвер для графического сопроцессора Mali, применяемого во многих чипах на основе архитектуры ARM, которые используются, например, в смартфорнах Samsung. Драйвер был создан на основе реверс-инжиниринга закрытого Linux-драйвера, поддерживаемого компанией ARM. Код драйвера планируется опубликовать после формального анонса проекта на выставке FOSDEM, которая состоится 4-5 февраля. Драйвер будет поддерживать OpenGL ES и другие возможности, которые присутствуют в проприетарном Linux-драйвере. используемом многими производителями телефонов на платформе Android.

Отмечается, что существенно упростил процесс обратного инжиниринга самодостаточный характер ARM Mali GPU, который не требует загрузки микрокода и настройки регистров из пространства пользователя. Основные трудности возникли с разбором особенностей работы компилятора шейдеров, для изучения которого использовался метод перехвата и анализа потока команд к GPU. Разработкой открытого драйвера занимается Luc Verhaegen, один из ключевых разработчиков драйверов RadeonHD и VIA Unichrome, активно участвующий в разработке X.Org.

Напомним, что на рынке потребительских устройств на базе архитектуры ARM сложилась необычная ситуация - на данных устройствах доминируют открытые операционные системы, но для данных открытых ОС доступны как правило только проприетарные драйверы для графических подсистем, что усложняет жизнь таких проектов, как CyanogenMod.

Источник: http://www.opennet.ru/opennews/art.shtml?num=32861