EVT_HIDSPICX_NOTIFY_POWERDOWN回调函数 (hidspicx.h)

EvtHidspicxNotifyPowerdown 回调函数由客户端驱动程序实现,用于在设备即将转换为低功耗状态时接收通知。

语法

EVT_HIDSPICX_NOTIFY_POWERDOWN EvtHidspicxNotifyPowerdown;

NTSTATUS EvtHidspicxNotifyPowerdown(
  WDFDEVICE Device,
  BOOLEAN ArmForWake
)
{...}

参数

Device

客户端驱动程序从上一次调用 WdfDeviceCreate 获取的框架设备对象的句柄。

ArmForWake

指示设备是否在即将进行电源转换的目标状态下进行唤醒的布尔值。

返回值

NTSTATUS 指示电源转换准备是否成功。 此方法预计不会在运行时失败,并可能导致 HidSpiCx 设备故障。

注解

客户端驱动程序应实现并提供一个回调,HidSpiCx 将使用该回调来通知客户端即将关闭电源。 此回调的目的是允许类扩展指示客户端停止处理来自设备的中断,因为设备即将进入低功耗状态。 在客户端的 D0Entry WDF 回调发生回调之前,客户端不应恢复处理中断。

此函数的目的是避免在进入睡眠状态时出现这种情况:类扩展向设备发送 SET_POWER SLEEP 命令,并且设备在类扩展和客户端驱动程序完成 Dx IRP 之前断言中断以唤醒。 如果没有额外的回调指示客户端停止硬件处理中断,硬件将发出 SPI 读取以响应唤醒中断,这将违反要求主机在处理来自设备的中断之前先发送 SET_POWER ON 命令的协议。

此函数将由被动 IRQL 中的类扩展调用,在中断处理停止之前,客户端不应返回。

为方便起见,向客户端提供设备是否在总线级别进行唤醒,如果客户端驱动程序不是总线驱动程序,则允许客户端驱动程序避免对命令进行 WAIT_WAKE 监视。

要求

要求
最低受支持的客户端 Windows 11
标头 hidspicx.h
IRQL PASSIVE_LEVEL

另请参阅

设备电源状态

设备低功耗状态