[PATCH v4 3/3] arm64: dts: renesas: r9a09g047e57-smarc: Enable USB2.0 support
From: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Date: 2026-09-21 22:27:05
Also in:
linux-renesas-soc, lkml
Subsystem:
arm/risc-v/renesas architecture, the rest · Maintainers:
Geert Uytterhoeven, Magnus Damm, Linus Torvalds
Enable USB2.0 support on the RZ/G3E EVK board. The USB1B_1A_HOST and USB5_4_HOST connectors support host operation only, while USB0_OTG supports both host and peripheral operation. renesas-smarc2.dtsi is shared by all boards based on the RZ SMARC Carrier II Board. USB2.0 is not yet supported on the RZ/G3L SMARC EVK, so disable the common USB2.0 nodes in its board DTS until proper support is added. Signed-off-by: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com> --- v3->v4: - Drop usb21_pins. v2->v3: - No changes just rebased on top of next-20260908. v1->v2: - Disabled RZ/G3L common nodes from r9a08g046l48-smarc.dts in this way we can drop placeholder patch. - Update commit body. - Improved usb20_pins, usb21_pins comments. .../boot/dts/renesas/r9a08g046l48-smarc.dts | 20 ++++++++++++ .../boot/dts/renesas/r9a09g047e57-smarc.dts | 31 +++++++++++++++++++ .../boot/dts/renesas/renesas-smarc2.dtsi | 25 +++++++++++++++ 3 files changed, 76 insertions(+)
diff --git a/arch/arm64/boot/dts/renesas/r9a08g046l48-smarc.dts b/arch/arm64/boot/dts/renesas/r9a08g046l48-smarc.dts
index 5289efd1a430..ccd6e6394532 100644
--- a/arch/arm64/boot/dts/renesas/r9a08g046l48-smarc.dts
+++ b/arch/arm64/boot/dts/renesas/r9a08g046l48-smarc.dts@@ -71,6 +71,18 @@ codec_dai: codec { #endif }; +&ehci0 { + status = "disabled"; +}; + +&ehci1 { + status = "disabled"; +}; + +&hsusb0 { + status = "disabled"; +}; + &i2c2 { pinctrl-0 = <&i2c2_pins>; pinctrl-names = "default";
@@ -122,6 +134,14 @@ &keys { #endif }; +&ohci0 { + status = "disabled"; +}; + +&ohci1 { + status = "disabled"; +}; + &pinctrl { audio_clk_pins: audio-clock { pinmux = <RZG3L_PORT_PINMUX(H, 4, 6)>, /* AUDIO_CLK_B */
diff --git a/arch/arm64/boot/dts/renesas/r9a09g047e57-smarc.dts b/arch/arm64/boot/dts/renesas/r9a09g047e57-smarc.dts
index 14f5834082fa..095acb87c20c 100644
--- a/arch/arm64/boot/dts/renesas/r9a09g047e57-smarc.dts
+++ b/arch/arm64/boot/dts/renesas/r9a09g047e57-smarc.dts@@ -301,6 +301,17 @@ sd1-data { }; }; + usb20_pins: usb20 { + ovc { + pinmux = <RZG3E_PORT_PINMUX(0, 0, 12)>; /* USB20_OVRCURN */ + bias-pull-up; + }; + + vbus { + pinmux = <RZG3E_PORT_PINMUX(0, 1, 12)>; /* USB20_VBUSEN */ + }; + }; + usb3_pins: usb3 { pinmux = <RZG3E_PORT_PINMUX(4, 1, 12)>, /* USB30_VBUSEN */ <RZG3E_PORT_PINMUX(4, 0, 12)>; /* USB30_OVRCURN */
@@ -397,6 +408,26 @@ &ssi4 { shared-pin; }; +&usb20phyrst { + status = "okay"; +}; + +&usb21phyrst { + status = "okay"; +}; + +&usb2_phy0 { + pinctrl-0 = <&usb20_pins>; + pinctrl-names = "default"; + + vbus-supply = <&usb2_phy0_vbus_otg>; + status = "okay"; +}; + +&usb2_phy1 { + status = "okay"; +}; + &usb3_phy { status = "okay"; };
diff --git a/arch/arm64/boot/dts/renesas/renesas-smarc2.dtsi b/arch/arm64/boot/dts/renesas/renesas-smarc2.dtsi
index 826a11ab93c7..234ca287ed28 100644
--- a/arch/arm64/boot/dts/renesas/renesas-smarc2.dtsi
+++ b/arch/arm64/boot/dts/renesas/renesas-smarc2.dtsi@@ -84,11 +84,36 @@ &canfd { status = "okay"; }; +&ehci0 { + dr_mode = "otg"; + status = "okay"; +}; + +&ehci1 { + dr_mode = "host"; + status = "okay"; +}; + +&hsusb0 { + dr_mode = "otg"; + status = "okay"; +}; + &i2c0 { status = "okay"; clock-frequency = <400000>; }; +&ohci0 { + dr_mode = "otg"; + status = "okay"; +}; + +&ohci1 { + dr_mode = "host"; + status = "okay"; +}; + &pcie { status = "okay"; };
--
2.54.0