EDID: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
Нет описания правки
Строка 55: Строка 55:


===Подстановка дампа прошивки EDID в xorg.conf.d===
===Подстановка дампа прошивки EDID в xorg.conf.d===
Выясняем "порт", к каторому подключена ваша видеокарта :
xrandr | grep "\<"connec
eDP connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 345mm x 194mm


Создаём произвольный файл в '''/etc/X11/xorg.conf.d''' с разрешением .conf, например 20-edid.conf, например такого содержания:


[[Категория:Неоконченная статья]]
Section "Device"
  Identifier    "my_videocard"
  Option        "ConnectedMonitor" "eDP"
  Option        "CustomEDID" "eDP:/ec/X11/edid.bin"
  Option        "IgnoreEDID" "false"
  Option        "UseEDID" "true"
EndSection
 
После рестарта X-сервера , он считает EDID дисплея из нашего дампа прошивки, а не из дисплея.
 
Это бывает полезным, например, если монитор подключают к "плохому" видеовыходу (через который по какой-то причине неправильно считывается EDID).
Тогда, подключив его заранее к хорошему видеовыходу, вы можете сохранить EDID монитора, а потом, при включении
к плохому выходу  передать EDID  X-серверу.
Второй случай, это если вы выявили ошибку в выдаваемом монитором EDID, вы его исправляете и передаёте исправленный X-серверу [https://habr.com/ru/post/217583/ Патчим EDID телевизора из-под Linux]
 
===Ссылки===
[https://habr.com/ru/post/217583/ Патчим EDID телевизора из-под Linux]
[https://mycyberuniverse.com/ru/linux/podstanovka-fayla-proshivki-vmesto-vshitogo-edid-monitora.html Подстановка файла прошивки вместо вшитого EDID монитора]
 
 
[[Категория:Hardware]]

Версия от 20:50, 4 июня 2022

Подмена EDID монитора

Логотип Википедии
В Википедии есть обзорная статья по теме «Extended_display_identification_data».

Extended Display Identification Data (EDID) — стандарт формата данных VESA, который содержит базовую информацию о мониторе и его возможностях, включая информацию о производителе, максимальном размере изображения, цветовых характеристиках, заводских предустановленных таймингах, границах частотного диапазона, а также строках, содержащих название монитора, его размер и серийный номер.

Бывают случаи, когда монитор, или внешний телевизор не выдают, или дают неправильный EDID

В данной статье рассматривается вариант передачи X-серверу информации об правильном EDID монитора. Статья основана на статье Подстановка файла прошивки вместо вшитого EDID монитора и адаптирована к особенности ALT Linux


Создание дампа прошивки

Устанавливаем read-edid

$ su -
# apt-get install read-edid

Считываем EDID

# get-edid | parse-edid

get-edid - считывает EDID, а read-edid преобразует его в читабельный вид

Считать EDID и записать его в файл:

# get-edid > edid.bin

Прочитать содержимое EDID из файла:

# parse-edid < edid.bin
Checksum Correct

Section "Monitor"
        Identifier ""
        ModelName ""
        VendorName "LGD"
        # Monitor Manufactured week 0 of 2014
        # EDID version 1.3
        # Digital Display
        DisplaySize 350 190
        Gamma 2.20
        Option "DPMS" "false"
        Modeline        "Mode 0" -hsync -vsync 
EndSection
Примечание: Если возникает такая ошибка:

Error: output block unchanged parse-edid: IO error reading EDID

тогда попробуйте ещё раз.

Если эта ошибка возникает постоянно тогда это значит, что ваш EDID монитора скорее всего повреждён и делать дамп бессмысленно.


Особый способ сделать дамп прошивки для использующих проприетарный драйвер nvidia. В nvidia-settings есть кнопка Adquire EDID, которая сохраняет EDID дисплея в двоичном или текстовом формате.

Подстановка дампа прошивки EDID в xorg.conf.d

Выясняем "порт", к каторому подключена ваша видеокарта : xrandr | grep "\<"connec eDP connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 345mm x 194mm

Создаём произвольный файл в /etc/X11/xorg.conf.d с разрешением .conf, например 20-edid.conf, например такого содержания:

Section "Device"
 Identifier     "my_videocard"
 Option         "ConnectedMonitor" "eDP"
 Option         "CustomEDID" "eDP:/ec/X11/edid.bin"
 Option         "IgnoreEDID" "false"
 Option         "UseEDID" "true"
EndSection

После рестарта X-сервера , он считает EDID дисплея из нашего дампа прошивки, а не из дисплея.

Это бывает полезным, например, если монитор подключают к "плохому" видеовыходу (через который по какой-то причине неправильно считывается EDID). Тогда, подключив его заранее к хорошему видеовыходу, вы можете сохранить EDID монитора, а потом, при включении к плохому выходу передать EDID X-серверу. Второй случай, это если вы выявили ошибку в выдаваемом монитором EDID, вы его исправляете и передаёте исправленный X-серверу Патчим EDID телевизора из-под Linux

Ссылки

Патчим EDID телевизора из-под Linux Подстановка файла прошивки вместо вшитого EDID монитора