ddcutil
ddcutil copied to clipboard
Monitor not getting detected on suspend but is on resume
I'm trying to use ddcutil on a suspend script for systemd, as I did in other computers before, but the monitor is not getting detected when the computer is suspending, although it is when it resumes.
This is the script I'm running:
#!/bin/sh
if [ "${1}" == "pre" ]; then
ddcutil detect
ddcutil environment
ddcutil interrogate --verbose
ddcutil setvcp D6 05 --bus 11 --disable-capabilities-cache --disable-dynamic-sleep
elif [ "${1}" == "post" ]; then
ddcutil setvcp D6 01 --bus 11 --disable-capabilities-cache --disable-dynamic-sleep
fi
And this is the output of journalctl -b -u systemd-suspend.service
Dec 27 17:08:46 sleipnir systemd-sleep[46699]: User sessions remain unfrozen on explicit request ($SYSTEMD_SLEEP_FREEZE_USER_SESSIONS=0).
Dec 27 17:08:46 sleipnir systemd-sleep[46699]: This is not recommended, and might result in unexpected behavior, particularly
Dec 27 17:08:46 sleipnir systemd-sleep[46699]: in suspend-then-hibernate operations or setups with encrypted home directories.
Dec 27 17:08:50 sleipnir systemd-sleep[46705]: Unable to determine dynamic sleep cache file name
Dec 27 17:08:50 sleipnir ddcutil[46705]: Unable to determine dynamic sleep cache file name
Dec 27 17:08:50 sleipnir systemd-sleep[46705]: Unable to determine dynamic sleep stats file name
Dec 27 17:08:50 sleipnir systemd-sleep[46705]: No displays found.
Dec 27 17:08:50 sleipnir systemd-sleep[46705]: Run "ddcutil environment" to check for system configuration problems.
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Unable to determine dynamic sleep stats file name
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: The following tests probe the runtime environment using multiple overlapping methods.
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: *** Basic System Information ***
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: ddcutil version: 2.1.4
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: /proc/version:
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Linux version 6.12.6-arch1-1 (linux@archlinux) (gcc (GCC) 14.2.1 20240910, GNU ld (GNU Binutils) 2.43.0) #1 SMP PREEMPT_DYNAMIC Thu, 19 Dec 2024 21:29:01 +0000
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Architecture: x86_64
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Distributor id: Arch
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Release: rolling
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Found a known architecture
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: /proc/cmdline:
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: initrd=\initramfs-linux.img root=UUID="7549799f-7fdf-4c4f-a8fa-9d51900a643f" rw quiet loglevel=0 vt.globa_sursor_default=0
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: *** Primary Check 1: Identify video card and driver ***
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Obtaining card and driver information from /sys...
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Primary video controller at PCI address 0000:0c:00.0 (boot_vga flag is not set)
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Device class: x030000 VGA compatible controller
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Vendor: x1002 Advanced Micro Devices, Inc. [AMD/ATI]
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Device: x13c0 Granite Ridge [Radeon Graphics]
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Subvendor/Subdevice: 1043/8877 ASUSTeK Computer Inc.
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Driver name: amdgpu
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Driver version: Unable to determine
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: I2C device: i2c-1 name: AMDGPU DM i2c hw bus 0
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: I2C device: i2c-2 name: AMDGPU DM i2c hw bus 1
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Primary video controller at PCI address 0000:01:00.0 (boot_vga flag is set)
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Device class: x030000 VGA compatible controller
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Vendor: x10de NVIDIA Corporation
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Device: x1f08 TU106 [GeForce RTX 2060 Rev. A]
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Subvendor/Subdevice: 10de/12fd NVIDIA Corporation
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Driver name: nvidia
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Driver version: 565.77
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: I2C device: i2c-10 name: NVIDIA i2c adapter 4 at 1:00.0
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: I2C device: i2c-8 name: NVIDIA i2c adapter 1 at 1:00.0
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: I2C device: i2c-11 name: NVIDIA i2c adapter 5 at 1:00.0
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: I2C device: i2c-9 name: NVIDIA i2c adapter 3 at 1:00.0
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: I2C device: i2c-12 name: NVIDIA i2c adapter 6 at 1:00.0
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: *** Primary Check 2: Check that /dev/i2c-* exist and writable ***
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Current user: root (0)
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Checking /dev/i2c-* devices...
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Devices /dev/i2c-* must exist and the logged on user must have read/write permission for those devices (or at least those devices associated
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: with monitors).
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Typically, this access is enabled by:
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: - setting the group for /dev/i2c-* to i2c
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: - setting group RW permissions for /dev/i2c-*
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: - making the current user a member of group i2c
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Alternatively, this can be enabled by just giving everyone RW permission
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: The following tests probe for these conditions.
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Checking for /dev/i2c-* devices...
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 0 Dec 27 16:39 /dev/i2c-0
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 1 Dec 27 16:39 /dev/i2c-1
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 10 Dec 27 16:39 /dev/i2c-10
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 11 Dec 27 16:39 /dev/i2c-11
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 12 Dec 27 16:39 /dev/i2c-12
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 2 Dec 27 16:39 /dev/i2c-2
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 3 Dec 27 16:39 /dev/i2c-3
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 4 Dec 27 16:39 /dev/i2c-4
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 5 Dec 27 16:39 /dev/i2c-5
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 6 Dec 27 16:39 /dev/i2c-6
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 7 Dec 27 16:39 /dev/i2c-7
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 8 Dec 27 16:39 /dev/i2c-8
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: crw-rw----+ 1 root i2c 89, 9 Dec 27 16:39 /dev/i2c-9
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Current user (root) has RW access to all /dev/i2c-* devices.
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: *** Primary Check 3: Check that module i2c_dev is loaded ***
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Checking for driver i2c_dev...
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: sysfs reports module i2c_dev is loaded.
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Module i2c_dev is NOT built into the kernel
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Loadable i2c-dev module found
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Module i2c_dev is loaded
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: *** Primary Check 4: Driver specific checks ***
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Performing driver specific checks...
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Checking for special settings for proprietary Nvidia driver
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: (Needed for some newer Nvidia cards).
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: grep: /etc/X11/xorg.conf: No such file or directory
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: grep: /etc/X11/xorg.conf.d/*: No such file or directory
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: Executing: grep -iH nvidia modprobe.conf modprobe.d/*
Dec 27 17:08:54 sleipnir systemd-sleep[46739]: grep: modprobe.conf: No such file or directory
Dec 27 17:10:16 sleipnir systemd-sleep[46699]: Performing sleep operation 'suspend'...
Dec 27 17:10:24 sleipnir systemd-sleep[46699]: System returned from sleep operation 'suspend'.
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: grep: Unable to determine dynamic sleep cache file name
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: modprobe.d/*: No such file or directory
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: Executing: grep RegistryDwords /proc/driver/nvidia/params
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: RegistryDwords: "RMUseSwI2c=0x01;RMI2cSpeed=100"
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: RegistryDwordsPerDevice: ""
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: *** Additional probes ***
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: Examining /sys/bus/i2c/devices...
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-0/name: Synopsys DesignWare I2C adapter
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-1/name: AMDGPU DM i2c hw bus 0
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-2/name: AMDGPU DM i2c hw bus 1
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-3/name: AMDGPU DM aux hw bus 1
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-4/name: SMBus PIIX4 adapter port 0 at 0b00
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-5/name: NVIDIA GPU I2C adapter
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-6/name: SMBus PIIX4 adapter port 2 at 0b00
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-7/name: SMBus PIIX4 adapter port 1 at 0b20
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/5-0008/name: ccgx-ucsi
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-8/name: NVIDIA i2c adapter 1 at 1:00.0
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-9/name: NVIDIA i2c adapter 3 at 1:00.0
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-10/name: NVIDIA i2c adapter 4 at 1:00.0
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-11/name: NVIDIA i2c adapter 5 at 1:00.0
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/i2c-12/name: NVIDIA i2c adapter 6 at 1:00.0
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/4-0051/name: spd5118
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c/devices/4-0053/name: spd5118
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: Env_Accumulator:
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: architecture: x86_64
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: distributor_id Arch
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: Drivers detected: nvidia, amdgpu
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /dev/i2c device numbers: 0 1 2 3 4 5 6 7 8 9 10 11 12
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: sysfs_i2c_devices_exist: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: /sys/bus/i2c device numbers: 0 1 2 3 4 5 6 7 8 9 10 11 12
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: dev_i2c_devices_required: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: module_i2c_dev_needed: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: module_i2c_dev_builtin: false
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: loadable_i2c_dev_exists: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: i2c_dev_loaded_or_builtin: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: group_i2c_checked: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: group_i2c_exists: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: dev_i2c_common_group_name: i2c
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: all_dev_i2c_has_group_i2c: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: any_dev_i2c_has_group_i2c: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: all_dev_i2c_is_group_rw: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: any_dev_i2c_is_group_rw: true
Dec 27 17:10:25 sleipnir ddcutil[46739]: Unable to determine dynamic sleep cache file name
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: cur_uname: root
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: cur_uid: 0
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: cur_user_in_group_i2c: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: cur_user_any_devi2c_rw: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: cur_user_all_devi2c_rw: true
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: Configuration suggestions:
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: Current user has RW access to all /dev/i2c-N devices.
Dec 27 17:10:25 sleipnir systemd-sleep[46739]: Skipping further group and permission checks.
Dec 27 17:10:25 sleipnir ddcutil[46880]: dh=Display_Handle[i2c-11: fd=3], Keeping adjusted sleep multiplier 1.00 for SE_POST_WRITE or SE_POST_SAVE_SETTINGS
Dec 27 17:10:26 sleipnir systemd[1]: systemd-suspend.service: Deactivated successfully.
Dec 27 17:10:26 sleipnir systemd[1]: Finished System Suspend.
Dec 27 17:10:26 sleipnir systemd[1]: systemd-suspend.service: Consumed 1min 25.437s CPU time, 33.3M memory peak.
The command works fine executing it normally both as my user and as root.