In our SoC platform, we support allocating dedicated memory spaces other than system memory for XHCI, which also requires IOMMU mapping. The rest of driver probing and executing will use the generic xhci-plat driver, so we introduce a Google XHCI glue driver. Besides, we support USB dual roles and switch roles by generic dwc3 driver, but the dwc3 driver always probes xhci-plat driver by hardcode. We introduce an alternative for probing a XHCI glue driver. Puma Hsu (3): dt-bindings: usb: Add xhci glue driver support usb: xhci: Add support for Google XHCI controller MAINTAINERS: Add maintainer for Google USB XHCI driver .../devicetree/bindings/usb/usb-drd.yaml | 7 + MAINTAINERS | 6 + drivers/usb/dwc3/host.c | 8 +- drivers/usb/host/Kconfig | 6 + drivers/usb/host/Makefile | 1 + drivers/usb/host/xhci-goog.c | 154 ++++++++++++++++++ 6 files changed, 181 insertions(+), 1 deletion(-) create mode 100644 drivers/usb/host/xhci-goog.c -- 2.44.0.rc0.258.g7320e95886-goog