Home |
Function RTURegisterXHCI Function RTUWaitInitialEnumDone |
Function RTURegisterXHCIRTURegisterXHCI registers an XHCI USB host controller with RTUSB-32: void RTURegisterXHCI(void * MemBase, void * DBBase, void * RRBase, BYTE IRQ); ParametersMemBasePointer to the host controller's memory mapped Capability Registers. This pointer must refer to the virtual address space and must allow read/write access. DBBasePointer to the host controller's memory mapped Doorbell Registers. This pointer must refer to the virtual address space and must allow read/write access. RRBasePointer to the host controller's memory mapped Run-time Registers. This pointer must refer to the virtual address space and must allow read/write access. IRQInterrupt request number used by the host controller. For PCIe XHCI controllers installed in an x86 PC, APIC mode and MSI interrupts are recommended, as done by all demo programs in function FindUSBControllers in source file UsbInit.cpp. FindUSBControllers calls RTMPSetAPICModeACPI to switch to APIC mode and then initializes MSI interrupt mode for each found XHCI controller by calling RTMPSetupMSI. For PCI-based host controllers, the register addresses and IRQ value can be read from the PCI configuration space, as done by the demo programs in function FindUSBControllers in source file UsbInit.cpp. For more information see function FindUSBControllers.
|