Ryzen 5500U and Runtime D3 issue

Hi. Last few days I’m trying to enable auto suspend for my 1650 card when it’s not in use.
I carefully followed this manual PRIME - ArchWiki.

In the end I always get ‘Not supported’:

cat /proc/driver/nvidia/gpus/0000:01:00.0/power
Runtime D3 status:          Not supported
Video Memory:               Active

GPU Hardware Support:
 Video Memory Self Refresh: Not Supported
 Video Memory Off:          Supported

And always 0 as a result of:

cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time

Some info:

OS: Arch Linux x86_64 
Host: Aspire A715-42G V1.10 
Kernel: 6.7.9-arch1-1 
Uptime: 18 mins 
Packages: 982 (pacman) 
Shell: zsh 5.9 
Resolution: 2560x1440 
DE: Plasma 6.0.2 
WM: kwin 
Theme: Breeze-Dark [GTK2], Breeze [GTK3] 
Icons: breeze-dark [GTK2/3] 
Terminal: konsole 
CPU: AMD Ryzen 5 5500U with Radeon Graphics (12) @ 4.056GHz 
GPU: NVIDIA GeForce GTX 1650 Mobile / Max-Q 
GPU: AMD ATI 05:00.0 Lucienne 
Memory: 4828MiB / 15324MiB 
echo "$XDG_SESSION_TYPE"           
wayland

systool -vm nvidia
Module = "nvidia"

  Attributes:
    coresize            = "10022912"
    initsize            = "0"
    initstate           = "live"
    refcnt              = "33"
    srcversion          = "BABF5253924D36C48E7D170"
    taint               = "OE"
    uevent              = <store method only>
    version             = "550.54.14"

  Sections:

journalctl -b | grep -i nvidia 
Mar 26 13:41:00 arch kernel: Command line: BOOT_IMAGE=/vmlinuz-linux root=/dev/mapper/volgroup0-lv_root rw loglevel=3 cryptdevice=/dev/nvme0n1p3:volgroup0 quiet nvidia_drm.modeset=1 nvidia_drm.fbdev=1 nvidia.NVreg_DynamicPowerManagement=0x02
Mar 26 13:41:00 arch kernel: Kernel command line: BOOT_IMAGE=/vmlinuz-linux root=/dev/mapper/volgroup0-lv_root rw loglevel=3 cryptdevice=/dev/nvme0n1p3:volgroup0 quiet nvidia_drm.modeset=1 nvidia_drm.fbdev=1 nvidia.NVreg_DynamicPowerManagement=0x02
Mar 26 13:41:00 arch kernel: nvidia: loading out-of-tree module taints kernel.
Mar 26 13:41:00 arch kernel: nvidia: module verification failed: signature and/or required key missing - tainting kernel
Mar 26 13:41:00 arch kernel: nvidia-nvlink: Nvlink Core is being initialized, major device number 242
Mar 26 13:41:00 arch kernel: nvidia 0000:01:00.0: enabling device (0000 -> 0003)
Mar 26 13:41:00 arch kernel: NVRM: loading NVIDIA UNIX Open Kernel Module for x86_64  550.54.14  Release Build  (archlinux-builder@)  
Mar 26 13:41:00 arch kernel: nvidia-modeset: Loading NVIDIA UNIX Open Kernel Mode Setting Driver for x86_64  550.54.14  Release Build  (archlinux-builder@)  
Mar 26 13:41:00 arch kernel: [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
Mar 26 13:41:00 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)
Mar 26 13:41:00 arch kernel: [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 0
Mar 26 13:41:00 arch kernel: nvidia 0000:01:00.0: [drm] No compatible format found
Mar 26 13:41:00 arch kernel: nvidia 0000:01:00.0: [drm] Cannot find any crtc or sizes
Mar 26 13:41:00 arch systemd-modules-load[667]: Inserted module 'nvidia_uvm'
Mar 26 13:41:00 arch kernel: nvidia-uvm: Loaded the UVM driver, major device number 234.
Mar 26 13:41:02 arch systemd[1]: Starting NVIDIA Persistence Daemon...
Mar 26 13:41:02 arch nvidia-persistenced[1028]: Started (1028)
Mar 26 13:41:02 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)
Mar 26 13:41:02 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)
Mar 26 13:41:02 arch systemd[1]: Started NVIDIA Persistence Daemon.
Mar 26 13:41:03 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)
Mar 26 13:41:04 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)
Mar 26 13:41:19 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)
Mar 26 13:52:59 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)

