прошу помощи с отключением матрицы ноутбука (amdgpu)

здесь приведу лог из /var/log/Xorg.0.log, не весь а только там где получение инфо из EDID

[ 88.088] (II) AMDGPU(0): glamor X acceleration enabled on AMD Radeon(TM) Vega 8 Graphics (RAVEN, DRM 3.40.0, 5.10.53-1-MANJARO, LLVM 12.0.1)
[ 88.088] (II) AMDGPU(0): glamor detected, initialising EGL layer.
[ 88.088] (==) AMDGPU(0): TearFree property default: auto
[ 88.088] (==) AMDGPU(0): VariableRefresh: disabled
[ 88.088] (II) AMDGPU(0): KMS Pageflipping: enabled
[ 88.088] (II) AMDGPU(0): Output eDP has no monitor section
[ 88.089] (II) AMDGPU(0): Output HDMI-A-0 has no monitor section
[ 88.089] (II) AMDGPU(0): Output DisplayPort-0 has no monitor section
[ 88.089] (II) AMDGPU(0): Output DisplayPort-1 has no monitor section
[ 88.119] (II) AMDGPU(0): EDID for output eDP
[ 88.119] (II) AMDGPU(0): Printing probed modes for output eDP
[ 88.119] (II) AMDGPU(0): Modeline "640x480"x59.9 25.18 640 656 752 800 480 490 492 525 -hsync -vsync (31.5 kHz e)
[ 88.120] (II) AMDGPU(0): EDID for output HDMI-A-0
[ 88.120] (II) AMDGPU(0): Manufacturer: BNQ Model: 78db Serial#: 21573
[ 88.120] (II) AMDGPU(0): Year: 2016 Week: 36
[ 88.120] (II) AMDGPU(0): EDID Version: 1.3
[ 88.120] (II) AMDGPU(0): Digital Display Input
[ 88.120] (II) AMDGPU(0): Max Image Size [cm]: horiz.: 48 vert.: 27
[ 88.120] (II) AMDGPU(0): Gamma: 2.20
[ 88.120] (II) AMDGPU(0): DPMS capabilities: Off
[ 88.120] (II) AMDGPU(0): Supported color encodings: RGB 4:4:4 YCrCb 4:4:4
[ 88.120] (II) AMDGPU(0): Default color space is primary color space
[ 88.120] (II) AMDGPU(0): First detailed timing is preferred mode
[ 88.120] (II) AMDGPU(0): redX: 0.651 redY: 0.335 greenX: 0.320 greenY: 0.625
[ 88.120] (II) AMDGPU(0): blueX: 0.152 blueY: 0.066 whiteX: 0.312 whiteY: 0.327
[ 88.120] (II) AMDGPU(0): Supported established timings:
[ 88.120] (II) AMDGPU(0): 720x400@70Hz
[ 88.120] (II) AMDGPU(0): 640x480@60Hz
[ 88.120] (II) AMDGPU(0): 640x480@75Hz
[ 88.120] (II) AMDGPU(0): 800x600@60Hz
[ 88.120] (II) AMDGPU(0): 800x600@75Hz
[ 88.120] (II) AMDGPU(0): 832x624@75Hz
[ 88.120] (II) AMDGPU(0): 1024x768@60Hz
[ 88.120] (II) AMDGPU(0): 1024x768@75Hz
[ 88.120] (II) AMDGPU(0): 1280x1024@75Hz
[ 88.120] (II) AMDGPU(0): 1152x864@75Hz
[ 88.120] (II) AMDGPU(0): Manufacturer's mask: 0
[ 88.120] (II) AMDGPU(0): Supported standard timings:
[ 88.120] (II) AMDGPU(0): #0: hsize: 1920 vsize 1080 refresh: 60 vid: 49361
[ 88.120] (II) AMDGPU(0): #1: hsize: 1280 vsize 720 refresh: 60 vid: 49281
[ 88.120] (II) AMDGPU(0): #2: hsize: 1280 vsize 800 refresh: 60 vid: 129
[ 88.120] (II) AMDGPU(0): #3: hsize: 1280 vsize 1024 refresh: 60 vid: 32897
[ 88.120] (II) AMDGPU(0): #4: hsize: 1600 vsize 900 refresh: 60 vid: 49321
[ 88.120] (II) AMDGPU(0): #5: hsize: 1680 vsize 1050 refresh: 60 vid: 179
[ 88.120] (II) AMDGPU(0): Supported detailed timing:
[ 88.120] (II) AMDGPU(0): clock: 148.5 MHz Image Size: 476 x 268 mm
[ 88.120] (II) AMDGPU(0): h_active: 1920 h_sync: 2008 h_sync_end 2052 h_blank_end 2200 h_border: 0
[ 88.120] (II) AMDGPU(0): v_active: 1080 v_sync: 1084 v_sync_end 1089 v_blanking: 1125 v_border: 0
[ 88.120] (II) AMDGPU(0): Serial No: 69G03200019
[ 88.120] (II) AMDGPU(0): Ranges: V min: 50 V max: 76 Hz, H min: 30 H max: 83 kHz, PixClock max 175 MHz
[ 88.120] (II) AMDGPU(0): Monitor name: BenQ GW2270
[ 88.120] (II) AMDGPU(0): EDID (in hex):
[ 88.120] (II) AMDGPU(0): 00ffffffffffff0009d1db7845540000
[ 88.120] (II) AMDGPU(0): 241a010380301b782ef003a65552a027
[ 88.120] (II) AMDGPU(0): 115053a56b80d1c081c081008180a9c0
[ 88.120] (II) AMDGPU(0): b30001010101023a801871382d40582c
[ 88.120] (II) AMDGPU(0): 4500dc0c1100001e000000ff00363947
[ 88.120] (II) AMDGPU(0): 30333230303031390a20000000fd0032
[ 88.120] (II) AMDGPU(0): 4c1e5311000a202020202020000000fc
[ 88.120] (II) AMDGPU(0): 0042656e51204757323237300a2000ba
[ 88.120] (II) AMDGPU(0): Printing probed modes for output HDMI-A-0
[ 88.120] (II) AMDGPU(0): Modeline "1920x1080"x60.0 148.50 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync (67.5 kHz eP)
[ 88.120] (II) AMDGPU(0): Modeline "1680x1050"x59.9 119.00 1680 1728 1760 1840 1050 1053 1059 1080 +hsync -vsync (64.7 kHz e)
[ 88.120] (II) AMDGPU(0): Modeline "1600x900"x60.0 108.00 1600 1624 1704 1800 900 901 904 1000 +hsync +vsync (60.0 kHz e)
[ 88.120] (II) AMDGPU(0): Modeline "1280x1024"x75.0 135.00 1280 1296 1440 1688 1024 1025 1028 1066 +hsync +vsync (80.0 kHz e)
[ 88.120] (II) AMDGPU(0): Modeline "1280x1024"x60.0 108.00 1280 1328 1440 1688 1024 1025 1028 1066 +hsync +vsync (64.0 kHz e)
[ 88.121] (II) AMDGPU(0): Modeline "1440x900"x60.0 148.50 1440 2008 2052 2200 900 1084 1089 1125 +hsync +vsync (67.5 kHz e)
[ 88.121] (II) AMDGPU(0): Modeline "1280x800"x59.9 71.00 1280 1328 1360 1440 800 803 809 823 +hsync -vsync (49.3 kHz e)
[ 88.121] (II) AMDGPU(0): Modeline "1152x864"x75.0 108.00 1152 1216 1344 1600 864 865 868 900 +hsync +vsync (67.5 kHz e)
[ 88.121] (II) AMDGPU(0): Modeline "1280x720"x60.0 74.25 1280 1390 1430 1650 720 725 730 750 +hsync +vsync (45.0 kHz e)
[ 88.121] (II) AMDGPU(0): Modeline "1024x768"x75.0 78.75 1024 1040 1136 1312 768 769 772 800 +hsync +vsync (60.0 kHz e)
[ 88.121] (II) AMDGPU(0): Modeline "1024x768"x60.0 65.00 1024 1048 1184 1344 768 771 777 806 -hsync -vsync (48.4 kHz e)
[ 88.121] (II) AMDGPU(0): Modeline "832x624"x74.6 57.28 832 864 928 1152 624 625 628 667 -hsync -vsync (49.7 kHz e)
[ 88.121] (II) AMDGPU(0): Modeline "800x600"x75.0 49.50 800 816 896 1056 600 601 604 625 +hsync +vsync (46.9 kHz e)
[ 88.121] (II) AMDGPU(0): Modeline "800x600"x60.3 40.00 800 840 968 1056 600 601 605 628 +hsync +vsync (37.9 kHz e)
[ 88.121] (II) AMDGPU(0): Modeline "640x480"x75.0 31.50 640 656 720 840 480 481 484 500 -hsync -vsync (37.5 kHz e)
[ 88.121] (II) AMDGPU(0): Modeline "640x480"x59.9 25.18 640 656 752 800 480 490 492 525 -hsync -vsync (31.5 kHz e)
[ 88.121] (II) AMDGPU(0): Modeline "720x400"x70.1 28.32 720 738 846 900 400 412 414 449 -hsync +vsync (31.5 kHz e)
[ 88.121] (II) AMDGPU(0): EDID for output DisplayPort-0
[ 88.121] (II) AMDGPU(0): EDID for output DisplayPort-1
[ 88.121] (II) AMDGPU(0): Output eDP connected
[ 88.121] (II) AMDGPU(0): Output HDMI-A-0 connected
[ 88.121] (II) AMDGPU(0): Output DisplayPort-0 disconnected
[ 88.121] (II) AMDGPU(0): Output DisplayPort-1 disconnected
[ 88.121] (II) AMDGPU(0): Using fuzzy aspect match for initial modes
[ 88.121] (II) AMDGPU(0): Output eDP using initial mode 640x480 +0+0
[ 88.121] (II) AMDGPU(0): Output HDMI-A-0 using initial mode 640x480 +0+0

