The !usbkd.usbep command displays information about a USB endpoint.

!usbkd.usbep StructAddr



Address of a usbport!_HCD_ENDPOINT structure. To get the endpoint list for a USB host controller, use the !usbkd.usbhcdext command.




Here is one way to find the address of a usbport!_HCD_ENDPOINT structure. First enter !usbkd.usb2tree.

0: kd> !usbkd.usb2tree
2)!ehci_info ffffe00001ca11a0 !devobj ffffe00001ca1050 PCI: VendorId 8086 DeviceId 293c RevisionId 0002 

In the preceding output, the address of the device extension of the FDO is displayed as the argument of the DML command !ehci_info ffffe00001ca11a0.

Either click the DML command or pass the address of the device extension to !usbhcdext to get the global endpoint list.

0: kd> !usbkd.usbhcdext ffffe00001ca11a0
DeviceHandleList: !usblist ffffe00001ca23b8, DL 
DeviceHandleDeletedList: !usblist ffffe00001ca23c8, DL [Empty]
GlobalEndpointList: !usblist ffffe00001ca2388, EP 

Now use the !usbkd.usblist command to get the addresses of _HCD_ENDPOINT structures.

0: kd> !usblist ffffe00001ca2388, EP

list: ffffe00001ca2388 EP
dt usbport!_HCD_ENDPOINT ffffe000020f6970  !usbep ffffe000020f6970
Device Address: 0x00, ep 0x00 Control  Flags: 00000002 dt _USB_ENDPOINT_FLAGS ffffe000020f6990
dt usbport!_ENDPOINT_PARAMETERS ffffe000020f6b18	RootHub Endpoint

In the preceding output, ffffe000020f6970 is the address of an _HCD_ENDPOINTstructure. Pass this address to !usbkd.usbep.

0: kd> !usbep ffffe000020f6970
Device Address: 0x00, Endpoint Address 0x00 Endpoint Type: Control 
dt USBPORT!_HCD_ENDPOINT ffffe000020f6970
RootHub Endpoint

Transfer(s) List: (HwPendingListHead)

Endpoint Reference List: (EpRefListHead)
[00] dt USBPORT!_USBOBJ_REF ffffe000021a64a0 Object ffffe000020f6970 Tag:EPop Endpoint:ffffe000020f6970
[01] dt USBPORT!_USBOBJ_REF ffffe000021264a0 Object ffffe000020f95e0 Tag:EPpi Endpoint:ffffe000020f6970

GEP HISTORY (latest at bottom)
     EVENT                   STATE                     NEXT                      HwEpState
[01] Ev_gEp_Open             GEp_Init                  GEp_Paused                ENDPOINT_PAUSE
[02] Ev_gEp_ReqActive        GEp_Paused                GEp_Active                ENDPOINT_ACTIVE

See also

USB 2.0 Debugger Extensions
Universal Serial Bus (USB) Drivers



Send comments about this topic to Microsoft