aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlof Johansson <olof@lixom.net>2014-07-31 01:04:14 -0400
committerOlof Johansson <olof@lixom.net>2014-07-31 01:04:14 -0400
commit68a05338ce3b1e4553524333b4c441f5fb7fb1ff (patch)
treefc66a9ff44000526e6aba346e03aee4e2a91ec14
parent8b510129bad3974dda864466b5d811c6527dab3d (diff)
parent163cb917b836184c42f185b8fbd9185e20c5f499 (diff)
Merge tag 'v3.17-rockchip-rk3288-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt
Merge "Basic rk3288 usb support" from Heiko Stübner: Add support for rk3288 ehci controllers. * tag 'v3.17-rockchip-rk3288-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: ARM: dts: Enable USB host0 (EHCI) on rk3288-evb ARM: dts: add rk3288 ehci usb devices ARM: dts: Turn on USB host vbus on rk3288-evb Signed-off-by: Olof Johansson <olof@lixom.net>
-rw-r--r--arch/arm/boot/dts/rk3288-evb.dtsi22
-rw-r--r--arch/arm/boot/dts/rk3288.dtsi20
2 files changed, 42 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/rk3288-evb.dtsi b/arch/arm/boot/dts/rk3288-evb.dtsi
index 749e20db3b37..4f572093c8b4 100644
--- a/arch/arm/boot/dts/rk3288-evb.dtsi
+++ b/arch/arm/boot/dts/rk3288-evb.dtsi
@@ -35,6 +35,18 @@
35 debounce-interval = <100>; 35 debounce-interval = <100>;
36 }; 36 };
37 }; 37 };
38
39 /* This turns on USB vbus for both host0 (ehci) and host1 (dwc2) */
40 vcc_host: vcc-host-regulator {
41 compatible = "regulator-fixed";
42 enable-active-high;
43 gpio = <&gpio0 14 GPIO_ACTIVE_HIGH>;
44 pinctrl-names = "default";
45 pinctrl-0 = <&host_vbus_drv>;
46 regulator-name = "vcc_host";
47 regulator-always-on;
48 regulator-boot-on;
49 };
38}; 50};
39 51
40&i2c0 { 52&i2c0 {
@@ -71,4 +83,14 @@
71 rockchip,pins = <0 5 RK_FUNC_GPIO &pcfg_pull_up>; 83 rockchip,pins = <0 5 RK_FUNC_GPIO &pcfg_pull_up>;
72 }; 84 };
73 }; 85 };
86
87 usb {
88 host_vbus_drv: host-vbus-drv {
89 rockchip,pins = <0 14 RK_FUNC_GPIO &pcfg_pull_none>;
90 };
91 };
92};
93
94&usb_host0_ehci {
95 status = "okay";
74}; 96};
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 @@
251 status = "disabled"; 251 status = "disabled";
252 }; 252 };
253 253
254 usb_host0_ehci: usb@ff500000 {
255 compatible = "generic-ehci";
256 reg = <0xff500000 0x100>;
257 interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
258 clocks = <&cru HCLK_USBHOST0>;
259 clock-names = "usbhost";
260 status = "disabled";
261 };
262
263 /* NOTE: ohci@ff520000 doesn't actually work on hardware */
264
265 usb_hsic: usb@ff5c0000 {
266 compatible = "generic-ehci";
267 reg = <0xff5c0000 0x100>;
268 interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
269 clocks = <&cru HCLK_HSIC>;
270 clock-names = "usbhost";
271 status = "disabled";
272 };
273
254 gic: interrupt-controller@ffc01000 { 274 gic: interrupt-controller@ffc01000 {
255 compatible = "arm,gic-400"; 275 compatible = "arm,gic-400";
256 interrupt-controller; 276 interrupt-controller;