PoFxReportDevicePoweredOn 函数 (wdm.h)

PoFxReportDevicePoweredOn 例程通知电源管理框架 (PoFx) 设备已完成请求到 D0 (完全处于电源状态) 转换。

语法

void PoFxReportDevicePoweredOn(
  [in] POHANDLE Handle
);

参数

[in] Handle

表示设备注册到电源管理框架 (PoFx) 的句柄。 设备驱动程序以前从 PoFxRegisterDevice 例程收到此句柄。

返回值

备注

注册设备的驱动程序必须在发生以下任一情况后调用 PoFxReportDevicePoweredOn

  • PoFx 调用驱动程序的 DevicePowerRequiredCallback 回调例程来通知驱动程序设备必须进入 D0 电源状态。
  • PoFx 调用驱动程序的 DirectPowerUpCallback 回调例程,以通知驱动程序设备必须进入 D0 电源状态。
  • PoFx 向驱动程序发送 S0 IRP (IRP_MN_SET_POWER 请求) ,以通知驱动程序挂起的系统转换为 S0 电源状态。
为了响应这两种情况,驱动程序 (IRP_MN_SET_POWER 请求发送 D0 IRP,) 其设备堆栈,以启动到 D0 电源状态的转换(如果设备尚未处于 D0 状态)。 在驱动程序完成 (并且所有较低的驱动程序完成) 转换为 D0 状态后,驱动程序调用 PoFxReportDevicePoweredOn 来通知 PoFx。

驱动程序必须调用 PoFxReportDevicePoweredOn ,无论不需要 D0 IRP、D0 IRP 请求失败、调度的 D0 IRP 是成功还是失败,还是 S0 IRP 成功或失败。

对于需要电源/定向通电回调, PoFxReportDevicePoweredOn 调用可以在回调调用期间或之后发生。

对于 S0 IRP 请求,驱动程序必须尽快完成此请求,将设备切换到 D0 电源状态,然后调用 PoFxReportDevicePoweredOn。 有关详细信息,请参阅 在设备电源策略所有者中处理系统 Set-Power IRP

进入 PoFxReportDevicePoweredOn 时,设备可能处于未初始化的 D0 电源状态,其中设备中的所有组件都处于打开状态。 为了响应 PoFxReportDevicePoweredOn 调用,PoFx 将设备配置为已初始化的 D0 状态。 在此配置期间,PoFx 将尽可能多的组件切换为低功率 Fx 电源状态。

要求

要求
最低受支持的客户端 从Windows 8开始可用。
目标平台 通用
标头 wdm.h
Library Ntoskrnl.lib
DLL Ntoskrnl.exe
IRQL <= DISPATCH_LEVEL

另请参阅

DevicePowerRequiredCallback

IRP_MN_SET_POWER

PoFxRegisterDevice