nvidia-powerd disabled
nvidia-persistenced.service enabled

This post sounds like my CPU should support RD3. Nvidia D3 Runtime power management only works on Window - #3 by generix

In this regard Id like to ask a few questions:

  1. Can you please confirm that my 5500U is supported? If not, should I wait the next version of driver?
  2. Can you please provide a full list with all supported CPUs and make it public? It can save a ton of time for people.
  3. Maybe I missed something?

thanks in advance

nvidia-bug-report.log.gz (293.7 KB)

You’re running the nvidia-open driver, another user found out there’s an issue with the nvidia firmware and runtime-pm. Please switch to the closed driver and make sure the gsp firmware is disabled.

removed nvidia-open. Installed nvidia. Disabled gsp by adding to /etc/modprobe.d/nvidia-gsp.conf
options nvidia NVreg_EnableGpuFirmware=0

Now I see:

cat /proc/driver/nvidia/gpus/0000:01:00.0/power                   
Runtime D3 status:          Enabled (fine-grained)
Video Memory:               Active

GPU Hardware Support:
 Video Memory Self Refresh: Supported
 Video Memory Off:          Supported

But this is still 0.

cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
0

nvidia-bug-report.log.gz (292.2 KB)

/sys/bus/pci/devices/0000:01:00.0/power/control is set to on, needs to be auto.

How can I do it?
I did this:

/etc/udev/rules.d/80-nvidia-pm.rules
# Enable runtime PM for NVIDIA VGA/3D controller devices on driver bind
ACTION=="bind", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x030000", TEST=="power/control", ATTR{power/control}="auto"
ACTION=="bind", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x030200", TEST=="power/control", ATTR{power/control}="auto"

# Disable runtime PM for NVIDIA VGA/3D controller devices on driver unbind
ACTION=="unbind", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x030000", TEST=="power/control", ATTR{power/control}="on"
ACTION=="unbind", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x030200", TEST=="power/control", ATTR{power/control}="on"

This:

/etc/modprobe.d/nvidia-pm.conf

options nvidia "NVreg_DynamicPowerManagement=0x02"

and this
sudo udevadm control --reload-rules && sudo udevadm trigger

After reboot still shows ‘on’

Those rules should do the job, if loaded at the correct time. Did you rebuild the initrd after creating them? Since the nvidia driver is loaded from the initrd, the udev rules have to be there as well.

this is how my rule looks like

# Remove NVIDIA USB xHCI Host Controller devices, if present
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x0c0330", ATTR{remove}="1"

# Remove NVIDIA USB Type-C UCSI devices, if present
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x0c8000", ATTR{remove}="1"

# Remove NVIDIA Audio devices, if present
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x040300", ATTR{remove}="1"

# Enable runtime PM for NVIDIA VGA/3D controller devices on driver bind
ACTION=="bind", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x030000", TEST=="power/control", ATTR{power/control}="auto"
ACTION=="bind", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x030200", TEST=="power/control", ATTR{power/control}="auto"

# Disable runtime PM for NVIDIA VGA/3D controller devices on driver unbind
ACTION=="unbind", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x030000", TEST=="power/control", ATTR{power/control}="on"
ACTION=="unbind", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x030200", TEST=="power/control", ATTR{power/control}="on"
sudo udevadm control --reload-rules && sudo udevadm trigger
sudo mkinitcpio -p linux

I upgraded packages, now it:

