New Linux Change Helps Ensure AMD Ryzen With NVMe Works After Resuming From Suspend

Written by Michael Larabel in AMD on 15 June 2024 at 09:50 AM EDT. 16 Comments
AMD
A Linux power management change merged on Friday aims to help ensure AMD Ryzen systems with NVMe solid-state drive storage will work properly when resuming from suspend.

Merged ahead of the Linux 6.10-rc4 kernel release tomorrow is a patch to help ensure more AMD Ryzen laptops/desktops put their NVMe storage devices into D3 mode at suspend time so that they will come back up properly on resume. The past year or two AMD has been dealing with power management quirks with some AMD Ryzen laptops losing NVMe on resume from s2idle suspend among other s2idle quirks/bugs under Linux.

Modern AMD systems require that the NVMe controller is put into D3 over a modern standby / suspend-to-idle cycle but some system firmware/BIOS aren't properly handling things. So the Linux ACPI code had been checking for AMD CPU IDs and forcing it for Picasso / Renoir / Lucienne / Cezanne platforms. But rather than limiting this behavior to specific CPU IDs, to make it more future-proof and robust the change ahead of Linux 6.10-rc4 is forcing the storage D3 functionality for AMD Zen CPUs where low-power idle support is also detected.

AMD Ryzen laptop with NVMe


AMD Linux engineer Mario Limonciello explained in the patch:
"A Rembrandt-based HP thin client is reported to have problems where the NVME disk isn't present after resume from s2idle.

This is because the NVME disk wasn't put into D3 at suspend, and that happened because the StorageD3Enable _DSD was missing in the BIOS.

As AMD's architecture requires that the NVME is in D3 for s2idle, adjust the criteria for force_storage_d3 to match *all* Zen SoCs when the FADT advertises low power idle support.

This will ensure that any future products with this BIOS deficiency don't need to be added to the allow list of overrides."

That change was merged on Friday as part of the ACPI material for Linux 6.10-rc4. This will be found in Sunday's Linux 6.10-rc4 release while it's also marked for back-porting and thus will appear in the stable Linux kernel series over the coming days.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week