в конце лога видно что драйвер выводит одинаковое разрешение 640*480 и на матрицу ноута и на внешний монитор, потому что из матрицы не удалось ничего вычитать
жаль что в момент пока матрица ноута у меня поработала примерно с месяц (пока игры не запускал на ноуте) я не загрузил Линукс и не записал данные modeline для этой матрицы.

несколько мыслей вслух. Бывший владелец мне сказал что свой ноут отдавал в сервис, там якобы проверили шлейф матрицы и он оказался рабочим и якобы матрицу подключали к другому ноуту и она действительно не работала. Правда это или нет - не знаю, предположу что может просто подёргали за шлейф, вытащили вставили его в разъём и на этом закончилось. Если предположить что действительно всё дело в матрице, т.е. в её микросхеме которая отдаёт параметры EDID тогда можно сделать вывод что проблема найдена. Но, важный момент. После того как матрица у меня засветилась (самопроизвольно, спустя месяца полтора после покупки и пользования через внешний монитор) - я работал и на ней и на внешнем мониторе, потом поскольку всё таки внешний моник больше размером (22 дюйма) я стал пользоваться только внешним монитором, матрицу открывал только для того чтобы включить ноут. В такой конфигурации ноутом пользовался около месяца и всё было хорошо, ни единого глюка. Потом плотно поиграл один вечер, на следующее утро включил ноут - матрица уже не светилась и не светится по сей день, поэтому делаю вывод что всё таки виной не микросхема в матрице а перегрев GPU, хотя пока играл в тот вечер у меня была запущена утилита hwinfo для контроля температуры, температура GPU не поднималась выше 80 градусов, при том что Ryzen 2500U может греться до 95 градусов. Термопаста на процессоре дорогая и свежая, температуру утилитой контролировал и самое максимальное значение было около 79 градусов. Если бы в тот вечер играл на ноуте используя матрицу ноута - тогда ещё можно было б предположить что перегрелись элементы матрицы и приключилась эта проблема. Но играл на внешнем мониторе, матрица была закрыта, соответственно выключена.
c.o.d.e.m.a.s.t.e.r
из матрицы не удалось ничего вычитать
Можете попробовать принудительно разрешение задать , добавив в параметры ядра
video=eDP-1:1920x1080@60 
и проверить в другом tty( отличном от того где иксы)

