The first USB controller on the A64 SoC shares a PHY with the OTG controller. Reportedly to avoid problems with the VBUS regulator under Linux, we don't link OHCI0/EHCI0 to the USB PHY in the A64 .dtsi file.
However on boards which can't use peripheral mode (because they have an always-on VBUS supply on an USB-A socket) we don't need this trick, and can properly connect host controller 0 to the PHY 0. Amend the Pine64 and SoPine/LTS .dts to reflect this. This enables the upper USB port in U-Boot on those boards. Signed-off-by: Andre Przywara <[email protected]> --- arch/arm/dts/sun50i-a64-pine64.dts | 5 ++++- arch/arm/dts/sun50i-a64-sopine-baseboard.dts | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/arch/arm/dts/sun50i-a64-pine64.dts b/arch/arm/dts/sun50i-a64-pine64.dts index c077b6c1f4..523a4d5bff 100644 --- a/arch/arm/dts/sun50i-a64-pine64.dts +++ b/arch/arm/dts/sun50i-a64-pine64.dts @@ -80,6 +80,8 @@ }; &ehci0 { + phys = <&usbphy 0>; + phy-names = "usb"; status = "okay"; }; @@ -136,6 +138,8 @@ }; &ohci0 { + phys = <&usbphy 0>; + phy-names = "usb"; status = "okay"; }; @@ -301,7 +305,6 @@ &usb_otg { dr_mode = "host"; - status = "okay"; }; &usbphy { diff --git a/arch/arm/dts/sun50i-a64-sopine-baseboard.dts b/arch/arm/dts/sun50i-a64-sopine-baseboard.dts index 53fcc9098d..1986897177 100644 --- a/arch/arm/dts/sun50i-a64-sopine-baseboard.dts +++ b/arch/arm/dts/sun50i-a64-sopine-baseboard.dts @@ -85,6 +85,8 @@ }; &ehci0 { + phys = <&usbphy 0>; + phy-names = "usb"; status = "okay"; }; @@ -131,6 +133,8 @@ }; &ohci0 { + phys = <&usbphy 0>; + phy-names = "usb"; status = "okay"; }; @@ -172,7 +176,6 @@ &usb_otg { dr_mode = "host"; - status = "okay"; }; &usbphy { -- 2.14.5 -- You received this message because you are subscribed to the Google Groups "linux-sunxi" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web, visit https://groups.google.com/d/msgid/linux-sunxi/20190516004609.25304-3-andre.przywara%40arm.com. For more options, visit https://groups.google.com/d/optout.
