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 />

Field<br />

X Firmware Waking<br />

Vector<br />

Byte<br />

Length<br />

Byte<br />

Offset<br />

Description<br />

8 24 64-bit physical address of OSPM’s Waking Vector.<br />

Before transitioning the system into a global sleeping state,<br />

OSPM fills in this field <strong>and</strong> the OSPM Flags field to describe the<br />

waking vector. OSPM populates this field with the physical<br />

memory address of an OS-specific wake function. During<br />

POST, the platform firmware checks if the value of this field is<br />

non-zero <strong>and</strong> if so transfers control to OSPM by jumping to this<br />

address after creating the appropriate execution environment,<br />

which must be configured as follows:<br />

For 64-bit Itanium Processor Family (IPF) -based platforms:<br />

Interrupts must be disabled<br />

The processor must have psr.i set to 0. See the Intel® Itanium TM<br />

Architecture Software Developer’s Manual for more information.<br />

Memory address translation must be disabled<br />

The processor must have psr.it, psr.dt, <strong>and</strong> psr.rt set to 0. See<br />

the Intel® Itanium TM Architecture Software Developer’s Manual<br />

for more information.<br />

For IA 32 <strong>and</strong> x64 platforms, platform firmware is required to<br />

support a 32 bit execution environment. Platform firmware can<br />

additionally support a 64 bit execution environment. If platform<br />

firmware supports a 64 bit execution environment, firmware<br />

inspects the OSPM Flags during POST. If the 64BIT_WAKE_F<br />

flag is set, the platform firmware creates a 64 bit execution<br />

environment. Otherwise, the platform firmware creates a 32 bit<br />

execution environment.<br />

For 64 bit execution environment:<br />

Interrupts must be disabled<br />

EFLAGS.IF set to 0<br />

Long mode enabled<br />

Paging mode is enabled <strong>and</strong> physical memory for waking vector<br />

is identity mapped (virtual address equals physical address)<br />

Waking vector must be contained within one physical page<br />

Selectors are set to be flat <strong>and</strong> are otherwise not used<br />

For 32 bit execution environment:<br />

Interrupts must be disabled<br />

EFLAGS.IF set to 0<br />

Memory address translation / paging must be disabled<br />

4 GB flat address space for all segment registers<br />

Version 1 32 2–Version of this table<br />

Reserved 3 33 This value is zero.<br />

OSPM Flags 4 36 OSPM enabled firmware control structure flags. Platform<br />

firmware must initialize this field to zero. See Table 5-40 for a<br />

description of the OSPM control structure feature flags.<br />

Reserved 24 40 This value is zero.<br />

132 April, 2015 Version 6.0

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

Saved successfully!

Ooh no, something went wrong!