!usb3kd.xhci_registers
The !usb3kd.xhci_registers extension displays the registers of a USB 3.0 host controller.
!usb3kd.xhci_registers DeviceExtension
Parameters
DeviceExtension
Address of the device extension for the host controller's functional device object (FDO).
DLL
Usb3kd.dll
Remarks
The output the !xhci_registers command is based on the data structures maintained by the USB 3.0 host controller driver (UsbXhci.sys). For more information about the USB 3.0 host controller driver and other drivers in the USB stack, see USB host-side drivers in Windows.
Examples
To obtain the address of the device extension, look at the output of the !xhci_dumpall command. In the following example, the address of the device extension is 0xfffffa800536e2d0.
3: kd> !xhci_dumpall
## Dumping all the XHCI controllers - DrvObj 0xfffffa80053072f0
------------------------------------------------------------
1) ... - PCI: VendorId ... DeviceId ... RevisionId ... Firmware ...
dt USBXHCI!_CONTROLLER_DATA 0xfffffa80052f20c0
!rcdrlogdump USBXHCI -a 0xfffffa8005068520
!rcdrlogdump USBXHCI -a 0xfffffa8004e8b9a0 (rundown)
!wdfdevice 0x57ffac91fd8
!xhci_capability 0xfffffa800536e2d0
!xhci_registers 0xfffffa800536e2d0
...
Now you can pass the address of the device extension to the !xhci_registers command.
3: kd> !xhci_registers 0xfffffa800536e2d0
## Dumping controller registers
----------------------------
dt USBXHCI!_OPERATIONAL_REGISTERS 0xfffff880046a8020
DeviceContextBaseAddressArrayPointer: 00000001168b9000
Command Registers
-----------------
RunStopBit: 1
HostControllerReset: 0
...
Status Registers
----------------
HcHalted: 0
HostSystemError: 0
...
commandRingControl Registers
----------------------------
RingCycleState: 0
CommandStop: 0
...
Runtime Registers
-----------------
dt USBXHCI!_RUNTIME_REGISTERS 0xfffff880046a8600
MicroFrameIndex: 0x3f7a
dt -ba8 USBXHCI!_INTERRUPTER_REGISTER_SET 0xfffff880046a8620
RootPort Registers
------------------
dt -a4 -r2 USBXHCI!_PORT_REGISTER_SET 0xfffff880046a8420