хотя вряд ли поможет. При рабочей системе изображение было бы и при малом разрешении, как например у вас на внешнем мониторе
.
c.o.d.e.m.a.s.t.e.r
[ 88.120] (II) AMDGPU(0): EDID Version: 1.3
[ 88.120] (II) AMDGPU(0): Digital Display Input
[ 88.120] (II) AMDGPU(0): Max Image Size [cm]: horiz.: 48 vert.: 27
То есть выдает:
- версия edid = 1.3
- размеры монитора 48:27 см
что и было считано из edid
c.o.d.e.m.a.s.t.e.r
[ 88.120] (II) AMDGPU(0): EDID (in hex):
[ 88.120] (II) AMDGPU(0): 00ffffffffffff0009d1db7845540000
[ 88.120] (II) AMDGPU(0): 241a010380301b782ef003a65552a027
- версия edid - байты 12h-13h = 0103 … то есть 1.3
- размеры монитора - байты 15h-16h = 301b … то есть 48:27
Если монитор действительно 48:27 см, то считывается верно, НО это только часть (то что помню на вскидку) … и по хорошему нужно проверить весь edit на правильность важных параметров.
Кстати, модель монитора похоже, как следует из edid, BenQ GW2270.
Если есть подозрение, что edid считывается не верно или с ошибками, можно это исправить - есть в ядре такой модуль и описана метода, но это сложно. Но можно достать edid на данный монитор и и грузиться с ним (то же описано, как это делать).

Простые способы на пробу
- рекомендации vs220
vs220
video=eDP-1:1920x1080@60
и попробовать с разными значениями, например, 1280x1024 и др. и плюс к этому - немного изменить команду - добавить в конец me
video=eDP-1:1920x1080@60me
- ну и попробовать debug - получить побольше логов (будет в journalctl)
drm.debug=0x1e log_buf_len=1M

PS - пока писал, совсем отупел и не соображу быстро - есть ли смысл поменять видеодрайвер? - но вот на какой?
Ошибки не исчезают с опытом - они просто умнеют
vasek
есть выдает:
- версия edid = 1.3
Vasek это скорей всего внешний монитор который нормально работает, претензии к внутренней матрице ноута
vs220
это скорей всего внешний монитор
я понял так, что это старые логи на данную матрицу ... если это действительно внешний, то хорошо бы посмотреть нужный edid (кстати, можно его взять их винды и попробовать загрузиться с ним).

Что меня еще смущает, так это вывод xrandr, точнее размер 476mm x 268mm ..... хотя должен быть 480 х 270 - это показывают байты ... хотя это мелочь и в принципе не должно влиять.
c.o.d.e.m.a.s.t.e.r
HDMI-A-0 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 476mm x 268mm
Ошибки не исчезают с опытом - они просто умнеют
Прежде чем грешить на EDID, неплохо бы его заиметь в живую и посмотреть, что он собой представляет.
Распарсить в ручную слишком муторно, да и нет смысла, когда для этого есть специальные утилиты.
Как пример, привожу часть данных моего edid, полученных с помошью такой утилиты
 EDID revision......….... 1.3
  Input signal type…...... Digital
  Color bit depth..…...... Undefined
  Display type.......….... RGB color
  Screen size.........…….350 x 190 mm (15,7 in)
  Power management.... Not supported
  Extension blocs.......... None
……………….
Timing characteristics
  Range limits.....….……... Not available
  GTF standard....….……... Not supported
  Additional descriptors..… None
  Preferred timing..….….... Yes
  Native/preferred timing... 1366x768p at 60Hz (16:9)
  Modeline.......…..…….... "1366x768" 69,300 1366 1382 1416 1466 768 770 776 788 -hsync -vsync
Если к EDID претензий не будет, то тогда следует заняться видеокартой (или драйвера или железо).
Ошибки не исчезают с опытом - они просто умнеют
Можно попробовать еще одну фичу ядра, которая как раз и предназначена для похожих случаев, таких как:
- видеокарта не распознает монитор
- видеокарта не может обнаружить какие-либо данные EDID
- видеокарта неправильно передает данные EDID драйверу
- монитор не отправляет данные EDID или отправляет ложные данные
Опишу подробнее, может кому и пригодится в будущем. В чем суть этой фичи? - принудительно установить разрешение дисплея и обойти EDID монитора, используя для этого встроенные в наше ядро следующие edid firmware
edid/800x600.bin
edid/1024x768.bin
edid/1280x1024.bin
edid/1600x1200.bin
edid/1680x1050.bin
edid/1920x1080.bin
Для этого используется параметр edid_firmware модуля drm_kms_helper
- или создать файл /etc/modprobe.d/drm-kms-helper.conf и прописать в нем строку, типа
--- для конкретного монитора ХХХ-1 с разрешением 1280x1024
options drm_kms_helper edid_firmware=ХХХ-1:edid/1280x1024.bin
--- или для всех с разрешением 1280x1024
options drm_kms_helper edid_firmware=edid/1280x1024.bin
- или просто прописать как параметр ядра в командной строки загрузчика ядра
drm_kms_helper.edid_firmware=ХХХ-1:edid/1280x1024.bin
Пробовал несколько раз на Intel - все работало.
Остались записи эксперимента - привожу на всякий случай для сравнения.
1. Данные до эксперимента
- sudo systool -vm drm_kms_helper | grep edid
 edid_firmware       =
