System Fails to Wake from Suspend on Nvidia Driver 560.35.03 with Kernel 6.11.5 (Mainline & Zen) - Works on LTS Kernel

Thanks for posting this!

I noticed uninstalling bluez fixes this issue for me. So I created two systemd service units for a workaround fix.

One of them unloads the wireless/bluetooth device’s kernel module before suspend and the other one loads the wireless device’s kernel modules on wake. I’ll post my systemd service files here.

NOTE: make sure to edit out mt7921e with the kernel module your device is using.

create file: /etc/systemd/system/remove-mt7921e-before-suspend.service

[Unit]
Description=Remove mt7921e module before suspend
Before=sleep.target suspend.target

[Service]
Type=oneshot
ExecStart=/usr/bin/modprobe -r mt7921e

[Install]
WantedBy=sleep.target suspend.target
[Unit]
Description=Remove mt7921e module before suspend
Before=sleep.target suspend.target

[Service]
Type=oneshot
ExecStart=/usr/bin/modprobe -r mt7921e

[Install]
WantedBy=sleep.target suspend.target

create file: /etc/systemd/system/add-mt7921e-after-wake.service

[Unit]
Description=Add mt7921e module after waking up
After=suspend.target sleep.target

[Service]
Type=oneshot
ExecStart=/usr/bin/modprobe mt7921e

[Install]
WantedBy=suspend.target sleep.target

make sure to do a sudo systemctl daemon-reload and then enable the services by running:
sudo systemctl enable remove-mt7921e-before-suspend.service
sudo systemctl enable add-mt7921e-after-wake.service

I hope this fixes the issues for you as well. I have reached out to my motherboard manufacturer (ASRock X670E Pro RS) reporting this BUG related to the onboard wireless device (MediaTek 7921e) hoping they’ll push out updates to fix this.

PS: I still have some issues with my RTX 3080ti on Hyprland (wayland) but they are unrelated to this issue now.