0

Bottom Line Up Front: where do I need to go in RHEL to define a video configuration that applies to all users of the workstation?

My hardware setup is an nVidia RTX4000 driving a "standard" monitor and some video conversion hardware. My workstation is running RHEL 7.9 and using the nvidia proprietary driver. Each "display" is driven by one of the DisplayPort outputs of the video card. I'd like to drive the monitor at 1920x1200 (native resolution of the panel), and I need to drive the video converter at 1280x1024, even though its max resolution is higher (this is not negotiable - the image must be 1280x1024 for the downstream processing). My desired setup is a horizontal single desktop with the 1920x1200 monitor on the left, and the 1280x1024 video converter on the right, top-aligned.

Further, since the video converter output is not always visible, it's important that any pre-Gnome Desktop displays (GRUB, LUKS passphrase, X-windows login prompt) all be directed exclusively to the real monitor.

The monitor is plugged into the "topmost" DP port (i.e., the one furthest away from the card-edge side of the card), and the video converter is plugged into the "middle" DP port (i.e. the next one down). The remaining DP port and the USB-C port are not connected.

As a further requirement, this configuration must apply transparently, automatically and without effort (not even "one-time" effort), to anyone who logs into this workstation. In other words, it should just work.

I have attempted to use /etc/X11/xorg.conf to accomplish these goals:

Section "ServerLayout" Identifier "Layout0" Screen 0 "Screen0" EndSection Section "Monitor" Identifier "Monitor0" VendorName "HP" ModelName "Z24n G2" Option "DPMS" Option "PreferredMode" "1920x1200" Option "Primary" EndSection Section "Monitor" Identifier "Monitor1" VendorName "VidCon" ModelName "Video Converter" Option "DPMS" Option "PreferredMode" "1280x1024" EndSection Section "Device" Identifier "nvidia0" Driver "nvidia" VendorName "NVIDIA Corporation" Screen 0 EndSection Section "Screen" Identifier "Screen0" Device "nvidia0" Monitor "Monitor0" DefaultDepth 24 Option "MetaModes" "DFP-2: 1920x1200+0+0, DFP-0: 1280x1024+1920+0" EndSection 

(The xrandr -q output lists the real monitor on DP-2, and the video converter on DP-0, which seems backward from the physical ports used. I found I had to use DFP instead of DP in the MetaModes option)

This seems to work, once the user is logged in. However, it's a bit of a crapshoot as to whether the GRUB/LUKS/desktop login prompt will appear on the monitor, or get directed to the video converter.

I also tried the /var/lib/gdm/.config/monitors.xml solution (get it right using the interactive setup, then copy the resulting monitors.xml to the GDM "master" location), but that didn't seem to make any difference.

So, ultimately my question is, where do I need to set things under RHEL to get it to respect and apply the settings?

1 Answer 1

0

Omitted from the above problem statement was an additional constraint that the input to the video conversion hardware needed to be at a 60 Hz refresh rate. By default, the driver was selecting 85 Hz, so that needed to be forced as well.

For my setup, the following xorg.conf seems to have worked:

Section "ServerLayout" Identifier "layout0" Screen 0 "screen0" 0 0 EndSection Section "Monitor" Identifier "monitor0" VendorName "HP" ModelName "Z24n G3" Option "DPMS" Option "Primary" "true" EndSection Section "Monitor" Identifier "monitor1" VendorName "Manufacturer" ModelName "Video Converter" Option "DPMS" Option "Primary" "false" EndSection Section "Device" Identifier "nvidia0" Driver "nvidia" VendorName "NVIDIA Corporation" # Note: PCI bus value in lspci result is in hex, BusID option seems to expect decimal # My lspci showed 5e:0.0 for the video card, corresponding BusID option value is 94:0:0 BusID "PCI:94:0:0" # Note: xrandr -q output showed monitors named DP-0 and DP-2, but nvidia driver seems to want to use # "DFP" instead of "DP", so if identifying monitors and availble modes with xrandr, use DFP. Option "Monitor-DFP-2" "monitor0" Option "Monitor-DFP-0" "monitor1" Option "ConnectedMonitor" "DFP-2, DFP-0" Option "VertRefresh" "DFP-2: 60; DFP-0: 60" Option "MetaModes" "DFP-2: 1920x1200+0+0, DFP-0: 1280x1024+1920+0" EndSection Section "Screen" Identifier "screen0" Device "nvidia0" Monitor "monitor0" DefaultDepth 24 EndSection 

Essentially, this is attempting to eliminate anything left to chance in the video detection/assignment for X. The "Primary" options in the Monitor sections force the DFP-2 monitor (the real LCD screen) to be used as the primary display. The settings in the Device section specifically tie the monitors to the nVidia card, and sets the resolution, refresh rate, and relative positioning of the displays in the extended desktop. The LUKS and GDM login prompts now appear on the correct display (the LCD), the desktop has the desired geometry, and the video converter is getting the correct refresh rate.

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.