Как установить собственное разрешение через xorg.conf, переопределяя EDID?

У меня есть монитор с собственным разрешением 1680x1050, который не обнаруживается и поэтому не может быть установлен через драйверы nvidia. Я пытался безрезультатно заставить разрешение с помощью xrandr, как это предлагается в официальной документации по Ubuntu: https://wiki.ubuntu.com/X/Config/Resolution#Adding_undetected_resolutions Так что я пытаюсь получите разрешение, установленное вручную сгенерированным файлом xorg.conf в / etc / X11, как предлагается в конце той же официальной страницы.

Мне удалось создать собственный xorg.conf для установки собственного разрешения и, как я вижу в журнале xorg (/var/log/xorg.0.log), загружается файл конфигурации xorg.conf, но пользовательское разрешение 1680x1050 отбрасывается, так как он не указан в «EDID»: https://en.wikipedia.org/wiki/Extended_Display_Identification_Data

Как переопределить шаг Xorg, который сравнивает разрешение custum с EDID перечислил конфигурации и отбрасывает собственное разрешение для отсутствия в списке? Есть идеи?

Вот соответствующая часть xorg.0.log:


**[  3448.936] (==) Using config file: "/etc/X11/xorg.conf"**
[  3448.936] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[  3448.936] (==) ServerLayout "Layout0"
[  3448.936] (**) |-->Screen "Screen0" (0)
[  3448.936] (**) |   |-->Monitor "Monitor0"
[  3448.936] (**) |   |-->Device "Device0"
[  3448.936] (**) |-->Input Device "Keyboard0"
..........
..............
  3448.959] (II) Loading /usr/lib/xorg/modules/libwfb.so
[  3448.959] (II) Module wfb: vendor="X.Org Foundation"
[  3448.959]    compiled for 1.18.3, module version = 1.0.0
[  3448.959]    ABI class: X.Org ANSI C Emulation, version 0.4
[  3448.959] (II) Loading sub module "ramdac"
[  3448.959] (II) LoadModule: "ramdac"
[  3448.959] (II) Module "ramdac" already built-in
[  3448.959] (**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
[  3448.959] (==) NVIDIA(0): RGB weight 888
[  3448.959] (==) NVIDIA(0): Default visual is TrueColor
[  3448.959] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[  3448.960] (**) NVIDIA(0): Option "NoLogo" "True"
**[  3448.960] (**) NVIDIA(0): Option "MetaModes" "1680x1050_60 +0+0"**
[  3448.960] (**) NVIDIA(0): Enabling 2D acceleration
[  3449.310] (II) NVIDIA(GPU-0): Display (Samsung SyncMaster (CRT-0)) does not support NVIDIA
[  3449.310] (II) NVIDIA(GPU-0):     3D Vision stereo.
[  3449.311] (II) NVIDIA(0): NVIDIA GPU GeForce 7050 PV / nForce 630a (C68) at PCI:0:18:0
[  3449.311] (II) NVIDIA(0):     (GPU-0)
[  3449.311] (--) NVIDIA(0): Memory: 524288 kBytes
[  3449.311] (--) NVIDIA(0): VideoBIOS: 05.67.32.26.00
[  3449.311] (--) NVIDIA(0): Interlaced video modes are supported on this GPU
[  3449.311] (--) NVIDIA(0): Valid display device(s) on GeForce 7050 PV / nForce 630a at PCI:0:18:0
[  3449.311] (--) NVIDIA(0):     Samsung SyncMaster (CRT-0) (connected)
[  3449.311] (--) NVIDIA(0):     DFP-0
[  3449.311] (--) NVIDIA(0): Samsung SyncMaster (CRT-0): 350.0 MHz maximum pixel clock
[  3449.311] (--) NVIDIA(0): DFP-0: 155.0 MHz maximum pixel clock
[  3449.311] (--) NVIDIA(0): DFP-0: Internal Single Link TMDS
[  3449.311] (**) NVIDIA(0): Using HorizSync/VertRefresh ranges from the EDID for display
[  3449.311] (**) NVIDIA(0):     device Samsung SyncMaster (CRT-0) (Using EDID frequencies
[  3449.311] (**) NVIDIA(0):     has been enabled on all display devices.)
**[  3449.312] (WW) NVIDIA(0): No valid modes for "1680x1050_60+0+0"; removing.**
**[  3449.312] (WW) NVIDIA(0): Unable to validate any modes; falling back to the default mode
[  3449.312] (WW) NVIDIA(0):     "nvidia-auto-select".**
[  3449.312] (WW) NVIDIA(0): 
[  3449.312] (II) NVIDIA(0): Validated MetaModes:
[  3449.312] (II) NVIDIA(0):     "CRT-0:nvidia-auto-select"
[  3449.312] (II) NVIDIA(0): Virtual screen size determined to be 1600 x 1200
[  3449.313] (WW) NVIDIA(0): Unable to support custom viewPortOut 1600 x 900 +0 +150
[  3449.313] (WW) NVIDIA(0): Unable to support custom viewPortOut 1600 x 900 +0 +150
[  3449.313] (--) NVIDIA(0): DPI set to (99, 98); computed from "UseEdidDpi" X config
[  3449.313] (--) NVIDIA(0):     option
[  3449.313] (--) Depth 24 pixmap format is 32 bpp
[  3449.318] (II) NVIDIA(0): Setting mode "CRT-0:nvidia-auto-select"
3
задан 21 June 2016 в 04:34

1 ответ

Способ переопределить EDID определил конфигурации в xorg.conf, должна добавить эта строка в разделе "Device":


Option "UseEdid" "False"

Так, все еще возможно установить собственное Разрешение дисплея в Ubuntu путем создания и настройки конфигурационного файла для Xorg. Вот пошаговое руководство:

1) СОЗДАЮТ НОВЫЙ xorg.conf файл, чтобы вставить папку конфигурации "/etc/X11". Если Вам не настраивали этот файл, существует много примеров в сети, но если у Вас есть драйвер Nvidia, это идет с инструментом для генерации того. Просто выполненный


