8.4.1. _PDC(处理器驱动程序能力)
{注:该描述已在规范 6.4 版本中移除。}
在 ACPI 3.0 中,_PDC 已被弃用,改用 _OSC。为了向后兼容,可以按如下方式使用 _OSC 来实现 _PDC:
Method(_PDC,1)
{
CreateDWordField (Arg0, 0, REVS)
CreateDWordField (Arg0, 4, SIZE)
//
// Local0 = Number of bytes for Arg0
//
Store (SizeOf (Arg0), Local0)
//
// Local1 = Number of Capabilities bytes in Arg0
//
Store (Subtract (Local0, 8), Local1)
//
// TEMP = Temporary field holding Capability DWORDs
//
CreateField (Arg0, 64, Multiply (Local1, 8), TEMP)
//
// Create the Status (STS0) buffer with the first DWORD = 0
// This is required to return errors defined by \_OSC.
//
Name (STS0, Buffer () {0x00, 0x00, 0x00, 0x00})
//
// Concatenate the \_PDC capabilities bytes to the STS0 Buffer
// and store them in a local variable for calling OSC
//
Concatenate (STS0, TEMP, Local2)
//
// Note: The UUID passed into \_OSC is CPU vendor specific. Consult CPU
// vendor documentation for UUID and Capabilities Buffer bit
definitions
//
\_OSC (ToUUID("4077A616-290C-47BE-9EBD-D87058713953"), REVS, SIZE,
Local2)
}
_OSC(操作系统能力) 描述了可用于向平台传达处理器相关 OSPM 能力的 _OSC 对象。有关特定处理器中 _OSC 所使用的 UUID 和能力缓冲区位定义,请查阅供应商特定的 CPU 文档。