PEP_ACPI_EXTENDED_ADDRESS结构(pepfx.h)
PEP_ACPI_EXTENDED_ADDRESS 结构用于报告地址空间(如内存和 IO)中的资源使用情况。
语法
typedef struct _PEP_ACPI_EXTENDED_ADDRESS {
PEP_ACPI_RESOURCE_TYPE Type;
PEP_ACPI_RESOURCE_FLAGS Flags;
UCHAR ResourceFlags;
UCHAR GeneralFlags;
UCHAR TypeSpecificFlags;
UCHAR RevisionId;
UCHAR Reserved;
ULONGLONG Granularity;
ULONGLONG MinimumAddress;
ULONGLONG MaximumAddress;
ULONGLONG TranslationAddress;
ULONGLONG AddressLength;
ULONGLONG TypeAttribute;
PUNICODE_STRING DescriptorName;
} PEP_ACPI_EXTENDED_ADDRESS, *PPEP_ACPI_EXTENDED_ADDRESS;
成员
Type
描述此资源的 PEP_ACPI_RESOURCE_TYPE 枚举值。
Flags
描述此资源的 PEP_ACPI_RESOURCE_FLAGS 结构。
ResourceFlags
指示此结构描述的资源类型。
价值 | 意义 |
---|---|
|
指示此资源是内存范围。 |
|
指示此资源是 IO 范围。 |
|
指示此资源是总线编号范围。 |
|
这些值保留供将来使用。 |
|
这些值保留供硬件供应商使用。 |
GeneralFlags
一个值,该值包含所有资源类型通用的位标志。
Bit(s) | 意义 |
---|---|
|
设置后,这表示设备使用此资源。 |
|
设置后,指示此网桥以减法方式解码地址。 这仅适用于顶级网桥。
如果未设置,则表示此网桥会积极解码此地址。 |
|
设置后,指示最小地址是固定的。 |
|
设置后,指示最大地址是固定的。 |
|
这些位是保留的,必须设置为零。 |
TypeSpecificFlags
此成员的值取决于 ResourceFlags 成员中的值。 下表描述了每种资源类型的标志。
内存资源(ResourceFlags = 0)
IO 资源(ResourceFlags = 1)
总线编号范围资源(ResourceFlags = 2)
Bit(s) | 意义 |
---|---|
|
这些位是保留的,必须设置为零。 |
RevisionId
指示此结构详述的扩展地址空间描述符的修订。 对于 ACPI 3.0,此值为 1。
Reserved
Granularity
一个位掩码,指示已解码了哪些位。
MinimumAddress
最小起始地址。 对于转换地址的网桥,这是桥的辅助端的地址空间。
MaximumAddress
最大起始地址。 对于转换地址的网桥,这是桥的辅助端的地址空间。
TranslationAddress
对于跨网桥转换地址的网桥,这是主端的地址。
AddressLength
地址长度。
TypeAttribute
指示特定于在 ResourceFlags 成员中指定的资源类型的属性。 如果 ResourceFlags 为零,则此值为零,否则可以在标题为 GetMemoryMap()的 UEFI 规范 中找到该值的含义。
DescriptorName
此资源描述符的名称。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 从 Windows 10 开始支持。 |
标头 | pepfx.h (include Pep_x.h) |