pacman -Q | grep nvidia                                                           
lib32-nvidia-utils 550.67-1
nvidia 550.67-1
nvidia-settings 550.67-1
nvidia-utils 550.67-1
sudo journalctl -b | grep nvidia
[sudo] password for poznianski: 
Mar 27 20:28:31 arch kernel: Command line: BOOT_IMAGE=/vmlinuz-linux root=/dev/mapper/volgroup0-lv_root rw loglevel=3 cryptdevice=/dev/nvme0n1p3:volgroup0 quiet nvidia_drm.modeset=1 nvidia_drm.fbdev=1 nvidia.NVreg_DynamicPowerManagement=0x02
Mar 27 20:28:31 arch kernel: Kernel command line: BOOT_IMAGE=/vmlinuz-linux root=/dev/mapper/volgroup0-lv_root rw loglevel=3 cryptdevice=/dev/nvme0n1p3:volgroup0 quiet nvidia_drm.modeset=1 nvidia_drm.fbdev=1 nvidia.NVreg_DynamicPowerManagement=0x02
Mar 27 20:28:32 arch kernel: nvidia: loading out-of-tree module taints kernel.
Mar 27 20:28:32 arch kernel: nvidia: module license 'NVIDIA' taints kernel.
Mar 27 20:28:32 arch kernel: nvidia: module verification failed: signature and/or required key missing - tainting kernel
Mar 27 20:28:32 arch kernel: nvidia: module license taints kernel.
Mar 27 20:28:32 arch kernel: nvidia-nvlink: Nvlink Core is being initialized, major device number 236
Mar 27 20:28:32 arch kernel: nvidia 0000:01:00.0: enabling device (0000 -> 0003)
Mar 27 20:28:32 arch kernel: nvidia_uvm: module uses symbols nvUvmInterfaceDisableAccessCntr from proprietary module nvidia, inheriting taint.
Mar 27 20:28:32 arch kernel: nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  550.67  Tue Mar 12 23:29:25 UTC 2024
Mar 27 20:28:32 arch kernel: [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
Mar 27 20:28:33 arch systemd-modules-load[491]: Inserted module 'nvidia_uvm'
Mar 27 20:28:33 arch kernel: nvidia-uvm: Loaded the UVM driver, major device number 511.
Mar 27 20:28:33 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)
Mar 27 20:28:33 arch kernel: [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 1
Mar 27 20:28:33 arch kernel: nvidia 0000:01:00.0: [drm] No compatible format found
Mar 27 20:28:33 arch kernel: nvidia 0000:01:00.0: [drm] Cannot find any crtc or sizes
Mar 27 20:28:33 arch nvidia-persistenced[954]: Started (954)
Mar 27 20:28:33 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)
Mar 27 20:28:33 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)
Mar 27 20:28:35 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)
Mar 27 20:28:36 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)
Mar 27 20:28:54 arch kernel: nvidia-modeset: WARNING: GPU:0: Correcting number of heads for current head configuration (0x00)
Mar 27 20:30:06 arch sudo[4515]: poznianski : 1 incorrect password attempt ; TTY=pts/2 ; PWD=/home/poznianski ; USER=root ; COMMAND=/usr/bin/pacman -S nvidia-utils
sudo udevadm test /sys/bus/pci/devices/0000:01:00.0
[sudo] password for poznianski: 
This program is for debugging only, it does not run any program
specified by a RUN key. It may show incorrect results, because
some values may be different, or not available at a simulation run.

