!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