27.10.2015 Views

Advanced Configuration and Power Interface Specification

ACPI_6.0

ACPI_6.0

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Advanced</strong> <strong>Configuration</strong> <strong>and</strong> <strong>Power</strong> <strong>Interface</strong> <strong>Specification</strong><br />

Return Value:<br />

A variable-length Package containing a list of C-state information Packages as described below<br />

Return Value Information<br />

_CST returns a variable-length Package that contains the following elements:<br />

Count<br />

An Integer that contains the number of CState sub-packages that follow<br />

CStates[] A list of Count CState sub-packages<br />

Package {<br />

Count<br />

CStates[0]<br />

….<br />

CStates[Count-1]<br />

}<br />

// Integer<br />

// Package<br />

// Package<br />

Each fixed-length Cstate sub-Package contains the elements described below:<br />

Package {<br />

Register<br />

Type<br />

Latency<br />

<strong>Power</strong><br />

}<br />

// Buffer (Resource Descriptor)<br />

// Integer (BYTE)<br />

// Integer (WORD)<br />

// Integer (DWORD)<br />

Table 8-236 Cstate Package Values<br />

Element Object Type Description<br />

Register Buffer Contains a Resource Descriptor with a single Register() descriptor that<br />

describes the register that OSPM must read to place the processor in the<br />

corresponding C state.<br />

Type Integer<br />

(BYTE)<br />

The C State type (1=C1, 2=C2, 3=C3). This field conveys the semantics to be<br />

used by OSPM when entering/exiting the C state. Zero is not a valid value.<br />

Latency<br />

<strong>Power</strong><br />

Integer<br />

(WORD)<br />

Integer<br />

(DWORD)<br />

The worst-case latency to enter <strong>and</strong> exit the C State (in microseconds). There<br />

are no latency restrictions.<br />

The average power consumption of the processor when in the corresponding<br />

C State (in milliwatts).<br />

The platform must expose a _CST object for either all or none of its processors. If the _CST object<br />

exists, OSPM uses the C state information specified in the _CST object in lieu of P_LVL2 <strong>and</strong><br />

P_LVL3 registers defined in P_BLK <strong>and</strong> the P_LVLx_LAT values defined in the FADT. Also<br />

notice that if the _CST object exists <strong>and</strong> the _PTC object does not exist, OSPM will use the<br />

Processor Control Register defined in P_BLK <strong>and</strong> the C_State_Register registers in the _CST<br />

object.<br />

The platform may change the number or type of C States available for OSPM use dynamically by<br />

issuing a Notify event on the processor object with a notification value of 0x81. This will cause<br />

OSPM to re-evaluate any _CST object residing under the processor object notified. For example, the<br />

430 April, 2015 Version 6.0

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!