Trying to open "/etc/systemd/hwdb/hwdb.bin"...
Trying to open "/etc/udev/hwdb.bin"...
Trying to open "/usr/lib/systemd/hwdb/hwdb.bin"...
Trying to open "/usr/lib/udev/hwdb.bin"...
=== trie on-disk ===
tool version:          255
file size:        12553028 bytes
header size             80 bytes
strings            2586460 bytes
nodes              9966488 bytes
Loading kernel module index.
Found cgroup2 on /sys/fs/cgroup/, full unified hierarchy
Found container virtualization none.
Using default interface naming scheme 'v255'.
Parsed configuration file "/usr/lib/systemd/network/99-default.link"
Created link configuration context.
Skipping overridden file '/usr/lib/udev/rules.d/80-nvidia-pm.rules'.
Reading rules file: /usr/lib/udev/rules.d/01-md-raid-creating.rules
Reading rules file: /usr/lib/udev/rules.d/10-dm.rules
Reading rules file: /usr/lib/udev/rules.d/11-dm-lvm.rules
Reading rules file: /usr/lib/udev/rules.d/13-dm-disk.rules
Reading rules file: /usr/lib/udev/rules.d/39-usbmuxd.rules
Reading rules file: /usr/lib/udev/rules.d/40-usb-media-players.rules
Reading rules file: /usr/lib/udev/rules.d/45-i2c-tools.rules
Reading rules file: /usr/lib/udev/rules.d/50-udev-default.rules
Reading rules file: /usr/lib/udev/rules.d/60-autosuspend.rules
Reading rules file: /usr/lib/udev/rules.d/60-block.rules
Reading rules file: /usr/lib/udev/rules.d/60-cdrom_id.rules
Reading rules file: /usr/lib/udev/rules.d/60-ddcutil-i2c.rules
Reading rules file: /usr/lib/udev/rules.d/60-ddcutil-usb.rules
Reading rules file: /usr/lib/udev/rules.d/60-dmi-id.rules
Reading rules file: /usr/lib/udev/rules.d/60-drm.rules
Reading rules file: /usr/lib/udev/rules.d/60-evdev.rules
Reading rules file: /usr/lib/udev/rules.d/60-fido-id.rules
Reading rules file: /usr/lib/udev/rules.d/60-infiniband.rules
Reading rules file: /usr/lib/udev/rules.d/60-input-id.rules
Reading rules file: /usr/lib/udev/rules.d/60-nvidia.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-alsa.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-input.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-storage-mtd.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-storage-tape.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-storage.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-v4l.rules
Reading rules file: /usr/lib/udev/rules.d/60-rfkill.rules
Reading rules file: /usr/lib/udev/rules.d/60-sensor.rules
Reading rules file: /usr/lib/udev/rules.d/60-serial.rules
Reading rules file: /usr/lib/udev/rules.d/60-tpm-udev.rules
Reading rules file: /usr/lib/udev/rules.d/63-md-raid-arrays.rules
Reading rules file: /usr/lib/udev/rules.d/64-btrfs.rules
Reading rules file: /usr/lib/udev/rules.d/64-md-raid-assembly.rules
Reading rules file: /usr/lib/udev/rules.d/65-libwacom.rules
Reading rules file: /usr/lib/udev/rules.d/69-dm-lvm.rules
Reading rules file: /usr/lib/udev/rules.d/69-libftdi.rules
Reading rules file: /usr/lib/udev/rules.d/69-libmtp.rules
Reading rules file: /usr/lib/udev/rules.d/69-md-clustered-confirm-device.rules
Reading rules file: /usr/lib/udev/rules.d/70-camera.rules
Reading rules file: /usr/lib/udev/rules.d/70-infrared.rules
Reading rules file: /usr/lib/udev/rules.d/70-joystick.rules
Reading rules file: /usr/lib/udev/rules.d/70-memory.rules
Reading rules file: /usr/lib/udev/rules.d/70-mouse.rules
Reading rules file: /usr/lib/udev/rules.d/70-power-switch.rules
Reading rules file: /usr/lib/udev/rules.d/70-steam-input.rules
Reading rules file: /usr/lib/udev/rules.d/70-steam-vr.rules
Reading rules file: /usr/lib/udev/rules.d/70-touchpad.rules
Reading rules file: /usr/lib/udev/rules.d/70-uaccess.rules
Reading rules file: /usr/lib/udev/rules.d/71-seat.rules
Reading rules file: /usr/lib/udev/rules.d/73-seat-late.rules
Reading rules file: /usr/lib/udev/rules.d/75-net-description.rules
Reading rules file: /usr/lib/udev/rules.d/75-probe_mtd.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-broadmobi-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-cinterion-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-dell-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-dlink-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-ericsson-mbm.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-fibocom-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-foxconn-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-gosuncn-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-haier-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-huawei-net-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-linktop-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-longcheer-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-mtk-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-nokia-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-qcom-soc.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-quectel-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-sierra.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-simtech-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-telit-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-tplink-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-ublox-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-x22x-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/77-mm-zte-port-types.rules
Reading rules file: /usr/lib/udev/rules.d/78-sound-card.rules
Reading rules file: /usr/lib/udev/rules.d/80-drivers.rules
Reading rules file: /usr/lib/udev/rules.d/80-libinput-device-groups.rules
Reading rules file: /usr/lib/udev/rules.d/80-mm-candidate.rules
Reading rules file: /usr/lib/udev/rules.d/80-net-setup-link.rules
Reading rules file: /etc/udev/rules.d/80-nvidia-pm.rules
Reading rules file: /usr/lib/udev/rules.d/80-udisks2.rules
Reading rules file: /usr/lib/udev/rules.d/81-net-dhcp.rules
Reading rules file: /usr/lib/udev/rules.d/84-nm-drivers.rules
Reading rules file: /usr/lib/udev/rules.d/85-nm-unmanaged.rules
Reading rules file: /usr/lib/udev/rules.d/85-tlp.rules
Reading rules file: /usr/lib/udev/rules.d/90-bolt.rules
Reading rules file: /usr/lib/udev/rules.d/90-iocost.rules
Reading rules file: /usr/lib/udev/rules.d/90-libinput-fuzz-override.rules
Reading rules file: /usr/lib/udev/rules.d/90-nm-thunderbolt.rules
Reading rules file: /usr/lib/udev/rules.d/90-pipewire-alsa.rules
Reading rules file: /usr/lib/udev/rules.d/90-vconsole.rules
Reading rules file: /usr/lib/udev/rules.d/95-dm-notify.rules
Reading rules file: /usr/lib/udev/rules.d/95-upower-hid.rules
Reading rules file: /usr/lib/udev/rules.d/95-upower-wup.rules
Reading rules file: /usr/lib/udev/rules.d/96-e2scrub.rules
Reading rules file: /usr/lib/udev/rules.d/99-fuse.rules
Reading rules file: /usr/lib/udev/rules.d/99-fuse3.rules
Reading rules file: /usr/lib/udev/rules.d/99-systemd.rules
Reading rules file: /usr/lib/udev/rules.d/wacom.rules
0000:01:00.0: /usr/lib/udev/rules.d/50-udev-default.rules:20 Importing properties from results of builtin command 'hwdb --subsystem=pci'
0000:01:00.0: hwdb modalias key: "pci:v000010DEd00001F9Dsv00001025sd00001524bc03sc02i00"
0000:01:00.0: /usr/lib/udev/rules.d/50-udev-default.rules:29 Importing properties from results of builtin command 'path_id'
0000:01:00.0: /usr/lib/udev/rules.d/80-drivers.rules:5 RUN 'kmod load'
0000:01:00.0: sd-device: Created db file '/run/udev/data/+pci:0000:01:00.0' for '/devices/pci0000:00/0000:00:01.1/0000:01:00.0'
DEVPATH=/devices/pci0000:00/0000:00:01.1/0000:01:00.0
DRIVER=nvidia
PCI_CLASS=30200
PCI_ID=10DE:1F9D
PCI_SUBSYS_ID=1025:1524
PCI_SLOT_NAME=0000:01:00.0
MODALIAS=pci:v000010DEd00001F9Dsv00001025sd00001524bc03sc02i00
ACTION=add
SUBSYSTEM=pci
ID_PCI_CLASS_FROM_DATABASE=Display controller
ID_PCI_SUBCLASS_FROM_DATABASE=3D controller
ID_VENDOR_FROM_DATABASE=NVIDIA Corporation
ID_MODEL_FROM_DATABASE=TU117M [GeForce GTX 1650 Mobile / Max-Q]
ID_PATH=pci-0000:01:00.0
ID_PATH_TAG=pci-0000_01_00_0
USEC_INITIALIZED=17275460
run: 'kmod load'
Unload kernel module index.
Unloaded link configuration context.

