The !usb3kd.xhci_registers extension displays the registers of a USB 3.0 host controller.

!usb3kd.xhci_registers DeviceExtension


Address of the device extension for the host controller's functional device object (FDO).




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 Driver Stack Architecture.


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

See also

USB 3.0 Extensions


Universal Serial Bus (USB) Drivers

Send comments about this topic to Microsoft