10.3. AC 适配器和电源对象
电源对象描述系统的电源。这些对象可以定义在一个电源设备之下,该设备使用硬件标识符 (_HID) “ACPI0003” 进行声明。通常,系统中包含的每个物理电源都对应一个电源设备。然而,在电源被共享的情况下,例如刀片服务器配置中,可能无法做到这一点。此时,固件可以选择公开一个虚拟电源,以表示一个或多个物理电源。
表 10.12 电源对象
| 对象 | 描述 |
|---|---|
| _PSR | 返回此电源设备当前是否联机。 |
| _PCL | 指向由此电源供电的设备的指针列表。 |
| _PIF | 返回有关电源的静态信息。 |
| _PRL | 指向属于同一冗余组的所有其他电源设备的指针列表,其中该电源设备是该冗余组的成员。 |
10.3.1. _PSR(电源)
返回该电源设备当前是否正在使用。它可用于确定系统是否正在使用该电源或适配器供电。在移动系统上,如果系统中的任何电池被强制放电,则这将报告系统未使用 AC 适配器供电。在包含多个电源的系统中,此对象报告该电源的联机或脱机状态。
参数:
无
返回值:
一个包含电源状态的 Integer:
0 - 脱机(未使用 AC 电源)1 - 联机
10.3.2. _PCL(电源使用者列表)
此对象求值为一个指针列表,其中每个指针都指向一个由该电源设备供电的设备或总线。指向总线表示该总线下的所有设备都由该电源设备供电。
参数:
无
返回值:
一个可变长度的 Package,其中包含指向设备或总线的 References 列表
10.3.3. _PIF(电源信息)
此对象返回有关电源的信息,这些信息在电源发生变化之前保持不变。当电源发生变化时,平台向电源设备发出 Notify(0x0)(总线检查),以指示 OSPM 必须重新求值 _PIF 对象。
参数:
无
返回值:
一个具有以下格式的 Package:
Package {
Power Source State // Integer (DWORD)
Maximum Output Power // Integer (DWORD)
Maximum Input Power // Integer (DWORD)
Model Number // String (ASCIIZ)
Serial Number // String (ASCIIZ)
OEM Information // String (ASCIIZ)
}
表 10.13 PIF 方法结果代码
| 元素 | 对象类型 | 描述 |
|---|---|---|
| Power Source State | Integer (DWORD) | 描述此电源类型的位值。这些位在服务器场景中特别有用。位 [0] - 表示该电源是冗余电源。如果设置了此位,则此 Power Source 设备应具有 _PRL 对象。位 [1] - 表示该电源在多台机器之间共享。位 [31:2] - 保留。 |
| Maximum Output Power | Integer (DWORD) | 电源设备的最大额定输出功率。[mW] 如果信息不可用,则返回 0xFFFFFFFF。 |
| Maximum Input Power | Integer (DWORD) | 电源设备的最大额定输入功率。[mW] 如果信息不可用,则返回 0xFFFFFFFF。 |
| Model Number | String (ASCIIZ) | OEM 特定的电源型号。此元素是可选的,如果不支持,则应使用空字符串(空字符)。 |
| Serial Number | String (ASCIIZ) | OEM 特定的电源序列号。此元素是可选的,如果不支持,则应使用空字符串(空字符)。 |
| OEM Information | String (ASCIIZ) | UI 用于显示有关电源设备的 OEM 特定信息。此元素是可选的,如果不支持,则应使用 NULL 字符串。 |
10.3.4. _PRL(电源冗余列表)
此可选对象求值为一个电源设备列表,这些设备与定义此对象的电源设备处于同一冗余分组中。冗余分组是一组共同提供冗余能力的电源。例如,在一个包含两个电源的系统中,如果每个电源都可以独立为系统供电,那么这两个电源都属于同一个冗余组。这与 _PIF 对象指定的 Power Source State 值结合使用。
这些条目应采用完全限定的 ACPI 命名空间路径格式。
参数:
无
返回值:
一个可变长度的 Package,其中包含指向电源设备的 References 列表。其格式如下:
Package {
Power source[0], // Reference
Power source[1], // Reference
Power source[n] // Reference
}