AMD S2idle Support For Linux Getting Squared Away

Written by Michael Larabel in AMD on 23 December 2020 at 06:51 AM EST. 15 Comments
AMD
Just in time for the upcoming AMD Ryzen 5000 series mobile processors, it's looking like the S2idle support is finally coming together on Linux for increased power savings.

As previously covered, Linux 5.11 picked up an AMD SoC PMC driver that is responsible for handling S2idle transactions driven by the platform firmware on the SMU. Sent in on Tuesday as part of a secondary set of ACPI changes for Linux 5.11 is more AMD S2idle enablement work.

This latest code is about providing initial support for S2idle (suspend to idle S0ix) while largely relying upon the existing kernel code written by Intel. The bit needed wrangling with this code was the BIOS implementation for ACPI methods like _DSM (device specific methods) not being standardized and thus needing vendor-specific handling. So with this code now in the kernel as of yesterday, the Linux S2idle code can correctly use the proper _DSM methods on Linux.
Initial support for S2Idle based on the Intel implementation does not work for AMD as the BIOS implementation for ACPI methods like the _DSM are not standardized.

So, the way in which the UUID's were parsed and the ACPI packages were retrieved out of the ACPI objects are not the same between Intel and AMD.

This patch adds AMD support for S2Idle to parse the UUID, evaluate the _DSM methods, preparing the Idle constraint list etc.

This ultimately is about getting the SoC into its lowest power platform idle state. The patch seems to imply that S2idle should now be working for supported AMD platforms -- well, sans the usual quirky BIOS implementations and other power management headaches often seen among consumer laptops. Will be digging further into the AMD S2idle handling over the holidays but in any case this latest code for it hit the Linux mainline tree yesterday following this ACPI pull request and looking like better AMD Linux power savings could be on the horizon.
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