mbox series

[RFC,0/5] Fix cold plugged USB device on certain PCIe USB cards

Message ID 20210824105302.25382-1-kishon@ti.com (mailing list archive)
Headers show
Series Fix cold plugged USB device on certain PCIe USB cards | expand

Message

Kishon Vijay Abraham I Aug. 24, 2021, 10:52 a.m. UTC
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@ti.com
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(-)