Компания AMD опубликовала (http://support.amd.com/en-us/download/workstation?os=Linux+x... выпуск проприетарного драйвера AMDGPU-PRO 16.50 (http://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Dr... для Linux, основанного на свободном модуле ядра AMDGPU, развиваемого в рамках инициативы (https://www.opennet.ru/opennews/art.shtml?num=42078) по унификации графического стека AMD для проприетарных и открытых видеодрайверов. Драйвер сформирован для Ubuntu 16.04, RHEL/CentOS 7.3, RHEL/CentOS 6.8 и SLED/SLES 12 SP2.
Выпуск примечателен поддержкой новых GPU на базе микроархитектуры GNC 1.0, таких как AMD Radeon R7 M465X/M370/M350, а также поддержкой DirectGMA для OpenGL и технологии FreeSync (https://en.wikipedia.org/wiki/FreeSync). Из возможностей драйвера отмечается поддержка API OpenGL 4.5, GLX 1.4, OpenCL 1.2, Vulkan 1.0 и VDPAU, наличие базовых средств для управления экраном и питанием, поддержка интерфейсов KMS (Kernel Mode Setting) и ADF (Atomic Display Framework), совместимый с лицензией GPL модуль ядра, поддержка возможностей FirePro (управление EDID и 30-разрядная цветность).
Кроме того, компания AMD подготовила (https://lists.freedesktop.org/archives/dri-devel/2016-Decemb... достаточно большой патч для поставляемого в составе ядра Linux модуля AMDGPU, переработав код управления отображением (DC, Display Core) для обеспечения поддержки будущего поколения GPU (uGPU), а также добавив ряд новшеств, таких как средства для организации вывода звука через HDMI и DisplayPort. Размер изменений (https://cgit.freedesktop.org/~agd5f/linux/tree/drivers/gpu/d... составил порядка 100 тысяч строк кода.
В ответ на предложенный патч, Дэвид Эйрли (David Airlie), работающий в компании Red Hat и отвечающий в Linux-ядре за поддержку DRM (Direct Rendering Manager), отказался (https://lists.freedesktop.org/archives/dri-devel/2016-Decemb... принимать подобные изменения, пояснив (https://lists.freedesktop.org/archives/dri-devel/2016-Decemb... что AMD пытается вместо использования унифицированного для всех драйверов интерфейса интегрировать свой собственный слой для обеспечения взаимодействия с оборудованием (HAL). Подобные специфичные решения затрудняют понимание логики работы кода и замедляют развитие DRM (Direct Rendering Manager). Эйрли не может принять такие изменения, так как это подорвёт доверие Линуса, сообщества разработчиков графических систем и участников разработки DRM-драйверов.
Вместо того, чтобы работать вместе с сообществом и с учётом его интересов, компания AMD продолжает замыкаться на своих внутренних надстройках, необходимых для решения частных проблем компании (попытка унификации с драйвером для Windows). По мнению Эйрли, если AMD необходимо обеспечить поддержку дополнительной функциональности, такой как FreeSync или новых возможностей HDMI, это следует делать совместно путем расширения существующих интерфейсов, а не придумывать новые уровни абстракции и создавать специфичные для драйвера ioctl. В настоящий момент AMD по сути не участвует в развитии Linux-стека и не использует его, продвигая свои специфичные решения. Если эти решения нужны только AMD, а для других они бесполезны, нет смысла включать такие изменения в ядро.
URL: https://news.ycombinator.com/item?id=13136426
Новость: http://www.opennet.ru/opennews/art.shtml?num=45648