STOR_POFX_DEVICE结构(storport.h)

STOR_POFX_DEVICE 结构描述存储设备的电源属性到电源管理框架(PoFx)。

语法

typedef struct _STOR_POFX_DEVICE {
  ULONG               Version;
  ULONG               Size;
  ULONG               ComponentCount;
  ULONG               Flags;
  STOR_POFX_COMPONENT Components[ANYSIZE_ARRAY];
} STOR_POFX_DEVICE, *PSTOR_POFX_DEVICE;

成员

Version

此结构的版本号。 将此成员设置为 STOR_POFX_DEVICE_VERSION_V1

Size

此结构的大小。 将此值设置为 STOR_POFX_DEVICE_SIZE

ComponentCount

组件 数组中的元素数。 将此成员设置为 1。 目前,存储适配器或逻辑单元仅支持单个组件。

Flags

设备电源状态功能标志。 微型端口设置一个或多个 PoFx 设备标志以启用或禁用电源状态功能。

标志 是以下项的按位 OR 组合。

价值 意义
STOR_POFX_DEVICE_FLAG_DISABLE_INTERRUPTS_ON_D3
指定在设置时,Storport 将在将适配器置于 D3 时禁用中断,并在恢复到 D0 时重新激活中断。
STOR_POFX_DEVICE_FLAG_ENABLE_D3_COLD
如果 Storport 支持它,则允许 Storport 为适配器设置 D3 冷状态。 此标志仅适用于适配器。
STOR_POFX_DEVICE_FLAG_NO_D0
请求未将电源 IRP 发送到适配器或单元的设备对象。
STOR_POFX_DEVICE_FLAG_NO_D3
请求关闭 IRP 不会发送到适配器或单元的设备对象。
STOR_POFX_DEVICE_FLAG_NO_DUMP_ACTIVE
如果设备进入空闲状态或处于空闲状态时关闭电源,微型端口将无法使存储设备处于转储模式。 此标志指示设备在空闲时是否可用于转储。

Components[ANYSIZE_ARRAY]

此成员是一个或多个 STOR_POFX_COMPONENT 元素数组中的第一个元素。 如果数组包含多个元素,则附加元素紧跟 STOR_POFX_DEVICE 结构。 该数组包含设备中每个组件的一个元素。 目前,存储设备只有一个组件,因此不需要其他组件结构。

言论

为了注册 Storport PoFx 支持的存储适配器,微型端口驱动程序在其 HwStorInitialize 例程中调用 StorPortEnablePassiveInitialization,并实现 HwStorPassiveInitializeRoutine。 微型端口调用 StorPortInitializePoFxPowerHwStorPassiveInitializeRoutine 来提供有关适配器组件的信息。

为了注册 Storport PoFx 支持的存储单元,微型端口驱动程序实现 HwStorUnitControl 回调例程,并提供处理 ScsiUnitPoFxPowerInfo 单元控制代码。 处理 ScsiUnitPoFxPowerInfo 控制代码时,如果启用了单元组件的空闲电源管理,微型端口将调用 StorPortInitializePoFxPower

由其 组件标识的存储设备的组件 数组索引。 存储设备只有一个组件,因此使用索引为 0。 StorPortPoFxActivateComponentStorPortPoFxIdleComponent 等例程 使用组件的数组索引来标识组件。

要求

要求 价值
最低支持的客户端 从 Windows 8 开始支持。
标头 storport.h

另请参阅

STOR_POFX_COMPONENT

StorPortInitializePoFxPower

StorPortPoFxActivateComponent

StorPortPoFxIdleComponent