Драйвер Radeon: не Может работать без “nomodeset” на MacPro6,1 с двумя видеокартами AMD R9 280X Таити

Гуру Ubuntu,

У меня есть редкая конфигурация 2016 MacPro6,1 с двумя видеокартами AMD Radeon R9 280X Таити и тремя мониторами 4K, подключенными через порты DisplayPort / Thunderbolt.

Системные установки успешно, но оба LiveCD (для установки) и установленная система требуют "nomodeset" опции, в других отношениях процесс начальной загрузки зависает с черным экраном.

С "nomodeset" системой обнаруживает и работает только над одним монитором, подключенным с помощью HDMI. Все мониторы, подключенные через DisplayPort, остаются пробелом.

Я попробовал различные версии Ubuntu (14.04.4, 14.04.5, 15.10, 16.04, 16.04.1, 16.10), у всех есть эта проблема и также несколько версий Linux Mint, с тем же результатом. Я также попробовал более новые восходящие ядра (4.6, 4.7.3, 4.8) на Ubuntu 16.04.1, всех с тем же результатом.

Но я нашел один дистрибутив Linux, названного KaOS (https://kaosx.us/), который работает хорошо над моими аппаратными средствами. Вскоре после границы это успешно обнаруживает и включает все три монитора, подключенные через Порты Дисплея, и затем представляет нормальный широкий рабочий стол KDE на всех трех мониторах.

Я сравнил записи журнала из Ubuntu и начальные загрузки KaOS, и кажется, что KaOS успешно обнаруживает и активирует и карты AMD и затем продолжает загружаться обычно. Это использует драйвер "Radeon" с открытым исходным кодом.

Ubuntu, с другой стороны (все версии и упомянутые выше ядра), с тем же драйвером "Radeon" обнаруживает только первую карту и перестала работать на второй карте, которая вызывает непосредственное завершение работы драйвера "Radeon", и процесс начальной загрузки зависает после этого.

Вот соответствующие сообщения из журналов. Полные журналы журнала доступны во вложениях.

KaOS:

Первая карта:

[drm] radeon kernel modesetting enabled.
[drm] initializing kernel modesetting (TAHITI 0x1002:0x6798 0x106B:0x0128 0x00).
[drm] register mmio base: 0xA0700000
[drm] register mmio size: 262144
[drm] ACPI VFCT contains a BIOS for 02:00.0 1002:6798, size 65536
[drm:radeon_get_bios] ATOMBIOS detected
ATOM BIOS: Tahiti
[drm] Loading tahiti Microcode
[drm] Initialized radeon 2.45.0 20080528 for 0000:02:00.0 on minor 0
fb: switching to radeondrmfb from EFI VGA
.....

Вторая карта:

[drm] ACPI VFCT contains a BIOS for 02:00.0 1002:6798, size 65536
[drm] ACPI VFCT table is not for this card
radeon 0000:06:00.0: Invalid PCI ROM header signature: expecting 0xaa55, got 0x0000
radeon 0000:06:00.0: Invalid PCI ROM header signature: expecting 0xaa55, got 0x0000
[drm:radeon_get_bios] ATOMBIOS detected
ATOM BIOS: Tahiti
[drm] Loading tahiti Microcode
[drm] radeon: dpm initialized
[drm] Initialized radeon 2.45.0 20080528 for 0000:06:00.0 on minor 1

(Заметьте эти "Недопустимые ошибки" подписи заголовка ROM PCI, но карта инициализировала успешно несмотря на них и подтвержденных разработчиков KaOS, что эти ошибки нормальны для карт ATI и безопасны),

Ubuntu:

Первая карта:

[drm] radeon kernel modesetting enabled.
[drm] initializing kernel modesetting (TAHITI 0x1002:0x6798 0x106B:0x0128).
[drm] register mmio base: 0xA0700000
[drm] register mmio size: 262144
[drm] ACPI VFCT contains a BIOS for 02:00.0 1002:6798, size 65536
[drm:radeon_get_bios] ATOMBIOS detected
ATOM BIOS: Tahiti
[drm] Loading tahiti Microcode
[drm] radeon: dpm initialized
[drm] Initialized radeon 2.43.0 20080528 for 0000:02:00.0 on minor 0
fb: switching to radeondrmfb from EFI VGA

Вторая карта:

[drm] initializing kernel modesetting (TAHITI 0x1002:0x6798 0x106B:0x0127).
[drm] register mmio base: 0xA0600000
[drm] register mmio size: 262144
[drm] ACPI VFCT contains a BIOS for 02:00.0 1002:6798, size 65536
[drm] ACPI VFCT table is not for this card
radeon 0000:06:00.0: Invalid ROM contents
radeon 0000:06:00.0: Invalid ROM contents
[drm:radeon_get_bios [radeon]] *ERROR* Unable to locate a BIOS ROM
radeon 0000:06:00.0: Fatal error during GPU init
[drm] radeon: finishing device.
radeon: probe of 0000:06:00.0 failed with error -22

Заметьте те же ошибки "Недопустимое содержание ROM" (немного отличающиеся сообщения, но я зарегистрировался в источниках, что они имеют в виду то же - неожиданная подпись ROM) После этих ошибок сбои драйвера radeon/drm с ОШИБКОЙ, Не могущей определять местоположение ROM BIOS, и затем "заканчивающегося устройства".

KaOS использует более новое ядро 4.7.3-1, но я попробовал 4.6, 4.7.3, 4.8 на Ubuntu, без успеха.

Другая вещь я заметил из журналов: на KaOS udev правила загружаются перед ядром modesetting, но на Ubuntu - после modesetting. Это может быть причиной?

Информация о видеокартах:

lspci | grep VGA
02:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X]
06:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X]

