This patch series aims to add USB3.1 HOST, Peri and DRD support on RZ/V2M EVK platform. The reset for both host and peri are located in USB3DRD block. The USB3DRD registers are mapped in the AXI address space of the Peripheral module. RZ/V2M is similar to R-Car XHCI but it doesn't require any firmware. Patch#16 depend upon [1] [1] https://lore.kernel.org/linux-renesas-soc/20221209171836.71610-1-biju.das.jz@xxxxxxxxxxxxxx/T/#t Biju Das (16): clk: renesas: r9a09g011: Add USB clock and reset entries dt-bindings: usb: Add RZ/V2M USB3DRD binding usb: gadget: Add support for RZ/V2M USB3DRD driver dt-bindings: usb: renesas,usb-xhci: Document RZ/V2M support usb: host: xhci-plat: Improve clock handling in probe() usb: host: xhci-plat: Add reset support xhci: host: Add Renesas RZ/V2M SoC support dt-bindings: usb: renesas,usb3-peri: Update reset property dt-bindings: usb: renesas,usb3-peri: Document RZ/V2MA bindings usb: gadget: udc: renesas_usb3: Remove drd_reset handling usb: gadget: udc: renesas_usb3: Add role switch support for RZ/V2M arm64: dts: renesas: r9a09g011: Add USB3 DRD and host nodes arm64: dts: renesas: r9a09g011: Add USB3 peripheral node arm64: dts: renesas: rzv2mevk2: Enable USB3 DRD and Host arm64: dts: renesas: rzv2mevk2: Enable USB3 Peripheral arm64: dts: renesas: rzv2mevk2: Enable USB3 role switch .../bindings/usb/renesas,rzv2m-usb3drd.yaml | 123 ++++++++++++++ .../bindings/usb/renesas,usb-xhci.yaml | 41 ++++- .../bindings/usb/renesas,usb3-peri.yaml | 16 +- .../boot/dts/renesas/r9a09g011-v2mevk2.dts | 76 +++++++++ arch/arm64/boot/dts/renesas/r9a09g011.dtsi | 46 ++++++ drivers/clk/renesas/r9a09g011-cpg.c | 21 +++ drivers/usb/gadget/udc/Kconfig | 7 + drivers/usb/gadget/udc/Makefile | 1 + drivers/usb/gadget/udc/renesas_usb3.c | 63 ++++---- drivers/usb/gadget/udc/rzv2m_usb3drd.c | 151 ++++++++++++++++++ drivers/usb/host/Kconfig | 9 ++ drivers/usb/host/Makefile | 3 + drivers/usb/host/xhci-plat.c | 36 ++++- drivers/usb/host/xhci-rzv2m.c | 38 +++++ drivers/usb/host/xhci-rzv2m.h | 16 ++ include/linux/soc/renesas/rzv2m_usb3drd.h | 19 +++ 16 files changed, 615 insertions(+), 51 deletions(-) create mode 100644 Documentation/devicetree/bindings/usb/renesas,rzv2m-usb3drd.yaml create mode 100644 drivers/usb/gadget/udc/rzv2m_usb3drd.c create mode 100644 drivers/usb/host/xhci-rzv2m.c create mode 100644 drivers/usb/host/xhci-rzv2m.h create mode 100644 include/linux/soc/renesas/rzv2m_usb3drd.h -- 2.25.1