5.5.2.4.1. 运营地区
控制方法通过使用字段运算符(请参阅声明字段对象)在称为“操作区域”的实体内声明数据元素,然后使用数据元素名称执行访问,将数据读取和写入到地址空间中的位置(例如,系统内存和系统 I/O)。操作区域是地址空间内的特定操作区域,使用起始地址(偏移量)和长度将其声明为整个地址空间的子集(请参阅 OperationRegion(声明操作区域)。控制方法必须对通过操作区域中声明的字段访问的任何地址具有独占访问权限。控制方法不能直接访问任何其他硬件寄存器,包括 ACPI 定义的寄存器块。定义的ACPI寄存器块中的ACPI寄存器代表控制方法的执行进行维护,例如GPEx_BLK不由控制方法直接访问,而是用于为控制方法调用提供可扩展的中断处理模型。
- 即使 OpRegion 不受互斥体保护,访问 OpRegion 也可能会阻塞。例如,由于嵌入式控制器的缓慢特性,嵌入式控制器 OpRegion 字段访问可能会阻塞。
下表定义了操作区域空间。
| 表 5.149 操作区域地址空间标识符 值 | 名称(区域空间关键字) | 参考 |
|---|---|---|
| 0 | 系统内存 | |
| 1 | 系统IO | |
| 2 | PCI_Config | |
| 3 | 嵌入式控制 | 请参阅ACPI嵌入式控制器接口规范 |
| 4 | SMBus | 请参阅ACPI系统管理总线接口规范 |
| 5 | 系统CMOS | 请参阅CMOS协议 |
| 6 | PciBarTarget | 请参阅PCI“设备”BAR“目标协议” |
| 7 | IPMI | 请参阅声明IPMI操作区域 |
| 8 | 通用IO | 请参阅声明 GeneralPurposeIO 操作区域 |
| 9 | 通用串行总线 | 请参阅声明 GenericSerialBus 操作区域 |
| 0x0A | 0x0A PCC | 请参阅声明PCC 运营区域 |
| 0x0B-0x7F | 0x0B-0x7F | 保留 |
| 0x80 到 0xFF | OEM 定义 |