This series add 3 new quirks for DWC_usb31 host mode: * XHCI_ISOC_BLOCKED_DISCONNECT * XHCI_LIMIT_FS_BI_INTR_EP * XHCI_LOST_DISCONNECT_QUIRK Different versions of DWC_usb3x controllers have different quirks. Typically we set them based on PCI device VID:PID or DT compatible strings. However, we know that a particular IP version(s) may share a common quirk across different platform. We can enable these quirks based on the IP type and version number. This simplifies the designer work and consolidate the logic check. To do this, we will need to expose the xHCI quirks to the common header along with the private platform structure. Changes in v2: - Instead of combining xhci-plat private structure in xhci-squirks.h, keep it as a separate header file Thinh Nguyen (7): usb: xhci: Move quirks definitions to common usb header usb: xhci: Move xhci-plat header to common usb header usb: xhci: Check for blocked disconnection usb: xhci: Workaround undercalculated BW for fullspeed BI usb: xhci: Rename Compliance mode timer quirk usb: xhci: Workaround lost disconnect port status usb: dwc3: host: Set quirks base on version drivers/usb/cdns3/host.c | 2 +- drivers/usb/dwc3/host.c | 22 +++ drivers/usb/host/xhci-hub.c | 12 +- drivers/usb/host/xhci-mem.c | 26 ++++ drivers/usb/host/xhci-plat.c | 2 +- drivers/usb/host/xhci-rcar.c | 2 +- drivers/usb/host/xhci-ring.c | 76 ++++++++++ drivers/usb/host/xhci.c | 134 +++++++++++++----- drivers/usb/host/xhci.h | 71 ++-------- .../host => include/linux/usb}/xhci-plat.h | 18 +-- include/linux/usb/xhci-quirks.h | 65 +++++++++ 11 files changed, 326 insertions(+), 104 deletions(-) rename {drivers/usb/host => include/linux/usb}/xhci-plat.h (54%) create mode 100644 include/linux/usb/xhci-quirks.h base-commit: 496960274153bdeb9d1f904ff1ea875cef8232c1 -- 2.28.0