Поделиться через


!usb3kd.ucx_device

Расширение !usb3kd.ucx_device отображает сведения о USB-устройстве в дереве USB 3.0. Отображение основано на структурах данных, поддерживаемых драйвером расширения контроллера USB (версия Ucx.sys).

!usb3kd.ucx_device UcxUsbDevicePrivContext

Параметры

UcxUsbDevicePrivContext
Адрес структуры _UCXUSBDEVICE_PRIVCONTEXT, представляющей устройство.

DLL-библиотеки

Usb3kd.dll

Замечания

Драйвер расширения контроллера USB (версия Ucx.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 включают сведения о дескрипторах конфигурации и интерфейса.

Примеры

Чтобы получить адрес частного контекста USB-устройства UCX, просмотрите выходные данные команды !ucx_controller_list . В следующем примере адрес частного контекста для второго устройства 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
        ...

Теперь вы можете передать адрес частного контекста USB UCX в команду !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)