--- arch/arm/dts/rk3328-u-boot.dtsi.orig 2021-06-10 17:07:39.263452000 +0300 +++ arch/arm/dts/rk3328-u-boot.dtsi 2021-06-10 17:17:14.034737000 +0300 @@ -10,7 +10,7 @@ }; chosen { - u-boot,spl-boot-order = &emmc, &sdmmc; + u-boot,spl-boot-order = "same-as-spl", &emmc, &sdmmc; }; dmc: dmc { @@ -24,18 +24,28 @@ 0x0 0xff798000 0x0 0x1000>; }; - usb_host0_xhci: usb@ff600000 { - compatible = "rockchip,rk3328-xhci"; - reg = <0x0 0xff600000 0x0 0x100000>; - interrupts = ; - snps,dis-enblslpm-quirk; - snps,phyif-utmi-bits = <16>; - snps,dis-u2-freeclk-exists-quirk; - snps,dis-u2-susphy-quirk; - status = "disabled"; + vcc_host_5v: vcc-host-5v-regulator { + compatible = "regulator-fixed"; + enable-active-high; + gpio = <&gpio0 0 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&usb_host_drv>; + regulator-name = "vcc_host_5v"; + regulator-always-on; + vin-supply = <&vcc_sys>; }; }; +&pinctrl { + u-boot,dm-spl; + usb { + usb_host_drv: usb-host-drv { + rockchip,pins = + <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; +}; + &cru { u-boot,dm-pre-reloc; }; @@ -63,6 +73,50 @@ u-boot,spl-fifo-mode; }; -&usb20_otg { +&u2phy { + status = "okay"; +}; + +&u2phy_host { + phy-supply = <&vcc_host_5v>; + status = "okay"; +}; + +&u2phy_otg { hnp-srp-disable; + status = "okay"; +}; + +&usb20_otg { + dr_mode = "host"; + status = "okay"; +}; + +&usb_host0_ehci { + status = "okay"; +}; + +&usb_host0_ohci { + status = "okay"; +}; + +&u3phy { + vbus-supply = <&vcc_host_5v>; + status = "okay"; +}; + +&u3phy_utmi { + status = "okay"; +}; + +&u3phy_pipe { + status = "okay"; +}; + +&usbdrd3 { + status = "okay"; +}; + +&usbdrd_dwc3 { + status = "okay"; };