7.1. Power Resource Objects and the Power Management Models¶
A Power Resource object refers to a software-controllable power plane, clock plane, or other resource upon which an ACPI power-managed device might rely. The unique way that these power resources are distributed to the devices across a given system sets the constraints within which OSPM must optimize the use of power, by individual devices as well as by the system as a whole. ACPI defines objects that reference power resources (or device states that, in turn, reference power resources) to enable OSPM to discover the constraints and capabilities of a given system. As power is managed during system operation, power savings are obtained by turning power resources off and on at the appropriate times. The following table describes how objects from this section provide the information and control required by OSPM to implement and coordinate the power management models.
Power mgmt function to be performed |
System entity performing it |
Platform info required |
Object providing information |
Comments |
---|---|---|---|---|
Choose a supported device state to save power while device is idle |
Device Power Policy Owner |
List of states (D0 through D3hot, and D3cold) supported by the device |
_PRx, PSx |
D3cold support is indicated by explicitly providing _PR3. D3hot is assumed to be supported in all cases. |
Choose a supported device state to enable a targeted system sleep or Low-power Idle state |
Device Power Policy Owner |
List of states (D0 through D3hot, and D3cold) supported by the device in the targeted system sleep state |
_PRx, Power Resource Declaration, _SxD |
_PRx maps device states to Power Resources, Power Resource definition maps Power Resources to system states. _SxD provides the system state-to-device state mapping explicitly in case power resources do not produce the information (*see note below). |
Choose a device state that supports Wake |
Device Power Policy Owner |
List of supported states, filtered by ability to cause a wake event |
_PRW, _SxW |
Addition of the requirement for additional power resources listed in _PRW cause wake-incapable states to be removed from the list of supported states (above) SxW defines the mapping of wake capable device states to system states |
Arm a device for wake |
OSPM |
Control mechanisms for enabling wake at the platform level |
_PRW, Wake-capable device interrupt, _DSW |
_PRW specifies the GPE bit to enable for wake. On HW-reduced platforms, the wake-capable attribute of a device interrupt indicates which interrupt to enable for wake _DSW is optional, depending on the needs of the platform wake hardware |
Enter a selected device state |
OSPM |
Control mechanisms for power resources |
_ON, _OFF, _PSx |
_ON and _OFF control the power resources PSx controls other platform hardware relevant to state changes but not exposed to OSPM as power resources (*see note below). |
Choose a targeted system sleep state |
System Power Policy Owner |
List of supported system Sleep states (S1-S4) |
_Sx |
S0 and S5 are assumed to be supported in all cases |
Enter a selected system state |
OSPM |
Control mechanisms for system states |
_PTS, _TTS and _WAK |
If _S5 exists, ACPI uses the SLP_TYP/SLP_EN bit fields in the PM1 Control Register (or the SLEEP_CONTROL/ SLEEP_STATUS registers specified in the FADT). If _S5 is not specified, alternative methods are used to turn-off the system. |
Note
* Support for Low-power Idle states requires the use of power resources to describe the device state and wake dependencies. See Processor Aggregator Device and _LPI (Low Power Idle States).