sudo nvidia-xconfig 

2) РЕДАКТИРОВАНИЕ ЭТОТ НОВЫЙ ФАЙЛ xorg.conf настройка разделов "Экран" и "Монитор" с настройками для родного разрешения Вашего Дисплея. Необходимо работать "sudo gedit" в терминале, чтобы смочь сохранить изменения в/etc/X11 системной папке. Будет легче при поиске сети некоторые примеры и определенных опций для монитора, таких как частоты строчной развертки и частоты кадровой развертки. Я предложил бы выполнить поиск "1680x1050" (или Ваше родное разрешение) И "xorg.conf". Вот пример раздела "Monitor" для Syncmaster 2043NWX:


Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Samsung SyncMaster"
    HorizSync       30.0 - 81.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
EndSection

3) ADD СТРОКА ДЛЯ ПЕРЕОПРЕДЕЛЕНИЯ EDID поскольку собственная конфигурация не была перечислена в данных EDID, которые драйверы получили от Дисплея, и Вы будете вызывать это разрешение через xorg.conf. Это - первая строка, записанная в этом ответе.

4) СОХРАНИЛИ ФАЙЛ И ВЫХОДЯТ ИЗ СИСТЕМЫ. Обязательно сохраните xorg.conf в/etc/X11 и выйдите из Вашей сессии человечности. Если бы все было в порядке, то после выхода из системы родное разрешение должно быть установлено и работа, даже для экрана входа в систему, поскольку/etc/X11/xorg.conf является крытым тростником X Window каждый раз, когда это запускает или перезапускает. Если что-то пошло не так, как надо, можно временно переименовать/etc/X11/xorg.conf как/etc/X11 / _ xorg.conf, и затем необходимо смочь войти в систему с разрешением по умолчанию. Можно проверить журнал X-окна в /var/log/xorg.0.log, чтобы попытаться выяснить то, что пошло не так, как надо с настройками.

Вот xorg.conf пример , сгенерирован nvidia-xconfig и настроен для установки родного разрешения SyncMaster2043nwx:


# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 304.131  (buildmeister@swio-display-x64-rhel04-16)  Sun Nov  8 22:48:17 PST 2015

Section "ServerLayout"
    Identifier     "Layout0"
     Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "Files"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Samsung SyncMaster"
    HorizSync       30.0 - 81.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "metamodes" "1680x1050_60 +0+0"
    Option         "NoLogo" "True"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 7050 PV 7 nForce 630a"
    Option         "UseEDID"        "FALSE"

EndSection

Позволивший мне поблагодарить все сообщество Ubuntu, чтобы помочь мне выяснить все это через многие различные сообщения.

2
ответ дан 21 June 2016 в 14:34
  • 1
    Я upvoted, это, затем понятое, ожидает, присвоение на самом деле, работаю на меня. i=~/tost1; echo "$i" возвраты /home/wja/tost1. – wjandrea 7 November 2017 в 08:35

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

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