@Matt_Hartley May have found the culprit. Suspend becomes unreliable when the laptop is disconnected from power and “PCIE Dynamic Link Power Management” is enabled within BIOS.
The following seems to reproduce the hard lockup (and the wake-to-reboot observed by jonp) on my machine when using Fedora 38 + latest updates.
(1) Ensure “PCIE Dynamic Link Power Management” is enabled within the BIOS Setup Utility.
(2) Turn off laptop.
(3) Plug in power.
(4) Turn on laptop.
(5) Log in to desktop.
(6) Suspend from the Gnome power off menu.
(7) Disconnect power.
(8) Attempt to wake by pressing the power button; at this stage the laptop either reboots or refuses to wake up.
Suspend seems to work if “PCIE Dynamic Link Power Management” is disabled.
The BIOS setup utility gives the following info:
“Reduce PCIE bus speed to gen 3 when running on battery. AMD PSPP.”
With this setting disabled, suspend appears to work, but the battery still seems to drain at a noticeable rate (around 3 percentage points per hour or so).
(For posterity, this is how to disable PCIE power management. Reboot laptop and repeatedly press F2 until the BIOS menu comes up. Select “Setup Utility”. Go to Advanced settings. Disable “PCIE Dynamic Link Power Management”. Press F10 to save settings and exit.)
@jonp @mailtodevnull Can you try reproducing the above workaround?