- xrandr
Screen 0: minimum 8 x 8, current 1366 x 768, maximum 32767 x 32767
LVDS1 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 350mm x 190mm
- edid
sudo hexdump -C /sys/class/drm/card0-LVDS-1/edid
00000000  00 ff ff ff ff ff ff 00  0d af a1 15 00 00 00 00  |................|
00000010  35 13 01 03 80 23 13 78  0a 07 f5 9a 57 4e 87 26  |5....#.x....WN.&|
00000020  1e 50 54 00 00 00 01 01  01 01 01 01 01 01 01 01  |.PT.............|
00000030  01 01 01 01 01 01 12 1b  56 64 50 00 14 30 10 22  |........VdP..0."|
00000040  26 00 58 c1 10 00 00 18  00 00 00 fe 00 4e 31 35  |&.X..........N15|
00000050  36 42 36 2d 4c 30 41 0a  20 20 00 00 00 fe 00 43  |6B6-L0A.  .....C|
00000060  4d 4f 0a 20 20 20 20 20  20 20 20 20 00 00 00 fe  |MO.         ....|
00000070  00 4e 31 35 36 42 36 2d  4c 30 41 0a 20 20 00 13  |.N156B6-L0A.  ..|
2. Данные после эксперимента
- sudo systool -vm drm_kms_helper | grep edid
edid_firmware       = "LVDS-1:edid/1280x1024.bin"
- xrandr
Screen 0: minimum 8 x 8, current 1280 x 1024, maximum 32767 x 32767
LVDS1 connected primary 1280x1024+0+0 (normal left inverted right x axis y axis) 440mm x 350mm
- edid
hexdump -C /sys/class/drm/card0-LVDS-1/edid
00000000  00 ff ff ff ff ff ff 00  31 d8 00 00 00 00 00 00  |........1.......|
00000010  05 16 01 03 6d 2c 23 78  ea 5e c0 a4 59 4a 98 25  |....m,#x.^..YJ.%|
00000020  20 50 54 00 00 00 81 80  01 01 01 01 01 01 01 01  | PT.............|
00000030  01 01 01 01 01 01 30 2a  00 98 51 00 2a 40 30 70  |......0*..Q.*@0p|
00000040  13 00 bc 63 11 00 00 1e  00 00 00 ff 00 4c 69 6e  |...c.........Lin|
00000050  75 78 20 23 30 0a 20 20  20 20 00 00 00 fd 00 3b  |ux #0.    .....;|
00000060  3d 3e 40 0b 00 0a 20 20  20 20 20 20 00 00 00 fc  |=>@...      ....|
00000070  00 4c 69 6e 75 78 20 53  58 47 41 0a 20 20 00 a0  |.Linux SXGA.  ..|
Пробуй, это и просто и быстро, можешь проверить несколько разрешений. Если не получиться, значит что то серьезное.

PS - разрешение 1280x1024 вместо нативного 1366 x 768 при эксперименте было выбрано с целью отличительной наглядности данных
Ошибки не исчезают с опытом - они просто умнеют
vasek
плюс к этому - немного изменить команду - добавить в конец me
video=eDP-1:1920x1080@60me

попробовал так. Хм. Итог - всё происходит так как будто video=eDP-1:d, т.е. матрица не обнаруживается, у неё не светится даже подсветка и нет паузы в 1 минуту, пока драйвер пытается вычитать edid
глянул в логи Xorg - там всё без изменений. Но интересно то, что когда я вообще ничего не указываю в параметрах kernel, то загрузка тупит и после загрузки если зайти в настройки дисплея то видна матрица ноута с разрешением 640*480, после команды video=eDP-1:d матрица не видна в настройках (но это и понятно), но вот указал video=eDP-1:1920x1080@60me а результат тот же - в настройках дисплея матрицы нет.
 
Зарегистрироваться или войдите чтобы оставить сообщение.