Valve готовит новое исправление для старых видеокарт AMD в Linux
Разработчик компании Valve Тимур Кристоф, входящий в команду по развитию открытых графических драйверов для Linux, подготовил очередное исправление для видеокарт AMD прошлых поколений. Обновление направлено на устранение ошибки, которая затрагивает некоторые старые GPU семейства GCN при использовании драйвера AMDGPU.
Ранее Кристоф уже внёс ряд изменений в открытый драйвер AMDGPU, благодаря которым дискретные видеокарты Radeon на архитектуре GCN 1.0 и 1.1 по умолчанию стали использовать AMDGPU вместо устаревшего драйвера Radeon. Это обеспечило прирост производительности, поддержку Vulkan через драйвер RADV «из коробки» и более стабильную работу в Linux. Кроме того, за последние годы были устранены многочисленные ошибки, влияющие на работу старых моделей графических ускорителей.
Новая проблема была зафиксирована в июне 2024 года. Пользователи сообщили о сбоях при попытке запустить Linux на компьютере Apple iMac 17,1 с видеокартой Radeon R9 M380. При загрузке драйвера AMDGPU система сталкивалась с ошибками на этапе инициализации, связанными с AtomBIOS и блоком UVD. В журнале ядра появлялись сообщения о невозможности отправки команд GPU и сбоях при инициализации аппаратных блоков. При этом использование устаревшего драйвера Radeon позволяло системе загружаться без подобных проблем.
В течение последней недели активность по отчёту об ошибке возросла. Тимур Кристоф получил доступ к аналогичному iMac с графикой ранней архитектуры GCN и смог воспроизвести неисправность. После анализа выяснилось, что видеокарта начинает работать корректно при отключении динамического управления частотой памяти (Memory Clock Dynamic Power Management, MCLK DPM). Также было установлено, что сбой проявляется при использовании подсистемы отображения AMDGPU DC и исчезает при её отключении.
В ходе дальнейшего исследования разработчик обнаружил, что драйвер не учитывал зависимость напряжения от частоты дисплейного контроллера. Для данной модели GPU стандартного напряжения оказалось недостаточно для корректной работы блока отображения, что и приводило к ошибкам инициализации.
Подготовленная серия патчей отключает MCLK DPM для проблемных видеокарт поколения Sea Islands, а также принудительно устанавливает максимальную частоту памяти при деактивации DPM. Изменения опубликованы в рабочей ветке разработчика и будут направлены на рассмотрение в профильную рассылку перед возможным включением в основную ветку ядра.
Ожидается, что после принятия исправлений компьютеры iMac десятилетней давности с GPU поколения GCN 1.1 смогут стабильно работать в Linux с использованием драйвера AMDGPU.
Источник: phoronix





0 комментариев
Добавить комментарий
Добавить комментарий