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

• I/O operation regions.<br />

• Memory operation regions when accessing memory returned by the System Address Map<br />

reporting interfaces.<br />

2. OSPM must make Embedded Controller operation regions, accessed via the Embedded<br />

Controllers described in ECDT, available before executing any control method. These operation<br />

regions may become inaccessible after OSPM runs _REG(EmbeddedControl, 0).<br />

Place _REG in the same scope as operation region declarations. The OS will run the _REG in a<br />

given scope when the operation regions declared in that scope are available for use.<br />

Example:<br />

Scope(\_SB.PCI0) {<br />

OperationRegion(OPR1, PCI_Config, ...)<br />

Method(_REG, 2) {...}<br />

// OSPM executes this when PCIO operation region h<strong>and</strong>ler<br />

// status changes<br />

Device(PCI1) {<br />

Method(2) {...}<br />

Device(ETH0) {<br />

OperationRegion(OPR2, PCI_Config, ...)<br />

Method(_REG,2) {...}<br />

}<br />

}<br />

Device(ISA0) {<br />

OperationRegion(OPR3, SystemI/O, ...)<br />

Method(_REG, 2) {...} // OSPM executes this when ISAO operation region h<strong>and</strong>ler<br />

// status changes<br />

Device(EC0) {<br />

Name(_HID, EISAID("PNP0C09"))<br />

OperationRegion(OPR4, EmbeddedControl, ...)<br />

Method(_REG, 2) {...} // OSPM executes this when EC operation region<br />

// h<strong>and</strong>ler status changes<br />

}<br />

}<br />

}<br />

When the PCI0 operation region h<strong>and</strong>ler is ready, OSPM will run the _REG method declared in<br />

PCI0 scope to indicate that PCI Config space operation region access is available within the PCI0<br />

scope (in other words, OPR1 access is allowed). When the ISA0 operation h<strong>and</strong>ler is ready, OSPM<br />

will run the _REG method in the ISA0 scope to indicate that the I/O space operation region access is<br />

available within that scope (in other words, OPR3 access is allowed). Finally, when the Embedded<br />

Controller operation region h<strong>and</strong>ler is ready, OSPM will run the _REG method in the EC0 scope to<br />

indicate that EC space operation region access is available within the EC0 scope (in other words,<br />

OPR4 access is allowed). It should be noted that PCI Config Space Operation Regions are ready as<br />

soon the host controller or bridge controller has been programmed with a bus number. PCI1’s _REG<br />

method would not be run until the PCI-PCI bridge has been properly configured. At the same time,<br />

the OS will also run ETH0’s _REG method since its PCI Config Space would be also available. The<br />

OS will again run ETH0’s _REG method when the ETH0 device is started. Also, when the host<br />

controller or bridge controller is turned off or disabled, PCI Config Space Operation Regions for<br />

child devices are no longer available. As such, ETH0’s _REG method will be run when it is turned<br />

off <strong>and</strong> will again be run when PCI1 is turned off.<br />

384 April, 2015 Version 6.0

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

Saved successfully!

Ooh no, something went wrong!