Полный "lspci-vvv" и "lshw" выводы также присоединяются для полноты.

Я действительно должен заставить эту рабочую станцию работать в соответствии с Linux, не хотят соглашаться на MacOS.

Если бы кто-то компетентный мог бы взглянуть на это и дать некоторые предложения, я ценил бы его много.

Спасибо, Heigh

Обновление от 08 ноября 2016:

Привет Nick,

Спасибо за ответ, я попробую опцию Radeon pm=0.

Но я нашел обходное решение или решение, которое работало на меня и может также работать на Вас.

Система должна быть загружена с загрузчиком systemd-начальной-загрузки (или возможно любая другая поддержка начальная загрузка UEFI)

Когда я загружаю Ubuntu на своем MacPro со стандартом, установленным во время установки grub2, драйвер Radeon would't обнаруживают внешние дисплеи, соединенные через Порты Дисплея.

Но когда я загружаю систему с помощью systemd-начальной-загрузки, установленной Дугой Linux (или KaOS), это обычно обнаруживает дисплеи и работает правильно, поддерживая все внешние дисплеи как ожидалось.

Я думаю, что это связано с некоторыми аспектами аппаратных средств, не выставляемых в режиме начальной загрузки BIOS, и выставлено в режиме начальной загрузки EFI/UEFI.

Предпочтительное решение работало бы драйвер Radeon в режиме BIOS, если это возможно, или, если это не возможно, некоторое значимое сообщение в системном журнале, объясняя, что определенные функции (например, внешние мониторы через Порт Дисплея) не будут поддерживаться, если система не будет загружена в режиме EFI/UEFI.

Я отправил ошибку в Radeon Bugzilla: https://bugs.freedesktop.org/show_bug.cgi? id=98523

Хотелось бы надеяться, это будет зафиксировано для работы из поля в какой-то момент.

Спасибо, Heigh

2
задан 8 November 2016 в 14:54

1 ответ

Одна проблема, которую я видел, сообщила, управление питанием Radeon (можно выключить это в личинке с radeon.pm=0), который, по-видимому, закрывает 2-й gpu на начальной загрузке.

я выполняю основные драйверы Radeon с двумя D700. Это только работает с одним дисплеем DisplayPort.

я пытаюсь заставить свои два D700 работать с несколькими дисплеями без удачи до сих пор.

0
ответ дан 2 December 2019 в 09:49

Другие вопросы по тегам:

Похожие вопросы: