# System-on-chip sleep states

A system-on-chip (SoC) sleep state is a low-power mode that the entire SoC enters when the
device is idle or not actively running any use cases.

1. Review SoC Sleep state functionality.

> 
> 
> The SoC supports many sleep states based on resource availability:
> 
> 
> 
> > 
> > 
> > - DDR (Double data rate memory)
> >     - XO (Crystal oscillator) clock
> >     - `(Chip_CX)` (Digital power supply)
> >     - `(Chip_MX)` (Memory domains power supply)

Note

The SoC sleep states are enabled on QCS6490/QCS5430 and Qualcomm® Dragonwing™ IQ-615.

2. Understand sleep transition.

As the device transitions from active state to SoC sleep state, the
power consumption decreases.

For example, when the device is idle with no use cases running, it’s in
the SoC sleep state (AOSD). This is the deepest sleep state and consumes
the least power. In this state, the resources, such as, XO clock,
memory, and power supply of digital and memory domains also enter their
respective sleep states.

3. Learn the SoC sleep states and their resource states:

Note

The SoC sleep states listed in the table are for reference only. You can’t enable or disable SoC sleep states.

Table : SoC sleep states

| SoC sleep states | Resource states |
| --- | --- |
| Active | <ul class="simple"><br><li><p>XO clock on</p></li><br><li><p><code class="docutils literal notranslate"><span class="pre">Chip_CX</span></code> (Digital) and <code class="docutils literal notranslate"><span class="pre">Chip_MX</span></code> (Memory) power<br>domains operate at active voltage level</p></li><br></ul> |
| DDR collapse | <ul class="simple"><br><li><p>Memory in Self-Refresh mode</p></li><br><li><p>XO clock on</p></li><br><li><p><code class="docutils literal notranslate"><span class="pre">Chip_CX</span></code> and <code class="docutils literal notranslate"><span class="pre">Chip_MX</span></code> power domains are configured<br>with active voltage</p></li><br></ul> |
| XO shutdown (CXSD) | <ul class="simple"><br><li><p>Memory in Self-Refresh mode</p></li><br><li><p>XO clock off</p></li><br><li><p><code class="docutils literal notranslate"><span class="pre">Chip_CX</span></code> power domain configured with least voltage</p></li><br><li><p><code class="docutils literal notranslate"><span class="pre">Chip_MX</span></code> configured with active voltage</p></li><br></ul> |
| SoC sleep (AOSD) | <ul class="simple"><br><li><p>The deepest system sleep state where the system is<br>expected to achieve the lowest sleep power, which is the<br>most preferred state for optimal power management</p></li><br><li><p>Memory in Self-Refresh mode</p></li><br><li><p>XO clock off</p></li><br><li><p><code class="docutils literal notranslate"><span class="pre">Chip_CX</span></code> and <code class="docutils literal notranslate"><span class="pre">Chip_MX</span></code> power domains configured with the<br>least voltage</p></li><br></ul> |

## Verify system-on-chip sleep state

> 
> 
> Transitioning to the sleep state significantly reduces power consumption. To ensure power efficiency, the device should enter sleep state, whenever it’s idle.
> 
> 
> To verify that the device has successfully entered sleep state, it’s essential to retrieve the SoC sleep statistics.

Run the following commands, to retrieve SoC sleep statistics:

1. Mount debug file system to access device debugfs nodes

mount -t debugfs none /sys/kernel/debug
    Copy to clipboard

2. Run the following command to retrieve AOSD sleep statistics:

cat /sys/kernel/debug/qcom_stats/aosd
    Copy to clipboard

3. Run the following command to retrieve CXSD sleep statistics

cat /sys/kernel/debug/qcom_stats/cxsd
    Copy to clipboard

The following is a sample output:

Count: 3

Last Entered At: 1087943710378

Last Exited At: 1088442890377

Accumulated Duration: 6668562002

The following table explains the output fields:

Table : SoC sleep states output fields

| Field | Explanation |
| --- | --- |
| `Count` | <ul class="simple"><br><li><p>Indicates the number of times the SoC entered a<br>particular power state</p></li><br><li><p>A nonzero count indicates that the SoC has exercised<br>sleep states</p></li><br></ul> |
| `Last Entered At` | Indicates the last sleep entry timestamp in ticks |
| `Last Exited At` | Indicates the last sleep exit timestamp in ticks |
| `Accumulated duration` | Total amount of time in sleep, represented in ticks |

Note

The 19.2 MHz XO clock determines the system tick frequency.

## Next steps

- [CPU power management](https://docs.qualcomm.com/doc/80-70022-30/topic/cpupowermanagement.html#cpupowermanagement)

Last Published: Sep 25, 2025

[Previous Topic
Power states and features](https://docs.qualcomm.com/bundle/publicresource/80-70022-30/topics/powerfeatures.md) [Next Topic
CPU power management](https://docs.qualcomm.com/bundle/publicresource/80-70022-30/topics/cpupowermanagement.md)