EVT_UCX_CONTROLLER_RESET回调函数 (ucxcontroller.h)

UCX 调用以重置控制器的客户端驱动程序实现。

语法

EVT_UCX_CONTROLLER_RESET EvtUcxControllerReset;

void EvtUcxControllerReset(
  [in] UCXCONTROLLER UcxController
)
{...}

参数

[in] UcxController

客户端驱动程序在上一次调用 UcxControllerCreate 方法时收到的 UCX 控制器的句柄。

返回值

备注

UCX 客户端驱动程序通过调用 UcxControllerCreate 方法将其EVT_UCX_CONTROLLER_RESET实现注册到 USB 主机控制器扩展 (UCX) 。

客户端驱动程序通过调用 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);
}

要求

要求
目标平台 Windows
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
标头 ucxcontroller.h (包括 Ucxclass.h)
IRQL PASSIVE_LEVEL

另请参阅

UcxControllerCreate

UcxControllerNeedsReset

UcxControllerResetComplete