sunxi: initial 3.14 patchset
[openwrt/openwrt.git] / target / linux / sunxi / patches-3.14 / 160-dt-sun4i-add-usb-host-bindings.patch
diff --git a/target/linux/sunxi/patches-3.14/160-dt-sun4i-add-usb-host-bindings.patch b/target/linux/sunxi/patches-3.14/160-dt-sun4i-add-usb-host-bindings.patch
new file mode 100644 (file)
index 0000000..9ca7345
--- /dev/null
@@ -0,0 +1,86 @@
+From 991b5f6d2af837b56adfcb3b3a1fe167647b9fdb Mon Sep 17 00:00:00 2001
+From: Roman Byshko <rbyshko@gmail.com>
+Date: Wed, 18 Sep 2013 00:30:04 +0200
+Subject: [PATCH] ARM: sun4i: 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/sun4i-a10.dtsi | 52 ++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 52 insertions(+)
+
+diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi b/arch/arm/boot/dts/sun4i-a10.dtsi
+index 18e09b41..27dc6ee 100644
+--- a/arch/arm/boot/dts/sun4i-a10.dtsi
++++ b/arch/arm/boot/dts/sun4i-a10.dtsi
+@@ -377,6 +377,38 @@
+                       #size-cells = <0>;
+               };
++              usbphy: phy@01c13400 {
++                      #phy-cells = <1>;
++                      compatible = "allwinner,sun4i-a10-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,sun4i-a10-ehci", "generic-ehci";
++                      reg = <0x01c14000 0x100>;
++                      interrupts = <39>;
++                      clocks = <&ahb_gates 1>;
++                      phys = <&usbphy 1>;
++                      phy-names = "usb";
++                      status = "disabled";
++              };
++
++              ohci0: usb@01c14400 {
++                      compatible = "allwinner,sun4i-a10-ohci", "generic-ohci";
++                      reg = <0x01c14400 0x100>;
++                      interrupts = <64>;
++                      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>;
+@@ -396,6 +428,26 @@
+                       status = "disabled";
+               };
++              ehci1: usb@01c1c000 {
++                      compatible = "allwinner,sun4i-a10-ehci", "generic-ehci";
++                      reg = <0x01c1c000 0x100>;
++                      interrupts = <40>;
++                      clocks = <&ahb_gates 3>;
++                      phys = <&usbphy 2>;
++                      phy-names = "usb";
++                      status = "disabled";
++              };
++
++              ohci1: usb@01c1c400 {
++                      compatible = "allwinner,sun4i-a10-ohci", "generic-ohci";
++                      reg = <0x01c1c400 0x100>;
++                      interrupts = <65>;
++                      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
+