arm64: dts: rockchip: Add Edgeble NCM6A-IO USB2
authorJagan Teki <jagan@edgeble.ai>
Sat, 25 Nov 2023 19:05:21 +0000 (00:35 +0530)
committerHeiko Stuebner <heiko@sntech.de>
Thu, 25 Jan 2024 20:28:47 +0000 (21:28 +0100)
Edgeble NCM6A-IO board has 2 port USB2.0 Host and USB2.0 on E-Key.

Add support for it.

Signed-off-by: Jagan Teki <jagan@edgeble.ai>
Link: https://lore.kernel.org/r/20231125190522.87607-10-jagan@edgeble.ai
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
arch/arm64/boot/dts/rockchip/rk3588-edgeble-neu6a-io.dtsi

index 05bea1fc6a51dd66832e080103dc6ff87d268f8f..963e880ccc1219461ebe98ce38a9abd075c7d8a7 100644 (file)
                startup-delay-us = <5000>;
                vin-supply = <&vcc5v0_sys>;
        };
+
+       vcc5v0_host: vcc5v0-host-regulator {
+               compatible = "regulator-fixed";
+               enable-active-high;
+               gpio = <&gpio3 RK_PC7 GPIO_ACTIVE_HIGH>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&vcc5v0_host_en>;
+               regulator-name = "vcc5v0_host";
+               regulator-min-microvolt = <5000000>;
+               regulator-max-microvolt = <5000000>;
+               regulator-boot-on;
+               regulator-always-on;
+               vin-supply = <&vcc5v0_sys>;
+       };
 };
 
 &combphy0_ps {
                        rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
                };
        };
+
+       usb {
+               vcc5v0_host_en: vcc5v0-host-en {
+                       rockchip,pins = <3 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>;
+               };
+       };
 };
 
 /* FAN */
        pinctrl-names = "default";
        status = "okay";
 };
+
+&u2phy2 {
+       status = "okay";
+};
+
+&u2phy2_host {
+       /* connected to USB hub, which is powered by vcc5v0_sys */
+       phy-supply = <&vcc5v0_sys>;
+       status = "okay";
+};
+
+&u2phy3 {
+       status = "okay";
+};
+
+&u2phy3_host {
+       phy-supply = <&vcc5v0_host>;
+       status = "okay";
+};
+
+&usb_host0_ehci {
+       status = "okay";
+};
+
+&usb_host0_ohci {
+       status = "okay";
+};
+
+&usb_host1_ehci {
+       status = "okay";
+};
+
+&usb_host1_ohci {
+       status = "okay";
+};