Partilhar via


!usb3kd.ucx_device

A extensão !usb3kd.ucx_device exibe informações sobre um dispositivo USB na árvore USB 3.0. A exibição se baseia em estruturas de dados mantidas pelo driver de extensão do controlador host USB (UcxVersion.sys).

!usb3kd.ucx_device UcxUsbDevicePrivContext

Parâmetros

UcxUsbDevicePrivContext
Endereço da estrutura _UCXUSBDEVICE_PRIVCONTEXT que representa o dispositivo.

DLL

Usb3kd.dll

Comentários

O driver de extensão do controlador host USB (UcxVersion.sys) oferece uma camada de abstração entre o driver do hub USB 3.0 e o driver do controlador host USB 3.0. O driver de extensão tem sua própria representação de controladores host, dispositivos e pontos de extremidade. A saída do comando !ucx_device é baseada nas estruturas de dados mantidas pelo driver de extensão. Para ver mais informações sobre o driver de extensão do controlador host USB e o driver do controlador host USB 3.0, consulte Arquitetura de pilha do driver USB.

!ucx_device e !device_info mostram informações sobre um dispositivo, mas as informações mostradas são diferentes. A saída de !ucx_device é do ponto de vista do driver de extensão do controlador host USB, e a saída de !device_info é do ponto de vista do driver de hub USB 3.0. Por exemplo, a saída de !ucx_device inclui informações sobre pontos de extremidade, e a saída de !device_info inclui informações sobre configuração e descritores de interface.

Exemplos

Para obter o endereço do contexto privado do dispositivo USB UCX, examine a saída do comando !ucx_controller_list. No exemplo a seguir, o endereço do contexto privado para o segundo dispositivo é 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
        ...

Agora você pode passar o endereço do contexto privado UCX USB para o comando !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

Confira também

Extensões USB 3.0

!usb3kd.ucx_controller_list

Drivers USB (Barramento Serial Universal)