Поддельный монитор EDID информация

12359
amphetamachine

Мой монитор вроде привередлив. Иногда я запускаю программу с циклическим разрешением, и монитор отказывается предоставлять информацию EDID в течение нескольких дней:

(/var/log/Xorg.0.log) [ 239.653] (II) fglrx(0): Restoring Recent Mode via PCS is not supported in RANDR 1.2 capable environments [ 260.113] (II) fglrx(0): Cannot get EDID information for CRT1 [ 271.166] (II) fglrx(0): Cannot get EDID information for CRT1 (^ ran xrandr, this happens) 

Это заставляет видеокарту думать, что максимальное разрешение, которое она будет поддерживать, составляет 1600x1200, в то время как я использовал оптимальное разрешение 1680x1050, которое указано в руководстве к монитору. xrandrдаже не перечисляет этот режим как поддерживаемый.

Теперь у меня снова возникла та же проблема, потому что я экспериментировал с Wine, который вызвал сбой Xorg и заставил меня перезагрузиться.

Иногда я придумываю, как его вернуть (я просто забыл, как это сделать), а иногда это исправляется.

В первый раз, когда это произошло, я решил, что лучше сделать резервную копию двоичной информации EDID, используя read-edidкоторую я сохранил в 128-байтовом файле на моем жестком диске. Это приводит меня к моему вопросу:

Как вы скажете fglrx прочитать информацию EDID из файла, а не пытаться получить ее с монитора?


Дополнительная информация:

Раньше я думал, что это вина видеокарты, но это происходит и с новой видеокартой (все еще драйверами fglrx), а также с новыми кабелями VGA.

Монитор представляет собой Westinghouse LCM-22w3, подключенный к порту VGA видеокарты ATI Radeon HD 3200.

Я провел некоторое исследование, и, по-видимому, это довольно распространенная жалоба на LCM-22w3, но, похоже, никто не знает, как решить проблему.

fglrx 8.92, xorg-server 1.9.5, ядро ​​2.6.38.7 x86_64 arch.

9

3 ответа на вопрос

4
fstx

Когда я использовал VID KVM-переключатель с блокировкой EDID, я использовал небольшой скрипт для исправления разрешения после входа в систему:

xrandr --newmode "1600x1200_60.00" 162.00 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync xrandr --addmode VGA-1 1600x1200_60.00 xrandr --output VGA-1 --mode 1600x1200_60.00 

Я думаю, что я получил строку режима от xrandr как-то (с подключенным монитором напрямую). Я попытался поместить его в файл конфигурации X, но тупой X-сервер продолжал игнорировать его по различным ложным причинам.

Спасибо, это сработало для меня. Additinnaly, чтобы получить значения по умолчанию для моего экрана, я использую команду `cvt` remi 11 лет назад 1
Кстати, если у вас есть 2 экрана, когда вы устанавливаете разрешение второго экрана (например, внешний экран с ноутбуком), я больше не могу использовать arandr для фиксации положения экрана. Но вы все равно можете использовать xrandr с параметром --left-of или любым другим remi 11 лет назад 0
1
Dr. JKL

Вы можете попробовать

Option "IgnoreEDID" "TRUE" 

и затем укажите информацию вашего монитора вручную. Если IgnoreEDID не работает для вас, попробуйте

Option "UseEDIDFreqs" "FALSE" Option "UseEDIDDpi" "FALSE" 
[433447.647] (WW) fglrx (0): опция «UseEDIDFreqs» не используется [433447.647] (WW) fglrx (0): опция «UseEDIDDpi» не используется [433447.647] (WW) fglrx (0): опция «IgnoreEDID "не используется [433447.647] (WW) fglrx (0): опция" CustomEDID "не используется amphetamachine 12 лет назад 1
Какой это дистрибутив? У меня нет подходящей системы для тестирования (но из предыдущего опыта знаю, что CustomEDID должен работать, по крайней мере) - вам могут понадобиться другие предварительные условия для работы пользовательского EDID. Например: http://en.gentoo-wiki.com/wiki/Radeon#Custom_EDID Dr. JKL 12 лет назад 0
Это Slackware, но это не должно иметь значения. Драйверы, указанные в приведенной вами ссылке, предназначены для драйвера "Radeon" F / OSS, который поставляется с Xorg, а не для проприетарного "fglrx", который я использую (и который необходим для работы моего 3D-ускорения). amphetamachine 12 лет назад 1
0
afrazier

Одним из несвободных (хорошо, довольно дорогих) вариантов является использование DVI Detective от Gefen . Это устройство, которое будет кэшировать информацию EDID с устройства, а затем постоянно предоставлять ее на ПК.

Раньше мне приходилось использовать их с компьютерами, подключенными к DVI KVM, которые не будут повторно инициализировать свои дисплеи после переключения портов KVM. Они отлично сработали для этого и должны работать для вас.

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