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);
}

規格需求

需求
目標平台 Windows
最小 KMDF 版本 1.0
最低UMDF版本 2.0
標頭 ucxcontroller.h (包含 Ucxclass.h)
IRQL PASSIVE_LEVEL

另請參閱

UcxControllerCreate

UcxControllerNeedsReset

UcxControllerResetComplete