27.10.2015 Views

Advanced Configuration and Power Interface Specification

ACPI_6.0

ACPI_6.0

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Processor <strong>Configuration</strong> <strong>and</strong> Control<br />

between power resource transitions <strong>and</strong> power resource dependent LPI states differ based on the<br />

coordination scheme.<br />

In a platform coordinated system, OSPM may or may not track the power state of PWRA before<br />

selecting local state 2 or 3. The platform must independently guarantee that PWRA is OFF before<br />

entering local state 2 or 3, <strong>and</strong> must demote to a shallower state if OSPM selects local state 2 or 3<br />

when PWRA is still on. Note that because OSPM is required to correctly sequence power resource<br />

transitions with device power transitions, the platform does not need to check the state of DEVA; it<br />

can rely on the state of PWRA to infer that DEVA is in an appropriate D-state.<br />

Similarly, OSPM may or may not track the state of PWRB <strong>and</strong> PWRC before selecting local state 3,<br />

<strong>and</strong> the platform must independently guarantee that PWRB is off before entering either state.<br />

Because PWRC is a passive power resource, the platform does not know when the reference count<br />

on the power resource reaches 0 <strong>and</strong> instead must track DEVC’s state itself. Unless the platform has<br />

other mechanisms to track the state of DEVC, PWRC should be defined as a traditional power<br />

resource so that the platform can use its _ON <strong>and</strong> _OFF methods to guarantee correctness of<br />

operation.<br />

In an OS initiated system, OSPM is required to guarantee that PWRA is OFF before selecting either<br />

local state 2 or 3. OSPM may meet this guarantee by waiting until it believes a processor is the last<br />

man down in the system, before checking the state of PWRA, <strong>and</strong> only selecting local state 2 or 3 in<br />

this case. If the processor was the last man down, then the request to enter local state 2 or 3 is legal<br />

<strong>and</strong> the platform can honor it. If another processor woke up in the meantime <strong>and</strong> turned PWRA on,<br />

then this becomes a race between processors which is addressed in the OS Initiated Request<br />

Semantics section (Section 8.4.4.2.2.1). Similarly, OSPM must guarantee PWRB is off <strong>and</strong> PWRC’s<br />

reference count is 0 before selecting local state 3.<br />

In an OS initiated system, because OSPM guarantees that power resources are in their correct states<br />

before selecting system power states, the platform should use passive power resources unless there is<br />

additional runtime power savings to turning a power resource OFF. On a platform that only supports<br />

OS Initiated transitions, PWRB should be defined as a passive power resource because it is shared<br />

with processors <strong>and</strong> can only be turned off when the system power state is entered.<br />

8.4.4.5 Compatibility<br />

In order to support older operating systems which do not support the new idle management<br />

infrastructure, the _OSC method can be used to detect whether the OSPM supports parsing<br />

processor containers <strong>and</strong> objects associated with LPIs <strong>and</strong> (_LPI, _RDI). This is described in<br />

Section 6.2.11.1.<br />

A platform may choose to expose both _CST <strong>and</strong> _LPI for backward compatibility with operating<br />

systems which do not support _LPI. In this case, if OSPM supports _LPI, then it should be used in<br />

preference to _CST. At run time only one idle state methodology should be used across the entire<br />

processor hierarchy - _LPI or _CST, but not a mixture of both.<br />

8.4.5 Processor Throttling Controls<br />

ACPI defines two processor throttling (T state) control interfaces. These are:<br />

• The Processor Register Block’s (P_BLK’s) P_CNT register.<br />

• The combined _PTC, _TSS, <strong>and</strong> _TPC objects in the processor’s object list.<br />

Version 6.0 461

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

Saved successfully!

Ooh no, something went wrong!