From 83a742b431501c1cf971983fa1911ae5d4b0440c Mon Sep 17 00:00:00 2001 From: Doug Anderson Date: Wed, 30 Jul 2014 13:00:10 -0700 Subject: ARM: dts: Turn on USB host vbus on rk3288-evb There is no phy driver that works on the Rockchip board for either USB host port yet. For now just hardcode the vbus signal to be on all the time which makes both the dwc2 host and the EHCI port work. Signed-off-by: Doug Anderson Signed-off-by: Heiko Stuebner --- arch/arm/boot/dts/rk3288-evb.dtsi | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/arch/arm/boot/dts/rk3288-evb.dtsi b/arch/arm/boot/dts/rk3288-evb.dtsi index 749e20db3b37..e6c5b03de3c0 100644 --- a/arch/arm/boot/dts/rk3288-evb.dtsi +++ b/arch/arm/boot/dts/rk3288-evb.dtsi @@ -35,6 +35,18 @@ debounce-interval = <100>; }; }; + + /* This turns on USB vbus for both host0 (ehci) and host1 (dwc2) */ + vcc_host: vcc-host-regulator { + compatible = "regulator-fixed"; + enable-active-high; + gpio = <&gpio0 14 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&host_vbus_drv>; + regulator-name = "vcc_host"; + regulator-always-on; + regulator-boot-on; + }; }; &i2c0 { @@ -71,4 +83,10 @@ rockchip,pins = <0 5 RK_FUNC_GPIO &pcfg_pull_up>; }; }; + + usb { + host_vbus_drv: host-vbus-drv { + rockchip,pins = <0 14 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; }; -- cgit v1.2.3 From beb4b3f56e342a6ac9b6920bb9b08473c2e37485 Mon Sep 17 00:00:00 2001 From: Kever Yang Date: Wed, 30 Jul 2014 13:00:11 -0700 Subject: ARM: dts: add rk3288 ehci usb devices rk3288 has two kind of usb controller; this adds the ehci variant for host0 and hsic. At the moment we don't add any phys for these controllers, but the default settings seem to work OK. There is a hardware problem in ohci controller which make it unavailable and host0 controller can only support high-speed devices. Signed-off-by: Kever Yang Signed-off-by: Doug Anderson Signed-off-by: Heiko Stuebner --- arch/arm/boot/dts/rk3288.dtsi | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi index 3ef89512c942..e7cb00873dd4 100644 --- a/arch/arm/boot/dts/rk3288.dtsi +++ b/arch/arm/boot/dts/rk3288.dtsi @@ -251,6 +251,26 @@ status = "disabled"; }; + usb_host0_ehci: usb@ff500000 { + compatible = "generic-ehci"; + reg = <0xff500000 0x100>; + interrupts = ; + clocks = <&cru HCLK_USBHOST0>; + clock-names = "usbhost"; + status = "disabled"; + }; + + /* NOTE: ohci@ff520000 doesn't actually work on hardware */ + + usb_hsic: usb@ff5c0000 { + compatible = "generic-ehci"; + reg = <0xff5c0000 0x100>; + interrupts = ; + clocks = <&cru HCLK_HSIC>; + clock-names = "usbhost"; + status = "disabled"; + }; + gic: interrupt-controller@ffc01000 { compatible = "arm,gic-400"; interrupt-controller; -- cgit v1.2.3 From 163cb917b836184c42f185b8fbd9185e20c5f499 Mon Sep 17 00:00:00 2001 From: Doug Anderson Date: Wed, 30 Jul 2014 13:00:12 -0700 Subject: ARM: dts: Enable USB host0 (EHCI) on rk3288-evb This is the top USB port on the evb (the one closest to the Ethernet connector). Signed-off-by: Doug Anderson Signed-off-by: Kever Yang Signed-off-by: Heiko Stuebner --- arch/arm/boot/dts/rk3288-evb.dtsi | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/arch/arm/boot/dts/rk3288-evb.dtsi b/arch/arm/boot/dts/rk3288-evb.dtsi index e6c5b03de3c0..4f572093c8b4 100644 --- a/arch/arm/boot/dts/rk3288-evb.dtsi +++ b/arch/arm/boot/dts/rk3288-evb.dtsi @@ -90,3 +90,7 @@ }; }; }; + +&usb_host0_ehci { + status = "okay"; +}; -- cgit v1.2.3