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

• Bit [1] – Always clear (0).<br />

• Bit [2] – Always clear (0).<br />

• Bit [3] – Always clear (0).<br />

• All others – reserved.<br />

Return Value Information<br />

Capabilities Buffer (Buffer) – The platform acknowledges the Capabilities Buffer by returning a<br />

buffer of DWORDs of the same length. Set bits indicate acknowledgement that OSPM may take<br />

control of the capability <strong>and</strong> cleared bits indicate that the platform either does not support the<br />

capability or that OSPM may not assume control.<br />

The first DWORD in the capabilities buffer is used to return errors defined by _OSC. This DWORD<br />

must always be present <strong>and</strong> may not be redefined/reused by unique interfaces utilizing _OSC.<br />

• Bit [0] – Reserved (not used)<br />

• Bit [1] – _OSC failure. Platform Firmware was unable to process the request or query.<br />

Capabilities bits may have been masked.<br />

• Bit [2] – Unrecognized UUID. This bit is set to indicate that the platform firmware does not<br />

recognize the UUID passed in via Arg0. Capabilities bits are preserved.<br />

• Bit [3] – Unrecognized Revision. This bit is set to indicate that the platform firmware does not<br />

recognize the Revision ID passed in via Arg1. Capabilities bits beyond those comprehended by<br />

the firmware will be masked.<br />

• Bit [4] – Capabilities Masked. This bit is set to indicate that capabilities bits set by driver<br />

software have been cleared by platform firmware.<br />

• All others – reserved.<br />

Note: OSPM must not use the results of _OSC evaluation to choose a compatible device driver. OSPM<br />

must use _HID, _CID, or native enumerable bus device identification mechanisms to select an<br />

appropriate driver for a device.<br />

The platform may issue a Notify(device, 0x08) to inform OSPM to re-evaluate _OSC when the<br />

availability of feature control changes. Platforms must not rely, however, on OSPM to evaluate<br />

_OSC after issuing a Notify for proper operation as OSPM cannot guarantee the presence of a target<br />

entity to receive <strong>and</strong> process the Notify for the device. For example, a device driver for the device<br />

may not be loaded at the time the Notify is signaled. Further, the issuance <strong>and</strong> processing rules for<br />

notification of changes in the Capabilities Buffer is device specific. As such, the allowable behavior<br />

is governed by device specifications either in Section 9, “ ACPI-Specific Device Objects”, for<br />

ACPI-define devices, or other OEM, IHV, or device governing body’s’ device specifications.<br />

It is permitted for _OSC to return all bits in the Capabilities Buffer cleared. An example of this is<br />

when significant time is required to disable platform-based feature support. The platform may then<br />

later issue a Notify to tell OSPM to re-evaluate _OSC to take over native control. This behavior is<br />

also device specific but may also rely on specific OS capability.<br />

In general, platforms should support both OSPM taking <strong>and</strong> relinquishing control of specific feature<br />

support via multiple invocations of _OSC but the required behavior may vary on a per device basis.<br />

314 April, 2015 Version 6.0

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

Saved successfully!

Ooh no, something went wrong!