# Power management states Source: [https://docs.qualcomm.com/doc/80-70014-6/topic/power_management_states.html](https://docs.qualcomm.com/doc/80-70014-6/topic/power_management_states.html) UFS and the SD card offer multiple power states to optimize power consumption. ## UFS power management states Developers can alter these states as per requirement. However, it is to be noted that altering of the states may also lead to power consumption variation.. | State | Description | | :--- | :--- | | Auto-Hibernate | Auto-hibern8 (AH8) automatically transitions the phy link into
Hibernate state after 150 ms of idle time. This value is
tunable.



To check AH8 idle duration value (in micro sec), run the
following ssh command on the host machine:




cat /sys/devices/platform/soc@0/1d84000.ufs/auto_hibern8Copy to clipboard



**Note**: This value can be decreased to reduce power
consumption. | | Clock-gating | When UFS clocks are scaled up to maximum frequency due to the use
case, clocks are gated after 50 ms of idle duration.



If clocks are scaled down to optimal frequency, clocks are gated
after 10 ms of idle duration. To check clock gating
enabled/disabled status, run the following ssh command on the
host machine:




cat /sys/devices/platform/soc@0/1d84000.ufs/clkgate_enable Copy to clipboard



Clock gating is enabled by default.



To debug UFS issues related to clock gate/ungate, clock gating
can be disabled using the following ssh command on the host
machine:




echo 0 > /sys/devices/platform/soc@0/1d84000.ufs/clkgate_enable Copy to clipboard | | Clock scaling | Once the UFS load exceeds the `upthreshold` value,
the clock frequency is set to the maximum frequency with clock
scale up.



Clock scale down happens once the load is below the threshold.
UFS load is determined by the historical UFS operations. To
check clock scaling status, run the following ssh command on the
host machine:




cat /sys/devices/platform/soc@0/1d84000.ufs/clkscale_enable Copy to clipboard



Clock scaling is enabled by default.



Disable clock scaling can result in increased power consumption.
To debug any issue related to clock scaling, it can be disabled
using the following ssh command on the host machine:




echo 0 > /sys/devices/platform/soc@0/1d84000.ufs/clkscale_enable Copy to clipboard | | Runtime suspend/resume | UFS enters the runtime suspend state after 3 seconds of
inactivity. Resume can happen with the next UFS operation. This
is enabled always and not configurable. | | System suspend/resume | UFS enters system suspend with the suspend event. UFS resume
happens with the system resume event. This is enabled always and
not configurable. | ## SD card power management states | State | Description | | :--- | :--- | | Runtime suspend/resume | The SD card enters the runtime suspend state after 50
milliseconds of inactivity. Resume can happen with the next SD
card operation. This is enabled always and not configurable.
| | System suspend/resume | The SD card enters system suspend with the suspend event. SD card
resume happens with the system resume event. This is enabled
always and not configurable. | **Parent Topic:** [Configure](https://docs.qualcomm.com/doc/80-70014-6/topic/configuration.html) Last Published: Jul 10, 2024 [Previous Topic Kernel configuration](https://docs.qualcomm.com/bundle/publicresource/80-70014-6/topics/ufs-kernel-configuration.md) [Next Topic Bootloader/UEFI device tree](https://docs.qualcomm.com/bundle/publicresource/80-70014-6/topics/bootloader_uefi_device_tree.md)