sunxi: initial 3.14 patchset
[openwrt/openwrt.git] / target / linux / sunxi / patches-3.14 / 162-dt-sun7i-add-usb-host-bindings.patch
diff --git a/target/linux/sunxi/patches-3.14/162-dt-sun7i-add-usb-host-bindings.patch b/target/linux/sunxi/patches-3.14/162-dt-sun7i-add-usb-host-bindings.patch
new file mode 100644 (file)
index 0000000..b2b9d33
--- /dev/null
@@ -0,0 +1,86 @@
+From 008dffff2fa751c988671c4fc0c9a404ea808280 Mon Sep 17 00:00:00 2001
+From: Roman Byshko <rbyshko@gmail.com>
+Date: Thu, 19 Sep 2013 21:36:10 +0200
+Subject: [PATCH] ARM: sun7i: dt: Add USB host bindings
+
+Add nodes for the usb-phy and ehci- and ohci-usb-host controllers.
+
+Signed-off-by: Roman Byshko <rbyshko@gmail.com>
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+---
+ arch/arm/boot/dts/sun7i-a20.dtsi | 52 ++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 52 insertions(+)
+
+diff --git a/arch/arm/boot/dts/sun7i-a20.dtsi b/arch/arm/boot/dts/sun7i-a20.dtsi
+index 864b7c6..4cc2f5f 100644
+--- a/arch/arm/boot/dts/sun7i-a20.dtsi
++++ b/arch/arm/boot/dts/sun7i-a20.dtsi
+@@ -439,6 +439,38 @@
+                       #size-cells = <0>;
+               };
++              usbphy: phy@01c13400 {
++                      #phy-cells = <1>;
++                      compatible = "allwinner,sun7i-a20-usb-phy";
++                      reg = <0x01c13400 0x10 0x01c14800 0x4 0x01c1c800 0x4>;
++                      reg-names = "phy_ctrl", "pmu1", "pmu2";
++                      clocks = <&usb_clk 8>;
++                      clock-names = "usb_phy";
++                      resets = <&usb_clk 1>, <&usb_clk 2>;
++                      reset-names = "usb1_reset", "usb2_reset";
++                      status = "disabled";
++              };
++
++              ehci0: usb@01c14000 {
++                      compatible = "allwinner,sun7i-a20-ehci", "generic-ehci";
++                      reg = <0x01c14000 0x100>;
++                      interrupts = <0 39 4>;
++                      clocks = <&ahb_gates 1>;
++                      phys = <&usbphy 1>;
++                      phy-names = "usb";
++                      status = "disabled";
++              };
++
++              ohci0: usb@01c14400 {
++                      compatible = "allwinner,sun7i-a20-ohci", "generic-ohci";
++                      reg = <0x01c14400 0x100>;
++                      interrupts = <0 64 4>;
++                      clocks = <&usb_clk 6>, <&ahb_gates 2>;
++                      phys = <&usbphy 1>;
++                      phy-names = "usb";
++                      status = "disabled";
++              };
++
+               spi2: spi@01c17000 {
+                       compatible = "allwinner,sun4i-a10-spi";
+                       reg = <0x01c17000 0x1000>;
+@@ -458,6 +490,26 @@
+                       status = "disabled";
+               };
++              ehci1: usb@01c1c000 {
++                      compatible = "allwinner,sun7i-a20-ehci", "generic-ehci";
++                      reg = <0x01c1c000 0x100>;
++                      interrupts = <0 40 4>;
++                      clocks = <&ahb_gates 3>;
++                      phys = <&usbphy 2>;
++                      phy-names = "usb";
++                      status = "disabled";
++              };
++
++              ohci1: usb@01c1c400 {
++                      compatible = "allwinner,sun7i-a20-ohci", "generic-ohci";
++                      reg = <0x01c1c400 0x100>;
++                      interrupts = <0 65 4>;
++                      clocks = <&usb_clk 7>, <&ahb_gates 4>;
++                      phys = <&usbphy 2>;
++                      phy-names = "usb";
++                      status = "disabled";
++              };
++
+               spi3: spi@01c1f000 {
+                       compatible = "allwinner,sun4i-a10-spi";
+                       reg = <0x01c1f000 0x1000>;
+-- 
+2.0.3
+