Linux 4.6 To Support Runtime Power Management Of AHCI Controllers

Written by Michael Larabel in Hardware on 19 March 2016 at 03:37 AM EDT. 2 Comments
For the majority of you reading this relying upon Serial ATA (SATA) drives, the upcoming Linux 4.6 kernel will support runtime power management of the AHCI host controller for saving more power on your system when idling.

The libata pull request for Linux 4.6 provides the kernel's AHCI (Advanced Host Controller Interface) driver with runtime power management support. This code allows the AHCI controller to be turned off if no devices are attached.

This allows powering down the controller just not if any devices are attached, but if the SATA disks are suspended does count too. One of the patches in this Git branch explains by Intel's Mika Westerberg, "This series extends the support to AHCI host controllers. Whenever SATA ports are determined to be idle (all children are runtime suspended) the host controller is also suspended. On recent Intel CPUs like Broxton this allows the CPU to go low power idle states like S0ix runtime...By default runtime PM is blocked and needs to be unblocked from userspace (following what other PCI drivers do)."

To enable the support, you must enable runtime power management for all SATA ports (via the /sys/bus/pci/devices/*/ata*/power/control), enabling the new host controller PM via /sys/bus/pci/devices/*/power/control, and then enabling the power management for the disk via /sys/block/*/device/power/control (and also specifying the autosuspend_delay_ms via sysfs too. Hopefully the AHCI controller PM support will be added to the still useful PowerTOP utility soon for making this power-saving feature much easier to utilize.

The list of other changes for the libata area in Linux 4.6 can be found via the pull request.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of 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 automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week