[PATCH v2 4/4] arm64: dts: renesas: r9a09g047e57-smarc: Enable USB2.0 support
Tommaso Merciai <[email protected]>
| Newsgroups | org.kernel.vger.linux-renesas-soc,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <e538f9b6bc29025358edfac215d48dc834f7d480.1787663426.git.tommaso.merciai.xr@bp.renesas.com> |
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 <[email protected]> --- 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 | 45 +++++++++++++++++++ .../boot/dts/renesas/renesas-smarc2.dtsi | 25 +++++++++++ 3 files changed, 90 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 4eed095b683b..5bf0be20aa66 100644 --- a/arch/arm64/boot/dts/renesas/r9a09g047e57-smarc.dts +++ b/arch/arm64/boot/dts/renesas/r9a09g047e57-smarc.dts @@ -296,6 +296,28 @@ 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 */ + }; + }; + + usb21_pins: usb21 { + ovc { + pinmux = <RZG3E_PORT_PINMUX(G, 6, 12)>; /* USB21_OVRCURN */ + bias-pull-up; + }; + + vbus { + pinmux = <RZG3E_PORT_PINMUX(K, 3, 12)>; /* USB21_VBUSEN */ + }; + }; + usb3_pins: usb3 { pinmux = <RZG3E_PORT_PINMUX(4, 1, 12)>, /* USB30_VBUSEN */ <RZG3E_PORT_PINMUX(4, 0, 12)>; /* USB30_OVRCURN */ @@ -392,6 +414,29 @@ &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 { + pinctrl-0 = <&usb21_pins>; + pinctrl-names = "default"; + + 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 696a933af808..e07fd9396adb 100644 --- a/arch/arm64/boot/dts/renesas/renesas-smarc2.dtsi +++ b/arch/arm64/boot/dts/renesas/renesas-smarc2.dtsi @@ -91,11 +91,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