!usb3kd.ucx_device

!usb3kd.ucx_device拡張は、USB 3.0ツリー内のUSBデバイスに関する情報を表示します。 表示は、USBホストコントローラー拡張機能ドライバー (UcxVersion.sys) によって管理されるデータ構造に基づいています。

!usb3kd.ucx_device UcxUsbDevicePrivContext

パラメーター

UcxUsbDevicePrivContext
デバイスを表す _UCXUSBDEVICE_PRIVCONTEXT 構造体のアドレス。

DLL

Usb3kd.dll

解説

USBホストコントローラー拡張機能ドライバー (UcxVersion.sys) は、usb 3.0ハブドライバーとusb 3.0ホストコントローラードライバーの間に抽象化レイヤーを提供します。 拡張機能ドライバーには、ホストコントローラー、デバイス、およびエンドポイントの独自の表現があります。 !ucx_device コマンドの出力は、拡張ドライバが保持するデータ構造に基づいています。 USBホストコントローラー拡張機能ドライバーとUSB 3.0ホストコントローラードライバーの詳細については、 「USBドライバースタックアーキテクチャ」 を参照してください。

!ucx_device!device_infoはどちらもデバイスに関する情報を表示するが、表示される情報は異なる。 !ucx_deviceの出力はUSBホストコントローラ拡張ドライバの視点からのもので、!device_infoの出力はUSB 3.0ハブドライバの視点からのものです。 例えば、!ucx_deviceの出力にはエンドポイントに関する情報が含まれ、!device_infoの出力にはコンフィギュレーションとインターフェース・ディスクリプタに関する情報が含まれます。

UCX USB デバイスのプライベートコンテクストのアドレスを取得するの出力を確認、!ucx_controller_listコマンドのコマンドを見てください。 以下の例では、2番目のデバイスのプライベート・コンテキストのアドレスは0xfffffa8005bd9680です。

3: 3: kd> !ucx_controller_list

## Dumping List of UCX controller objects
--------------------------------------
[1] !ucx_controller 0xfffffa80052da050 (dt ucx01000!_UCXCONTROLLER_PRIVCONTEXT fffffa80052da050)
    !ucx_device 0xfffffa8005a41840
        .!ucx_endpoint 0xfffffa800533f3d0 [Blk In ], UcxEndpointStateEnabled
        ...
    !ucx_device 0xfffffa8005bd9680
        .!ucx_endpoint 0xfffffa8003694860 [Blk Out], UcxEndpointStateEnabled
        ...

これで、UCX USBプライベート・コンテキストのアドレスを!ucx_deviceコマンドに渡すことができます。

3: kd> !ucx_device 0xfffffa8005bd9680

## Dumping Ucx USB Device Information fffffa8005bd9680
---------------------------------------------------
dt ucx01000!_UCXUSBDEVICE_PRIVCONTEXT 0xfffffa8005bd9680
!ucx_controller 0xfffffa80052da050
ParentHub: !wdfhandle 0x57ffacbce78
DefaultEndpoint: !ucx_endpoint 0xfffffa8005be0550
ListOfEndpionts:
    .!ucx_endpoint 0xfffffa8003694860 [Blk Out], UcxEndpointStateEnabled
    .!ucx_endpoint 0xfffffa8003686820 [Blk In ], UcxEndpointStateEnabled
    .!ucx_endpoint 0xfffffa8005be0550 [Control], UcxEndpointStateEnabled
    .!ucx_endpoint 0xfffffa8003695580 [Blk In ], UcxEndpointStateStale
    .!ucx_endpoint 0xfffffa80036a20c0 [Blk Out], UcxEndpointStateStale

EventCallbacks:
    EvtUsbDeviceEndpointsConfigure: (0xfffff880044d1164) USBXHCI!UsbDevice_UcxEvtEndpointsConfigure
    EvtUsbDeviceEnable: (0xfffff880044cffac) USBXHCI!UsbDevice_UcxEvtEnable
    EvtUsbDeviceDisable: (0xfffff880044d1cbc) USBXHCI!UsbDevice_UcxEvtDisable
    EvtUsbDeviceReset: (0xfffff880044d2178) USBXHCI!UsbDevice_UcxEvtReset
    EvtUsbDeviceAddress: (0xfffff880044d0934) USBXHCI!UsbDevice_UcxEvtAddress
    EvtUsbDeviceUpdate: (0xfffff880044d0c80) USBXHCI!UsbDevice_UcxEvtUpdate
    EvtUsbDeviceDefaultEndpointAdd: (0xfffff880044ede1c) USBXHCI!Endpoint_UcxEvtUsbDeviceDefaultEndpointAdd
    EvtUsbDeviceEndpointAdd: (0xfffff880044edfc8) USBXHCI!Endpoint_UcxEvtUsbDeviceEndpointAdd

関連項目

USB 3.0 拡張機能

!usb3kd.ucx_controller_list

ユニバーサル シリアル バス (USB) ドライバー