Zephyr Project API 3.7.0-rc1
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
pm_state_info Struct Reference

Information about a power management state. More...

#include <state.h>

Data Fields

enum pm_state state
 
uint8_t substate_id
 Some platforms have multiple states that map to one Zephyr power state.
 
bool pm_device_disabled
 Whether or not this state triggers device power management.
 
uint32_t min_residency_us
 Minimum residency duration in microseconds.
 
uint32_t exit_latency_us
 Worst case latency in microseconds required to exit the idle state.
 

Detailed Description

Information about a power management state.

Field Documentation

◆ exit_latency_us

uint32_t pm_state_info::exit_latency_us

Worst case latency in microseconds required to exit the idle state.

Note
0 means that this property is not available for this state.

◆ min_residency_us

uint32_t pm_state_info::min_residency_us

Minimum residency duration in microseconds.

It is the minimum time for a given idle state to be worthwhile energywise.

Note
0 means that this property is not available for this state.

◆ pm_device_disabled

bool pm_state_info::pm_device_disabled

Whether or not this state triggers device power management.

When this property is false the power management subsystem will suspend devices before entering this state and will properly resume them when leaving it.

◆ state

enum pm_state pm_state_info::state

◆ substate_id

uint8_t pm_state_info::substate_id

Some platforms have multiple states that map to one Zephyr power state.

This property allows the platform distinguish them. e.g:

power-states {
state0: state0 {
compatible = "zephyr,power-state";
power-state-name = "suspend-to-idle";
substate-id = <1>;
min-residency-us = <10000>;
exit-latency-us = <100>;
};
state1: state1 {
compatible = "zephyr,power-state";
power-state-name = "suspend-to-idle";
substate-id = <2>;
min-residency-us = <20000>;
exit-latency-us = <200>;
zephyr,pm-device-disabled;
};
};

The documentation for this struct was generated from the following file: