EVT_UCX_CONTROLLER_RESET回调函数 (ucxcontroller.h)
UCX 调用以重置控制器的客户端驱动程序实现。
语法
EVT_UCX_CONTROLLER_RESET EvtUcxControllerReset;
void EvtUcxControllerReset(
[in] UCXCONTROLLER UcxController
)
{...}
参数
[in] UcxController
客户端驱动程序在对 UcxControllerCreate 方法的上一次调用中收到的 UCX 控制器的句柄。
返回值
没有
言论
UCX 客户端驱动程序通过调用 UcxControllerCreate 方法,向 USB 主机控制器扩展(UCX)注册其 EVT_UCX_CONTROLLER_RESET 实现。
客户端驱动程序通过调用 UcxControllerResetComplete 方法指示完成此事件。 这样做可确保在完成此事件回调之前,UCX 不会再次调用 EVT_UCX_CONTROLLER_RESET。
如果客户端驱动程序调用 UcxControllerNeedsReset,UCX 将调用此事件回调函数。 但是,即使客户端驱动程序尚未调用 UcxControllerNeedsReset,UCX 也可以调用此事件回调函数。
例子
VOID
Controller_EvtControllerReset(
UCXCONTROLLER UcxController
)
{
UCX_CONTROLLER_RESET_COMPLETE_INFO controllerResetCompleteInfo;
//
// TODO: Reset the controller
//
//
// TODO: Were devices and endpoints programmed in the controller before the reset
// still programmed in the controller after the reset?
//
UCX_CONTROLLER_RESET_COMPLETE_INFO_INIT(&controllerResetCompleteInfo,
UcxControllerStateLost,
TRUE); // reset due to UCX, received EvtReset after WDF power-up
DbgTrace(TL_INFO, Controller, "Controller_EvtControllerReset");
UcxControllerResetComplete(UcxController, &controllerResetCompleteInfo);
}
要求
要求 | 价值 |
---|---|
目标平台 | 窗户 |
最低 KMDF 版本 | 1.0 |
最低 UMDF 版本 | 2.0 |
标头 | ucxcontroller.h (include Ucxclass.h) |
IRQL | PASSIVE_LEVEL |