EVT_WDF_DEVICE_SELF_MANAGED_IO_RESTART回调函数 (wdfdevice.h)

[适用于 KMDF 和 UMDF]

驱动程序的 EvtDeviceSelfManagedIoRestart 事件回调函数重启设备的自我管理 I/O 操作。

语法

EVT_WDF_DEVICE_SELF_MANAGED_IO_RESTART EvtWdfDeviceSelfManagedIoRestart;

NTSTATUS EvtWdfDeviceSelfManagedIoRestart(
  [in] WDFDEVICE Device
)
{...}

参数

[in] Device

框架设备对象的句柄。

返回值

如果 EvtDeviceSelfManagedIoRestart 回调函数未遇到任何错误,则必须返回STATUS_SUCCESS或NT_SUCCESS (状态) 等于 TRUE 的另一个状态值。 否则,它必须返回NT_SUCCESS (状态) 等于 FALSE的状态值。 如果NT_SUCCESS (状态) 等于 FALSE,框架将停止设备并卸载设备的驱动程序。

如果NT_SUCCESS (状态) 等于 FALSE,框架将调用驱动程序的 EvtDeviceSelfManagedIoFlushEvtDeviceSelfManagedIoCleanup 回调函数。

有关此回调函数的返回值的详细信息,请参阅 报告设备故障

注解

若要注册 EvtDeviceSelfManagedIoRestart 回调函数,驱动程序必须调用 WdfDeviceInitSetPnpPowerEventCallbacks

如果驱动程序已注册 EvtDeviceSelfManagedIoRestart 回调函数,则每当设备从低功耗状态返回到其工作状态时,框架都会调用它, (D0) 状态。 框架仅在调用驱动程序的 EvtDeviceSelfManagedIoSuspend 回调函数后调用 EvtDeviceSelfManagedIoRestart 回调函数。

驱动程序的 EvtDeviceSelfManagedIoRestart 回调函数必须执行恢复设备的自我管理 I/O 操作所需的一切操作。

有关框架何时调用此回调函数的详细信息,请参阅 PnP 和电源管理方案

有关提供此回调函数的驱动程序的详细信息,请参阅 使用 Self-Managed I/O

EvtDeviceSelfManagedIoRestart 回调函数在 IRQL = PASSIVE_LEVEL调用。 不应使此回调函数 可分页

要求

要求
目标平台 通用
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
标头 wdfdevice.h (包括 Wdf.h)
IRQL PASSIVE_LEVEL (请参阅备注部分)

另请参阅

EvtDeviceSelfManagedIoCleanup

EvtDeviceSelfManagedIoFlush

EvtDeviceSelfManagedIoInit

EvtDeviceSelfManagedIoSuspend