Grafikkarte mehrere Monitore
Problem
Meine ASUStek STRIX-GTX1050TI-O4G-GAMING Grafikkarte hat 4(!) Anschluesse 2 x DVI-D, 1 x HDMI 2.0b und 1 x DisplayPort 1.4.
Einmal ist es mir tatsaechlich gelungen vier Monitore gleichzeitig mit einem Bild zu versorgen. Sobald aber ein Monitor ausgeschaltet wurde, war eine Reaktivierung nicht mehr moeglich.
Da zwei Monitore TV-Geraete/Beamer sind, wollte ich nicht ein riesiges Display, bei dem alle Screens nebeneinander liegen, sondern einzelne Screens (3) um Programme leichter direkt auf einem Screen platzieren zu koennen.
Das schlimme ist, durch die vielen Versuche ging alles irgendwie immer weniger, bis ich zum Schluss, egal welche Kombination ich waehlte, nur noch einen Monitor und einen TV ans laufen bekam.
Loesungshinweise
Leider steht im Datenblatt kein Hinweis auf die maximale Anzahl gleichzeitiger Nutzung von angeschlossenen Monitoren. Also gehe ich mal davon aus, dass solange die maximale Displaygroesze von 7680x4320 nicht ueberschritten wird, bis zu vier unterschiedliche Bilder ausgegeben werden koennen. Bei vier FullHD Screens sollte also, die maximale Displaygroesze weder horizontal noch vertikal ueberschritten sein.
xrandr, inxi, nvidia-setting, ...
Starten wir mal mit xrandr.
chris@server:> xrandr -d :0.0 -q Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767 DP-0 disconnected (normal left inverted right x axis y axis) DP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 521mm x 293mm 1920x1080 60.00*+ 1680x1050 59.95 1600x1200 60.00 1440x900 59.89 1400x1050 59.98 1280x1024 75.02 60.02 1280x960 60.00 1152x864 75.00 1024x768 75.03 70.07 60.00 800x600 75.00 72.19 60.32 56.25 640x480 75.00 72.81 59.94 DVI-D-1 connected (normal left inverted right x axis y axis) 1920x1080 60.00 + 59.94 50.00 23.98 60.05 60.00 50.04 1360x768 60.02 1280x720 60.00 59.94 50.00 1024x768 60.00 800x600 60.32 720x576 50.00 720x480 59.94 640x480 59.94 59.93 chris@server:> xrandr -d :0.1 -q Screen 1: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767 HDMI-0 disconnected primary (normal left inverted right x axis y axis) chris@server:> xrandr -d :0.2 -q Screen 2: minimum 8 x 8, current 640 x 480, maximum 32767 x 32767 DVI-D-0 disconnected primary (normal left inverted right x axis y axis)
i2cdetect -l i2c-3 i2c NVIDIA i2c adapter 8 at f:00.0 I2C adapter i2c-1 i2c NVIDIA i2c adapter 6 at f:00.0 I2C adapter i2c-2 i2c NVIDIA i2c adapter 7 at f:00.0 I2C adapter i2c-0 i2c NVIDIA i2c adapter 1 at f:00.0 I2C adapter
Also ddc sollte in der Lage sein alle vier angschlossenen Monitore zu kontaktieren.
ddcutil detect Display 1 I2C bus: /dev/i2c-1 EDID synopsis: Mfg id: HPN - UNK Model: HP E24t G5 Product code: 14602 (0x390a) Serial number: CNC4191B0T Binary serial number: 1684XXXX (0xXXXXXXXX) Manufacture year: 2024, Week: 19 VCP version: 2.2 Display 2 I2C bus: /dev/i2c-2 DRM connector: card0-DP-1 EDID synopsis: Mfg id: HSD - HannStar Display Corp Model: HE247DPB Product code: 18871 (0x49b7) Serial number: 123456789XXXX Binary serial number: 0 (0x00000000) Manufacture year: 2012, Week: 26 VCP version: 2.1 Invalid display I2C bus: /dev/i2c-3 DRM connector: card0-HDMI-A-1 EDID synopsis: Mfg id: SNY - Sony Model: SONY TV Product code: 10241 (0x2801) Serial number: Binary serial number: XXXXXXXX (0xXXXXXXX) Manufacture year: 2007, Week: 1 DDC communication failed
I2C/-0 wird nicht erkannt, der HP hat kein DRM und der Sony hat ein Kommunikationproblem. Na toll.
Hier ist der Grund: Der Sony am i2c-3 hat keinen DDC-Chip (Adresse 37), sondern nur einen EDID-Chip (0x50). Der Samsung am i2c-0 hat weder noch und wird somit erst gar nicht erkannt.
server:~ # i2cdetect -y 0 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- 08 -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- 29 -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- 68 -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- server:~ # i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- 37 -- -- 3a -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- server:~ # i2cdetect -y 2 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: 30 -- -- -- -- -- -- 37 -- -- -- -- -- -- -- -- 40: 40 -- -- -- -- -- -- -- -- -- 4a 4b -- -- -- -- 50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- server:~ # i2cdetect -y 3 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- 3a 3b -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- --
Slave addresses x50 (EDID) and x37 (DDC). xrandr has ways other than I2C to access the EDID, e.g. by BIOS calls Daraus koennte man jetzt schlieszen ,dass i2c-0 DVI-D-0, i2c-1 DVI-D-1, i2c-2 DP1 und i2c-3 HDMI ist.
Anzahl Anschluesse/Displays/Screens
Hinweise aus dem Netz
Also ich glaub die ganze gtx 1000 Serie unterstützt 4 Displays. Sonst kannst du einfach an die onboard was anschließen oder ne 2. Grafikkarte nehmen
Das ist schon korrekt, viele Grafikkarten können nicht mit 3 Bildschirmen umgehen, auch wenn mehr Anschlüsse vorhanden sind. Dies ist auch vom Hersteller abhängig. An meiner GTX 1050 TI Asus ROG Strix kann ich z.B. problemlos 3 Bildschirme betreiben.
Wenig hilfreiche Hinweise gibt es auch. Gut find ich das mit dem VGA-Tipp;-))
Viele Foreneintraege koennte man sich sparen, wenn man einfach mal die Dokumentation liest.
Most NVIDIA GPUs based on the Kepler¹ architecture, or newer, support driving up to four display devices simultaneously. Most NVIDIA GPUs older than Kepler¹ support driving up to two display devices simultaneously.
¹Kepler-Architektur (GeForce 600/700 Serien, 2012)
Ueberpruefung
Dabei kann es doch so einfach sein Klarkeit herzustellen.
Beispiel #1 NVIDIA Quadro M2000
nvidia-settings -q dpys 8 Display Devices on worker:0 [0] worker:0[dpy:0] (DP-0) (connected, enabled) Has the following names: DFP DFP-0 DPY-EDID-87977d39-dc91-e2a7-5b42-4bf2d8422cd8 DPY-0 DP-0 Connector-2 [1] worker:0[dpy:1] (DP-1) Has the following names: DFP DFP-1 DPY-1 DP-1 Connector-2 [2] worker:0[dpy:2] (DP-2) Has the following names: DFP DFP-2 DPY-2 DP-2 Connector-3 [3] worker:0[dpy:3] (DP-3) Has the following names: DFP DFP-3 DPY-3 DP-3 Connector-3 [4] worker:0[dpy:4] (DP-4) (connected, enabled) Has the following names: DFP DFP-4 DPY-EDID-ed2ec75d-f371-e005-c6ea-73642b39d8a8 DPY-4 DP-4 Connector-1 [5] worker:0[dpy:5] (DP-5) Has the following names: DFP DFP-5 DPY-5 DP-5 Connector-1 [6] worker:0[dpy:6] (DP-6) Has the following names: DFP DFP-6 DPY-6 DP-6 Connector-0 [7] worker:0[dpy:7] (DP-7) Has the following names: DFP DFP-7 DPY-7 DP-7 Connector-0
Diese Karte hat tatsaechlich 4 DP Anschluesse und koennte an jedem der 4 Connectoren je 2 Monitor betreiben (MST?).
chris@worker:~> ddcutil detect Display 1 I2C bus: /dev/i2c-2 DRM connector: card0-DP-1 EDID synopsis: Mfg id: SAM - Samsung Electric Company Model: U28E590 Product code: 3149 (0x0c4d) Serial number: H4LN609169 Binary serial number: 1113216074 (0x425a544a) Manufacture year: 2020, Week: 26 VCP version: 2.0 Display 2 I2C bus: /dev/i2c-4 DRM connector: card0-DP-3 EDID synopsis: Mfg id: SAM - Samsung Electric Company Model: U28E590 Product code: 3149 (0x0c4d) Serial number: HTPKC14310 Binary serial number: 810375238 (0x304d5846) Manufacture year: 2018, Week: 51 VCP version: 2.0
Und hier hat wieder 5-jaehrige Schimpanse zugeschlagen. Laut nvidia-setting sind die 4 Connectoren
- 0: DP-6 und DP-7
- 1: DP-4 und DP-5 Monitor (links an card0-DP-3) 0MX......4310J
- 2: DP-0 und DP-1 Monitor (rechts an card0-DP-1) BZT......9169J
- 3: DP-2 und DP-3
Die Karte besitzt 5 (!) I2C-Bus Adapter.
i2cdetect -l i2c-3 i2c NVIDIA i2c adapter 7 at 4:00.0 I2C adapter i2c-1 i2c NVIDIA i2c adapter 2 at 4:00.0 I2C adapter i2c-4 i2c NVIDIA i2c adapter 8 at 4:00.0 I2C adapter i2c-2 i2c NVIDIA i2c adapter 6 at 4:00.0 I2C adapter i2c-0 smbus SMBus I801 adapter at 0780 SMBus adapter i2c-5 i2c NVIDIA i2c adapter 9 at 4:00.0 I2C adapter
Die Zuordnung zu den Connectoren wirft Fragen auf. Connector 1 -> i2c-2 und Connector 2 -> i2c-4.
Beispiel #2 NVIDIA GeForce GTX 1050 Ti
(per ssh) server:~ # DISPLAY=:0 nvidia-settings -q dpys
5 Display Devices on server:0 [0] server:0[dpy:0] (DVI-D-0) (connected) Has the following names: DFP DFP-0 DPY-EDID-aab368ea-d801-739e-62ca-6109e2567e6d DPY-0 DVI-D-0 Connector-0 [1] server:0[dpy:1] (HDMI-0) Has the following names: DFP DFP-1 DPY-1 HDMI-0 Connector-1 [2] server:0[dpy:2] (DP-0) Has the following names: DFP DFP-2 DPY-2 DP-0 Connector-2 [3] server:0[dpy:3] (DP-1) (connected, enabled) Has the following names: DFP DFP-3 DPY-EDID-05c8daf9-506c-f4bb-5bf1-0a886a401315 DPY-3 DP-1 Connector-2 [4] server:0[dpy:4] (DVI-D-1) Has the following names: DFP DFP-4 DPY-4 DVI-D-1 Connector-3
Diese Karte hat 4 Anschluesse: 2 DVI-D (nebeneinander 2 Slots Connector-0 und Connector-3), HDMI (Connector-1) und ein DP (Connector-2)
Was mir auffaellt.
- DVI-D-0 ist connected, aber nicht enabled
- HDMI-0: Der angschlossene Sony TV ist nicht connected
- DVI-D-1: Der angschlossene Samsung TV ist nicht connected
Vielleicht hilft die Option "ConnectedMonitor".
Option "ConnectedMonitor" "DVI-D-0, DVI-D-1, HDMI-0, DP-1"
Vergleich Xorg.conf
Wie ist also die Hardware in Xorg.conf hinterlegt?
Quadro M2000
Die Input-Devices habe ich rausgenommen.
more /etc/X11/xorg.conf # nvidia-settings: X configuration file generated by nvidia-settings # nvidia-settings: version 550.127.05 Section "ServerLayout" Identifier "Layout0" Screen 0 "Screen0" 0 0 InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" Option "Xinerama" "0" EndSection Section "Monitor" # HorizSync source: edid, VertRefresh source: edid Identifier "Monitor0" VendorName "Unknown" ModelName "Samsung U28E590" HorizSync 30.0 - 135.0 VertRefresh 56.0 - 75.0 Option "DPMS" EndSection Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "Quadro M2000" EndSection Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 Option "Stereo" "0" Option "nvidiaXineramaInfoOrder" "DP-4" Option "metamodes" "DP-4: nvidia-auto-select +0+0, DP-0: nvidia-auto-select +3840+0" Option "SLI" "Off" Option "MultiGPU" "Off" Option "BaseMosaic" "off" SubSection "Display" Depth 24 EndSubSection EndSection
Was schon mal auffaellt, obwohl 2 Monitore an 2 unterschiedlichen Displayports angeschlossen sind taucht nur ein Monitor0 auf. (NB: VendorName "Unkown" Wer hat denn da wieder geschlafen?)
NVidia xorgconfoptions [5] nur fuer den Treiber 325.15 verfuegbar(???).
Die beiden Options von Interesse sind:
- nvidiaXineramaInfoOrder
The option string is a comma-separated list of display device names. The display device names can either be general (e.g, "CRT", which identifies all CRTs), or specific (e.g., "CRT-1", which identifies a particular CRT). Not all display devices need to be identified in the option string; display devices that are not listed will be implicitly appended to the end of the list, in their default order. Note that nvidiaXineramaInfoOrder tracks all display devices that could possibly be connected to the GPU, not just the ones that are currently enabled. When reporting the Xinerama information, the NVIDIA X driver walks through the display devices in the order specified, only reporting enabled display devices.
- MetaModes (GroszKleinSchreibung?²)
This option describes the combination of modes to use on each monitor when using TwinView or SLI Mosaic Mode. See Chapter 12, Configuring Multiple Display Devices on One X Screen and Chapter 29, Configuring SLI and Multi-GPU FrameRendering for details. Default: string is NULL.
²Just as in all X config entries, spaces are ignored and all entries are case insensitive.
Diese Seite bringt hoffentlich Klarheit.
Wenn auf der GPU mehrere X-Bildschirme konfiguriert sind, versucht der NVIDIA X-Treiber, Anzeigegeräte und GPU-Ressourcen für diese anderen X-Bildschirme zu reservieren (unter Berücksichtigung der X-Konfigurationsoptionen „UseDisplayDevice“ und „MetaModes“ jedes X-Bildschirms) und weist dann alle verbleibenden Ressourcen dem ersten auf der GPU konfigurierten X-Bildschirm zu.
Was bei meiner QuadroM2000Config weiterhin irritiert, ist dass der 2. Monitor keine eigene Section besitzt und nur ueber DP-0 in den MetaModes auftaucht.
The details of how this works are documented in the nv-control-dpy.c sample NV-CONTROL client in the nvidia-settings source tarball.
GTX 1050 Ti 4 Monitore/TVs
Anmerkung:
- Alle vier Monitore/TVs haben FullHD.
- Die beiden Monitore zeigen das gleiche Bild (Desktop). Sind also geklont.
- Die beiden TVs haben jeweils einen eigenen Screen.
Hier zum Nachvollziehen.
Die xorg.conf die nach viel Probiererei auf einmal nicht mehr ging.
# nvidia-settings: X configuration file generated by nvidia-settings # nvidia-settings: version 550.135 Section "ServerLayout" Identifier "Layout0" Screen 0 "Screen0" 0 0 Screen 1 "Screen1" 1920 0 Screen 2 "Screen2" 3840 0 InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" Option "Xinerama" "0" EndSection Section "Files" EndSection Section "InputDevice" # generated from data in "/etc/sysconfig/mouse" Identifier "Mouse0" Driver "mouse" Option "Protocol" "IMPS/2" Option "Device" "/dev/input/mice" Option "Emulate3Buttons" "yes" Option "ZAxisMapping" "4 5" EndSection Section "InputDevice" # generated from default Identifier "Keyboard0" Driver "kbd" EndSection Section "Monitor" # HorizSync source: edid, VertRefresh source: edid Identifier "Monitor0" VendorName "HP" ModelName "HP Inc. HP E24t G5" HorizSync 30.0 - 85.0 VertRefresh 50.0 - 75.0 Option "DPMS" Option "Enable" "True" Option "Primary" "True" EndSection Section "Monitor" # HorizSync source: edid, VertRefresh source: edid Identifier "Monitor1" VendorName "Sony" ModelName "SONY TV" HorizSync 14.0 - 68.0 VertRefresh 48.0 - 62.0 Option "DPMS" EndSection Section "Monitor" # HorizSync source: edid, VertRefresh source: edid Identifier "Monitor2" VendorName "SAMSUNG" ModelName "SAMSUNG TV" HorizSync 26.0 - 81.0 VertRefresh 24.0 - 75.0 Option "DPMS" EndSection Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "NVIDIA GeForce GTX 1050 Ti" BusID "PCI:15:0:0" Screen 0 Option "UseHotplugEvents" "false" Option "AllowEmptyInitialConfiguration" "true" EndSection Section "Device" Identifier "Device1" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "NVIDIA GeForce GTX 1050 Ti" BusID "PCI:15:0:0" Screen 1 Option "UseHotplugEvents" "false" Option "AllowEmptyInitialConfiguration" "true" EndSection Section "Device" Identifier "Device2" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "NVIDIA GeForce GTX 1050 Ti" BusID "PCI:15:0:0" Screen 2 Option "UseHotplugEvents" "false" Option "AllowEmptyInitialConfiguration" "true" EndSection Section "Screen" # Removed Option "metamodes" "DP-1: nvidia-auto-select +0+0, DVI-D-0: 1920x1080 +0+0" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 Option "Stereo" "0" Option "nvidiaXineramaInfoOrder" "DVI-D-0" Option "metamodes" "DVI-D-0: nvidia-auto-select +0+0 {AllowGSYNC=Off}" Option "SLI" "Off" Option "MultiGPU" "Off" Option "BaseMosaic" "off" SubSection "Display" Depth 24 EndSubSection EndSection Section "Screen" Identifier "Screen1" Device "Device1" Monitor "Monitor1" DefaultDepth 24 Option "Stereo" "0" Option "nvidiaXineramaInfoOrder" "HDMI-0" Option "metamodes" "HDMI-0: nvidia-auto-select +0+0 {AllowGSYNC=Off}" Option "SLI" "Off" Option "MultiGPU" "Off" Option "BaseMosaic" "off" SubSection "Display" Depth 24 EndSubSection EndSection Section "Screen" Identifier "Screen2" Device "Device2" Monitor "Monitor2" DefaultDepth 24 Option "Stereo" "0" Option "nvidiaXineramaInfoOrder" "DVI-D-1" Option "metamodes" "DVI-D-1: nvidia-auto-select +0+0 {AllowGSYNC=Off}" Option "SLI" "Off" Option "MultiGPU" "Off" Option "BaseMosaic" "off" SubSection "Display" Depth 24 EndSubSection EndSection
Was auffaellt.
- Removed Option "metamodes" "DP-1: nvidia-auto-select +0+0, DVI-D-0: 1920x1080 +0+0" Warum? Das muss doch rein!
- Option "DPMS" bei den TVs muss/sollte raus!
- Option "Enable" "True" kann eigentlich bei allen Monitor-Sections rein.
Darueber hinaus kann vielleicht
Option "ConnectedMonitor" "DVI-D-0, DVI-D-1, HDMI-0, DP-1"
auch nichts schaden?
Reboot oder systemctl restart display-manager. Erfolg gleich Null. Nvidia erkennt die ausgeschalteten (Stand-by) TVs nicht.
hw-probe ergibt folgenden Eintrag bei devices.
eisa:sony-sny2801;;detected;monitor;;Sony;TV SNY2801 1920x1080
Und unter [6] findet man unter SNY2801
| Sony | SNY2801 | TV | 1920x1080 | | 2007 | [2E85613CDBF0](<Digital/Sony/SNY2801/2E85613CDBF0>) |
edid-decode (hex):
00 ff ff ff ff ff ff 00 4d d9 01 28 01 01 01 01 01 11 01 03 80 a0 5a 78 0a 0d c9 a0 57 47 98 27 12 48 4c 21 08 00 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 02 3a 80 18 71 38 2d 40 58 2c 45 00 40 84 63 00 00 1e 66 21 50 b0 51 00 1b 30 40 70 36 00 40 84 63 00 00 1e 00 00 00 fd 00 30 3e 0e 44 0f 00 0a 20 20 20 20 20 20 00 00 00 fc 00 53 4f 4e 59 20 54 56 0a 20 20 20 20 20 01 59
02 03 24 70 50 1f 14 13 12 11 16 15 10 05 04 03 02 07 06 01 20 23 09 07 07 83 01 00 00 66 03 0c 00 30 00 80 01 1d 80 d0 72 1c 16 20 10 2c 25 80 40 84 63 00 00 9e 01 1d 80 18 71 1c 16 20 58 2c 25 00 40 84 63 00 00 9e 01 1d 00 bc 52 d0 1e 20 b8 28 55 40 40 84 63 00 00 1e 02 3a 80 d0 72 38 2d 40 10 2c 45 80 40 84 63 00 00 1e 01 1d 00 72 51 d0 1e 20 6e 28 55 00 40 84 63 00 00 1e 00 99
Block 0, Base EDID:
EDID Structure Version & Revision: 1.3 Vendor & Product Identification: Manufacturer: SNY Model: 10241 Serial Number: ... Made in: week 1 of 2007 Basic Display Parameters & Features: Digital display Maximum image size: 160 cm x 90 cm Gamma: 2.20 RGB color display First detailed timing is the preferred timing Color Characteristics: Red : 0.6250, 0.3398 Green: 0.2802, 0.5947 Blue : 0.1552, 0.0703 White: 0.2832, 0.2978 Established Timings I & II: DMT 0x04: 640x480 59.940476 Hz 4:3 31.469 kHz 25.175000 MHz DMT 0x09: 800x600 60.316541 Hz 4:3 37.879 kHz 40.000000 MHz DMT 0x10: 1024x768 60.003840 Hz 4:3 48.363 kHz 65.000000 MHz Standard Timings: none Detailed Timing Descriptors: DTD 1: 1920x1080 60.000000 Hz 16:9 67.500 kHz 148.500000 MHz (1600 mm x 900 mm) Hfront 88 Hsync 44 Hback 148 Hpol P Vfront 4 Vsync 5 Vback 36 Vpol P DTD 2: 1360x768 60.015162 Hz 85:48 47.712 kHz 85.500000 MHz (1600 mm x 900 mm) Hfront 64 Hsync 112 Hback 256 Hpol P Vfront 3 Vsync 6 Vback 18 Vpol P Display Range Limits: Monitor ranges (GTF): 48-62 Hz V, 14-68 kHz H, max dotclock 150 MHz Display Product Name: 'SONY TV' Extension blocks: 1
Checksum: 0x59
Block 1, CTA-861 Extension Block:
Revision: 3 Basic audio support Supports YCbCr 4:4:4 Supports YCbCr 4:2:2 Native detailed modes: 0 Video Data Block: VIC 31: 1920x1080 50.000000 Hz 16:9 56.250 kHz 148.500000 MHz VIC 20: 1920x1080i 50.000000 Hz 16:9 28.125 kHz 74.250000 MHz VIC 19: 1280x720 50.000000 Hz 16:9 37.500 kHz 74.250000 MHz VIC 18: 720x576 50.000000 Hz 16:9 31.250 kHz 27.000000 MHz VIC 17: 720x576 50.000000 Hz 4:3 31.250 kHz 27.000000 MHz VIC 22: 1440x576i 50.000000 Hz 16:9 15.625 kHz 27.000000 MHz VIC 21: 1440x576i 50.000000 Hz 4:3 15.625 kHz 27.000000 MHz VIC 16: 1920x1080 60.000000 Hz 16:9 67.500 kHz 148.500000 MHz VIC 5: 1920x1080i 60.000000 Hz 16:9 33.750 kHz 74.250000 MHz VIC 4: 1280x720 60.000000 Hz 16:9 45.000 kHz 74.250000 MHz VIC 3: 720x480 59.940060 Hz 16:9 31.469 kHz 27.000000 MHz VIC 2: 720x480 59.940060 Hz 4:3 31.469 kHz 27.000000 MHz VIC 7: 1440x480i 59.940060 Hz 16:9 15.734 kHz 27.000000 MHz VIC 6: 1440x480i 59.940060 Hz 4:3 15.734 kHz 27.000000 MHz VIC 1: 640x480 59.940476 Hz 4:3 31.469 kHz 25.175000 MHz VIC 32: 1920x1080 24.000000 Hz 16:9 27.000 kHz 74.250000 MHz Audio Data Block: Linear PCM: Max channels: 2 Supported sample rates (kHz): 48 44.1 32 Supported sample sizes (bits): 24 20 16 Speaker Allocation Data Block: FL/FR - Front Left/Right Vendor-Specific Data Block (HDMI), OUI 00-0C-03: Source physical address: 3.0.0.0 Supports_AI Detailed Timing Descriptors: DTD 3: 1920x1080i 50.000000 Hz 16:9 28.125 kHz 74.250000 MHz (1600 mm x 900 mm) Hfront 528 Hsync 44 Hback 148 Hpol P Vfront 2 Vsync 5 Vback 15 Vpol P Vfront +0.5 Odd Field Vfront 2 Vsync 5 Vback 15 Vpol P Vback +0.5 Even Field DTD 4: 1920x1080i 60.000000 Hz 16:9 33.750 kHz 74.250000 MHz (1600 mm x 900 mm) Hfront 88 Hsync 44 Hback 148 Hpol P Vfront 2 Vsync 5 Vback 15 Vpol P Vfront +0.5 Odd Field Vfront 2 Vsync 5 Vback 15 Vpol P Vback +0.5 Even Field DTD 5: 1280x720 50.000000 Hz 16:9 37.500 kHz 74.250000 MHz (1600 mm x 900 mm) Hfront 440 Hsync 40 Hback 220 Hpol P Vfront 5 Vsync 5 Vback 20 Vpol P DTD 6: 1920x1080 50.000000 Hz 16:9 56.250 kHz 148.500000 MHz (1600 mm x 900 mm) Hfront 528 Hsync 44 Hback 148 Hpol P Vfront 4 Vsync 5 Vback 36 Vpol P DTD 7: 1280x720 60.000000 Hz 16:9 45.000 kHz 74.250000 MHz (1600 mm x 900 mm) Hfront 110 Hsync 40 Hback 220 Hpol P Vfront 5 Vsync 5 Vback 20 Vpol P
Checksum: 0x99 Unused space in Extension Block: 1 byte
Warnings:
Block 1, CTA-861 Extension Block:
IT Video Formats are overscanned by default, but normally this should be underscanned. Video Data Block: VIC 31 is the preferred timing, overriding the first detailed timings. Is this intended? Add a Colorimetry Data Block with the sRGB colorimetry bit set to avoid interop issues.
Failures:
Block 1, CTA-861 Extension Block:
Missing VCDB, needed for Set Selectable RGB Quantization to avoid interop issues.
EDID:
Base EDID: Some timings are out of range of the Monitor Ranges: Vertical Freq: 24.000 - 60.317 Hz (Monitor: 48.000 - 62.000 Hz)
EDID conformity: FAIL
Damit koennte man wenigstens einen EDID Emulator fuettern, oder ein Custom EDID.bin in der xorg.conf hinterlegen. Mit
cat EDID.txt | grep -E '^([a-f0-9]{32}|[a-f0-9 ]{47})$' | tr -d '[:space:]' | xxd -r -p > EDID.bin
kann man den Hexcode-Block in eine EDID.bin schreiben.
Teilerfolg
Mit der von Hand korrigierten xorg.conf (s.u.) und nach einem
systemctl restart display-manager
war auf einmal alle Screens vorhanden. Sogar der Samsung der gar nicht angeschlossen war. Beim Samsung stimmt nur die Aufloesung nicht.
Lediglich die Reihenfolge, bzw. Zurodnung der Screens zu den Bildschirmen war vertauscht.
Gute Dienste leistet da der Remote Desktop Viewer, der zeigt ALLE Screens in einem Fenster!
# nvidia-settings: X configuration file generated by nvidia-settings # nvidia-settings: version 550.135 Section "ServerLayout" Identifier "Layout0" Screen 0 "Screen0" 0 0 Screen 1 "Screen1" 1920 0 Screen 2 "Screen2" 3840 0 InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" Option "Xinerama" "0" EndSection Section "Files" EndSection Section "InputDevice" # generated from data in "/etc/sysconfig/mouse" Identifier "Mouse0" Driver "mouse" Option "Protocol" "IMPS/2" Option "Device" "/dev/input/mice" Option "Emulate3Buttons" "yes" Option "ZAxisMapping" "4 5" EndSection Section "InputDevice" # generated from default Identifier "Keyboard0" Driver "kbd" EndSection Section "Monitor" # HorizSync source: edid, VertRefresh source: edid Identifier "Monitor0" VendorName "Unknown" ModelName "HP Inc. HP E24t G5" HorizSync 30.0 - 85.0 VertRefresh 50.0 - 75.0 Option "DPMS" EndSection Section "Monitor" # HorizSync source: edid, VertRefresh source: edid Identifier "Monitor1" VendorName "Unknown" ModelName "SONY TV" HorizSync 14.0 - 68.0 VertRefresh 48.0 - 62.0 #Option "DPMS" Option "Enable" "True" EndSection Section "Monitor" # HorizSync source: edid, VertRefresh source: edid Identifier "Monitor2" VendorName "Unknown" ModelName "SAMSUNG" HorizSync 26.0 - 81.0 VertRefresh 24.0 - 75.0 #Option "DPMS" Option "Enable" "True" EndSection Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "NVIDIA GeForce GTX 1050 Ti" BusID "PCI:15:0:0" Option "ConnectedMonitor" "DVI-D-0, DP-1, HDMI-0, DVI-D-1" Option "CustomEDID" "HDMI-0:/etc/X11/Sony_KDL-40D3550_EDID.bin" Option "IgnoreEDID" "false" Option "UseEDID" "true" # Screen 0 EndSection #Section "Device" # Identifier "Device1" # Driver "nvidia" # VendorName "NVIDIA Corporation" # BoardName "NVIDIA GeForce GTX 1050 Ti" # BusID "PCI:15:0:0" # Option "ConnectedMonitor" "HDMI-0" # Screen 1 #EndSection # #Section "Device" # Identifier "Device2" # Driver "nvidia" # VendorName "NVIDIA Corporation" # BoardName "NVIDIA GeForce GTX 1050 Ti" # BusID "PCI:15:0:0" # Option "ConnectedMonitor" "DVI-D-1" # Screen 2 #EndSection Section "Screen" # Removed Option "metamodes" "DP-1: nvidia-auto-select +0+0, DVI-D-0: 1920x1080 +0+0" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 Option "Stereo" "0" Option "nvidiaXineramaInfoOrder" "DVI-D-0" #Option "metamodes" "DVI-D-0: 1920x1080 +0+0" Option "metamodes" "DP-1: nvidia-auto-select +0+0, DVI-D-0: 1920x1080 +0+0" Option "SLI" "Off" Option "MultiGPU" "Off" Option "BaseMosaic" "off" SubSection "Display" Depth 24 EndSubSection EndSection Section "Screen" Identifier "Screen1" Device "Device0" Monitor "Monitor1" DefaultDepth 24 Option "Stereo" "0" Option "nvidiaXineramaInfoOrder" "HDMI-0" Option "metamodes" "HDMI-0: nvidia-auto-select +0+0 {AllowGSYNC=Off}" Option "SLI" "Off" Option "MultiGPU" "Off" Option "BaseMosaic" "off" SubSection "Display" Depth 24 EndSubSection EndSection Section "Screen" Identifier "Screen2" Device "Device0" Monitor "Monitor2" DefaultDepth 24 Option "Stereo" "0" Option "nvidiaXineramaInfoOrder" "DVI-D-1" Option "metamodes" "DVI-D-1: nvidia-auto-select +0+0 {AllowGSYNC=Off}" Option "SLI" "Off" Option "MultiGPU" "Off" Option "BaseMosaic" "off" SubSection "Display" Depth 24 EndSubSection EndSection
Beifang
Nvidia (Texture) Tools:
- nvtop: interactive GPU process viewer (Wie top, aber halt fuer die Grafikkarte. Einfach ausprobieren.)
- nvzoom - Scales the given image.
- nvtestsuite TODO
- nvidia-sleep.sh: Bash-Script Interessant ist die das Ansprechen des NVIDIA-Treiber ueber echo "$1" > /proc/driver/nvidia/suspend
- nvhdrtest HDR High Dynamic Range Image Image Viewer
- nvassemble
- nvcompress
- nvdecompress: --help
- nv-gnome-thumbnailer
- nvddsinfo