pepfx.h) (PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES 结构

PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES 结构包含控制设备电源所需的原始资源列表。

语法

typedef struct _PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES {
  [in]      PEPHANDLE            DeviceHandle;
  [in]      ULONG                RequestFlags;
  [out]     NTSTATUS             Status;
  [in, out] SIZE_T               BiosResourcesSize;
            ACPI_METHOD_ARGUMENT BiosResources[ANYSIZE_ARRAY];
} PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES, *PPEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES;

成员

[in] DeviceHandle

一个 PEPHANDLE 值,该值标识设备对 ACPI 服务的注册。 平台扩展插件 (PEP) 提供此句柄以响应以前的 PEP_NOTIFY_ACPI_REGISTER_DEVICE 通知。

[in] RequestFlags

一组输入标志。 当前没有为此成员定义标志,该成员始终设置为PEP_ACPI_QDCR_FLAG_NONE (0x0) 。

[out] Status

一个 NTSTATUS 值,该值指示此查询的状态。 如果 PEP 成功提供请求的资源列表,请将此成员设置为 STATUS_SUCCESS。 设置为 STATUS_BUFFER_TOO_SMALL指示输出缓冲区不够大,无法包含资源列表。

[in, BiosResourcesSize

输入时,为 BiosResources 成员分配的缓冲区的大小(以字节为单位)。 此缓冲区大小包括可能跟随此成员的任何关联数据。

如果此缓冲区的大小不足以包含 ACPI_METHOD_ARGUMENT 结构及其关联数据,则 PEP 会用所需的大小覆盖 BiosResourcesSize 的输入值,并将 Status 成员设置为STATUS_BUFFER_TOO_SMALL。

[in] BiosResources[ANYSIZE_ARRAY]

PEP 向其写入包含所请求资源列表 的ACPI_METHOD_ARGUMENT 结构的输出缓冲区。 此结构的 Data 成员是数组中的第一个成员,该成员可能扩展到结构末尾。 BiosResourcesSize 指定的缓冲区大小包括ACPI_METHOD_ARGUMENT结构和此结构后面的任何 Data 数组元素。

注解

此结构由 PEP_NOTIFY_ACPI_QUERY_DEVICE_CONTROL_RESOURCES 通知使用。 结构的 RequestFlagsBiosResourcesSizeBiosResources 成员包含发送此通知时 Windows 电源管理框架 (PoFx) 提供的输入值。 如果 BiosResourcesSize 输入值太小,则 PEP 应覆盖此值。 Status 成员包含 PEP 写入此结构以响应通知的输出值。

如果 BiosResourcesSize 成员中指定的输入值小于所需大小,则 PEP 会用所需大小覆盖 BiosResourcesSize 输入值,并将 Status 成员设置为STATUS_BUFFER_TOO_SMALL。 作为响应,PoFx 将尝试分配所需大小的缓冲区,并将第二个 PEP_NOTIFY_ACPI_QUERY_DEVICE_CONTROL_RESOURCES 通知发送到此设备的 PEP。

要求

要求
最低受支持的客户端 从 Windows 10 开始支持。
标头 pepfx.h (包括 Pep_x.h)

另请参阅

ACPI_METHOD_ARGUMENT

PEP_NOTIFY_ACPI_QUERY_DEVICE_CONTROL_RESOURCES

PEP_NOTIFY_ACPI_REGISTER_DEVICE