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 2 回目の呼び出しが行われないようにします。
クライアント ドライバーが UcxControllerNeedsReset を呼び出す場合、UCX はこのイベント コールバック関数を呼び出します。 ただし、UCX は、クライアント ドライバーが UcxControllerNeedsReset を呼び出していない場合でも、このイベント コールバック関数を呼び出すことができます。
例
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 |
Header | ucxcontroller.h (Ucxclass.h を含む) |
IRQL | PASSIVE_LEVEL |