But anyway after reboot I see:

cat /sys/bus/pci/devices/0000:01:00.0/power/control
on

nvidia-bug-report.log.gz (293.2 KB)

Do you have anything like that installed?
https://forums.developer.nvidia.com/t/optimus-laptop-dynamic-power-management-working-in-debian-12-not-in-linux-mint/287432/3?u=generix

1 Like

Yes, you are right. After removing tlp I managed to achieve ‘auto’.

But, this is still:

cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
0

nvidia-bug-report.log.gz (302.1 KB)

I also remembered that I have powertop installed. Just to be sure I removed it also.

cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
626783
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
626783
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/control
auto
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
626783
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
626783
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
626783
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_status
active
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
626783

As you can see now I see numbers instead of 0. But wiki says that numbers should be different every time I run this command. My sensors shows NVIDIA card have now 40 °C temperature in the default browsing which means its working.

Do I need to install some drivers for integrated Ryzen 5500U video?
nvidia-bug-report.log.gz (299.6 KB)

Any gpu monitoring plugins that keep the gpu alive?

No. Only nvidia-smi which is part of extra/nvidia-utils. Can you provide an examples of such?

I found also these, but seems like they are necessary for KDE Plasma.

pacman -Q | grep power                                            
powerdevil 6.0.2-3
upower 1.90.2-1

Where did you see this?

Well, you hit again.
I have a widget for KDE Plasma named Thermal Monitor.
image

I removed sensor watching for GPU and finally achieved this:

cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
38510
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
40361
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
41824
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
44301
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
46484
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
48058
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
48925
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
50331
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
51635
 ~  cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
211447

If I turn on this sensor the suspend time freezes again.
So, we now can be sure it’s working and Ryzen 5500U is well-supported?
With that being said, what is the ‘right’ way for me to monitor temperature then?

Not doing it at all as it needs to wake up the gpu. You could do this while gaming, e.g. using mangohud. Anything else is rather pointless.

1 Like

Got it. Thanks for you help and new knowledge. Have a good day!