次の方法で共有


EVT_UCX_USBDEVICE_ENABLE コールバック関数 (ucxusbdevice.h)

UCX がデバイスとその既定の制御エンドポイントに関するプログラム情報をコントローラーに呼び出すクライアント ドライバーの実装。

構文

EVT_UCX_USBDEVICE_ENABLE EvtUcxUsbdeviceEnable;

void EvtUcxUsbdeviceEnable(
  [in] UCXCONTROLLER UcxController,
  [in] WDFREQUEST Request
)
{...}

パラメーター

[in] UcxController

UcxControllerCreate メソッドの以前の呼び出しでクライアント ドライバーが受信した UCX コントローラーへのハンドル。

[in] Request

USBDEVICE_ENABLE型の構造体。

戻り値

何一つ

備考

UCX クライアント ドライバーは、UcxUsbDeviceCreate メソッドを呼び出すことによって、USB ホスト コントローラー拡張機能 (UCX) にこのコールバック関数を登録します。

デバイスを目的の状態に移行するために、ホスト コントローラー ドライバーはハードウェアと通信して要求を完了します。

このコールバック関数では、クライアント ドライバーは、USB デバイスの既定のコントロール エンドポイントで転送を受け入れてスケジュールするようにコントローラーを準備します。

ドライバーが完了すると、WDFREQUEST が完了します。

クライアント ドライバーは、要求 で完了状態返します。 ドライバーは、WDFREQUEST を非同期的に完了できます。

VOID
UsbDevice_EvtUcxUsbDeviceEnable(
    UCXCONTROLLER      UcxController,
    WDFREQUEST         Request
)
    
{
    UNREFERENCED_PARAMETER(UcxController);

    DbgTrace(TL_INFO, UsbDevice, "UsbDevice_EvtUcxUsbDeviceEnable");

    WDF_REQUEST_PARAMETERS_INIT(&wdfRequestParams);
    WdfRequestGetParameters(WdfRequest, &wdfRequestParams);
    usbDeviceEnable = (PUSBDEVICE_ENABLE)wdfRequestParams.Parameters.Others.Arg1;
    ...

    WdfRequestComplete(Request, STATUS_SUCCESS);
}

必要条件

要件 価値
ターゲット プラットフォーム ウィンドウズ
最小 KMDF バージョン 1.0
UMDF の最小バージョン する 2.0
ヘッダー ucxusbdevice.h (Ucxclass.h を含む)
IRQL DISPATCH_LEVEL

関連項目

UcxUsbDeviceCreate