Condividi tramite


!usb3kd.ucx_endpoint

Il comando !usb3kd.ucx_endpoint visualizza informazioni su un endpoint in un dispositivo USB nell'albero USB 3.0. Lo schermo si basa sulle strutture di dati gestite dal driver di estensione del controller host USB (UcxVersion.sys).

!usb3kd.ucx_endpoint UcxEndpointPrivContext

Parametri

UcxEndpointPrivContext
Indirizzo della struttura _UCXENDPOINT_PRIVCONTEXT che rappresenta l'endpoint.

DLL

Usb3kd.dll

Osservazioni:

Il driver di estensione del controller host USB (UcxVersion.sys) fornisce un livello di astrazione tra il driver hub USB 3.0 e il driver del controller host USB 3.0. Il driver di estensione ha una propria rappresentazione di controller host, dispositivi ed endpoint. L'output del comando !ucx_endpoint si basa sulle strutture di dati gestite dal driver di estensione. Per altre informazioni sul driver di estensione del controller host USB e sul driver del controller host USB 3.0, vedere Architettura dello stack di driver USB.

Esempi

Per ottenere l'indirizzo del contesto privato dell'endpoint UCX, esaminare l'output del comando !ucx_controller_list . Nell'esempio seguente l'indirizzo del contesto privato per il primo endpoint nel secondo dispositivo è 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

È ora possibile passare l'indirizzo del contesto privato dell'endpoint 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

Vedi anche

Estensioni USB 3.0

!usb3kd.ucx_controller_list

Driver USB (Universal Serial Bus)