I plugged a monitor in and found that although it works and can be enabled with nvidia-settings
, that the /sys/class/drm/card0-DP-1/device/card0-DP-1
directory wasn’t correctly populated, for example /sys/class/drm/card0-DP-1/device/card0-DP-1/edid
is empty.
This causes software that uses the drm hierarchy, such as libddcutil 2.1.5, to fail.
I can fix this by a reboot, after which the drm entries are correct, but I don’t think I should have to reboot to bring a monitor fully online.
- Do I need to run or configure something other than nvidia-settings?
- Is this a problem with this particular driver?
I’m using the OpenSUSE Tumbleweed nvidia-repo drivers.
Graphics:
Device-1: NVIDIA TU116 [GeForce GTX 1650 SUPER] driver: nvidia v: 550.54.14
Display: x11 server: X.Org v: 21.1.11 with: Xwayland v: 23.2.4 driver: X:
loaded: nvidia gpu: nvidia,nvidia-nvswitch resolution: 1: 3360x2100~60Hz
2: 3840x2160~60Hz
API: EGL v: 1.5 drivers: nvidia,swrast
platforms: gbm,x11,surfaceless,device
API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: nvidia mesa v: 550.54.14
renderer: NVIDIA GeForce GTX 1650 SUPER/PCIe/SSE2
API: Vulkan v: 1.3.275 drivers: N/A surfaces: xcb,xlib
CPU: 6-core AMD Ryzen 5 5600 (-MT MCP-) speed/min/max: 2261/2200/4467 MHz
Kernel: 6.7.2-1-default x86_64 Up: 1h 28m Mem: 11/31.22 GiB (35.2%)
Storage: 9.57 TiB (18.8% used) Procs: 384 Shell: Zsh inxi: 3.3.33
In the following output from ddcutil, it fails to list a DRM connector for Display 1 which is the hotplugged monitor:
% ddcutil detect
Display 1
I2C bus: /dev/i2c-0
EDID synopsis:
Mfg id: HWP - Hewlett Packard
Model: HP ZR24w
Product code: 10345 (0x2869)
Serial number: CNT0080000
Binary serial number: 16843009 (0x01010101)
Manufacture year: 2010, Week: 8
VCP version: 2.2
Display 2
I2C bus: /dev/i2c-3
DRM connector: card0-DP-3
EDID synopsis:
Mfg id: GSM - Goldstar Company Ltd (LG)
Model: LG HDR 4K
Product code: 30471 (0x7707)
Serial number:
Binary serial number: 86000 (0x00000000)
Manufacture year: 2019, Week: 4
VCP version: 2.1