Cold plugged USB device was not detected on certain PCIe USB cards (like Inateck card connected to AM64 EVM or connected to J7200 EVM). Re-plugging the USB device always gets it enumerated. This issue was discussed in https://lore.kernel.org/r/772e4001-178e-4918-032c-6e625bdded24@xxxxxx and https://bugzilla.kernel.org/show_bug.cgi?id=214021 So the suggested solution is to register both root hubs along with the second hcd for xhci. This series performs some cleanups and implements the suggested solution. Kishon Vijay Abraham I (5): usb: core: hcd: Modularize HCD stop configuration in usb_stop_hcd() usb: core: hcd: Let usb_add_hcd() indicate if roothub has to be registered usb: core: hcd: Add support for registering secondary RH along with primary HCD usb: core: hcd-pci: Let usb_hcd_pci_probe() indicate if RH has to be registered xhci-pci: Use flag to not register roothub while adding primary HCD drivers/usb/core/hcd-pci.c | 11 +++--- drivers/usb/core/hcd.c | 72 ++++++++++++++++++++++++------------- drivers/usb/host/xhci-pci.c | 2 +- include/linux/usb/hcd.h | 16 ++++++--- 4 files changed, 65 insertions(+), 36 deletions(-) -- 2.17.1