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 |