!usb3kd.ucx_endpoint
El comando !usb3kd.ucx_endpoint permite ver la información sobre un punto de conexión en un dispositivo USB en el árbol de USB 3.0. La información mostrada se basa en estructuras de datos mantenidas por el controlador de extensión del controlador host USB (UcxVersion.sys).
!usb3kd.ucx_endpoint UcxEndpointPrivContext
Parámetros
UcxEndpointPrivContext
Dirección de la estructura _UCXENDPOINT_PRIVCONTEXT que representa el punto de conexión.
Archivo DLL
Usb3kd.dll
Comentarios
El controlador de extensión del controlador host USB (UcxVersion.sys) incorpora una capa de abstracción entre el controlador del concentrador USB 3.0 y el controlador del controlador host USB 3.0. El controlador de extensión tiene su propia representación de controladores host, dispositivos y puntos de conexión. El resultado del comando !ucx_endpoint se basa en las estructuras de datos mantenidas por el controlador de extensión. Para obtener más información sobre el controlador de extensión del controlador host USB y el controlador del controlador host USB 3.0, consulte Arquitectura de pilas de controladores USB.
Ejemplos
Para obtener la dirección del contexto privado del punto de conexión UCX, busque en el resultado del comando !ucx_controller_list. En el ejemplo siguiente, la dirección del contexto privado del primer punto de conexión del segundo dispositivo es 0xfffffa8003694860.
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_endpoint 0xfffffa80053405d0 [Blk Out], UcxEndpointStateEnabled
.!ucx_endpoint 0xfffffa8005a3f710 [Control], UcxEndpointStateEnabled
.!ucx_endpoint 0xfffffa8005bbe4e0 [Blk Out], UcxEndpointStateStale
.!ucx_endpoint 0xfffffa8005ac4810 [Blk In ], UcxEndpointStateStale
!ucx_device 0xfffffa8005bd9680
.!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
Ahora puede pasar la dirección del contexto privado del punto de conexión UCX al comando !ucx_endpoint.
3: kd> !ucx_endpoint 0xfffffa8003694860
## Dumping Ucx USB Endpoint Information fffffa8003694860
-----------------------------------------------------
dt ucx01000!_UCXENDPOINT_PRIVCONTEXT 0xfffffa8003694860
[Blk Out], UcxEndpointStateEnabled, MaxTransferSize: 4194304
Endpoint Address: 0x02
Endpoint Queue: !wdfqueue 0x57ffc969888
UcxEndpoint State History: <Event> NewState
[ 3] <UcxEndpointEventOperationSuccess> UcxEndpointStateEnabled
[ 2] <UcxEndpointEventYes> UcxEndpointStateCompletingPendingOperation1
[ 1] <UcxEndpointEventEnableComplete> UcxEndpointStateIsAbleToStart2
[ 0] <SmEngineEventStart> UcxEndpointStateCreated
UcxEndpoint Event History:
[ 1] UcxEndpointEventEnableComplete
[ 0] SmEngineEventStart
EventCallbacks:
EvtEndpointPurge: (0xfffff880044ba6e8) USBXHCI!Endpoint_UcxEvtEndpointPurge
EvtEndpointAbort: (0xfffff880044ba94c) USBXHCI!Endpoint_UcxEvtEndpointAbort
EvtEndpointReset: (0xfffff880044bb854) USBXHCI!Endpoint_UcxEvtEndpointReset