sunxi: initial 3.14 patchset
[openwrt/openwrt.git] / target / linux / sunxi / patches-3.14 / 201-dt-sun4i-add-mmc-nodes_NEED_REFRESH.patch
diff --git a/target/linux/sunxi/patches-3.14/201-dt-sun4i-add-mmc-nodes_NEED_REFRESH.patch b/target/linux/sunxi/patches-3.14/201-dt-sun4i-add-mmc-nodes_NEED_REFRESH.patch
new file mode 100644 (file)
index 0000000..a6261cd
--- /dev/null
@@ -0,0 +1,195 @@
+From b66989fe7a41e1093b1f825967ab29963e06cccd Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?David=20Lanzend=C3=B6rfer?= <david.lanzendoerfer@o2s.ch>
+Date: Sat, 15 Feb 2014 14:02:51 +0100
+Subject: [PATCH] ARM: dts: sun4i: Add support for mmc
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: David Lanzendörfer <david.lanzendoerfer@o2s.ch>
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+---
+ arch/arm/boot/dts/sun4i-a10-a1000.dts      |  8 +++++
+ arch/arm/boot/dts/sun4i-a10-cubieboard.dts |  8 +++++
+ arch/arm/boot/dts/sun4i-a10.dtsi           | 58 ++++++++++++++++++++++++++++++
+ 3 files changed, 74 insertions(+)
+
+diff --git a/arch/arm/boot/dts/sun4i-a10-a1000.dts b/arch/arm/boot/dts/sun4i-a10-a1000.dts
+index fa746aea..68b687e 100644
+diff --git a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
+index 4684cbe..13088f0 100644
+--- a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
++++ b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
+@@ -34,6 +34,14 @@
+                       };
+               };
++              mmc0: mmc@01c0f000 {
++                      pinctrl-names = "default", "default";
++                      pinctrl-0 = <&mmc0_pins_a>;
++                      pinctrl-1 = <&mmc0_cd_pin_reference_design>;
++                      cd-gpios = <&pio 7 1 0>; /* PH1 */
++                      status = "okay";
++              };
++
+               usbphy: phy@01c13400 {
+                       usb1_vbus-supply = <&reg_usb1_vbus>;
+                       usb2_vbus-supply = <&reg_usb2_vbus>;
+diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi b/arch/arm/boot/dts/sun4i-a10.dtsi
+index 27dc6ee..7014518 100644
+--- a/arch/arm/boot/dts/sun4i-a10.dtsi
++++ b/arch/arm/boot/dts/sun4i-a10.dtsi
+@@ -377,6 +377,50 @@
+                       #size-cells = <0>;
+               };
++              mmc0: mmc@01c0f000 {
++                      compatible = "allwinner,sun4i-a10-mmc";
++                      reg = <0x01c0f000 0x1000>;
++                      clocks = <&ahb_gates 8>, <&mmc0_clk>;
++                      clock-names = "ahb", "mod";
++                      interrupts = <32>;
++                      bus-width = <4>;
++                      cd-inverted;
++                      status = "disabled";
++              };
++
++              mmc1: mmc@01c10000 {
++                      compatible = "allwinner,sun4i-a10-mmc";
++                      reg = <0x01c10000 0x1000>;
++                      clocks = <&ahb_gates 9>, <&mmc1_clk>;
++                      clock-names = "ahb", "mod";
++                      interrupts = <33>;
++                      bus-width = <4>;
++                      cd-inverted;
++                      status = "disabled";
++              };
++
++              mmc2: mmc@01c11000 {
++                      compatible = "allwinner,sun4i-a10-mmc";
++                      reg = <0x01c11000 0x1000>;
++                      clocks = <&ahb_gates 10>, <&mmc2_clk>;
++                      clock-names = "ahb", "mod";
++                      interrupts = <34>;
++                      bus-width = <4>;
++                      cd-inverted;
++                      status = "disabled";
++              };
++
++              mmc3: mmc@01c12000 {
++                      compatible = "allwinner,sun4i-a10-mmc";
++                      reg = <0x01c12000 0x1000>;
++                      clocks = <&ahb_gates 11>, <&mmc3_clk>;
++                      clock-names = "ahb", "mod";
++                      interrupts = <35>;
++                      bus-width = <4>;
++                      cd-inverted;
++                      status = "disabled";
++              };
++
+               usbphy: phy@01c13400 {
+                       #phy-cells = <1>;
+                       compatible = "allwinner,sun4i-a10-usb-phy";
+@@ -529,6 +573,20 @@
+                               allwinner,drive = <0>;
+                               allwinner,pull = <0>;
+                       };
++
++                      mmc0_pins_a: mmc0@0 {
++                              allwinner,pins = "PF0","PF1","PF2","PF3","PF4","PF5";
++                              allwinner,function = "mmc0";
++                              allwinner,drive = <2>;
++                              allwinner,pull = <0>;
++                      };
++
++                      mmc0_cd_pin_reference_design: mmc0_cd_pin@0 {
++                              allwinner,pins = "PH1";
++                              allwinner,function = "gpio_in";
++                              allwinner,drive = <0>;
++                              allwinner,pull = <1>;
++                      };
+               };
+               timer@01c20c00 {
+-- 
+2.0.3
+
+From c0b8d688678e4a652895ce5f0cd48917a9a4f6ba Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Sat, 11 Jan 2014 04:33:23 +0100
+Subject: [PATCH] ARM: sun4i: dt: Add mmc node to a few more boards
+
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+---
+ arch/arm/boot/dts/sun4i-a10-hackberry.dts      | 9 +++++++++
+ arch/arm/boot/dts/sun4i-a10-inet97fv2.dts      | 9 +++++++++
+ arch/arm/boot/dts/sun4i-a10-mini-xplus.dts     | 8 ++++++++
+ arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts | 9 +++++++++
+ arch/arm/boot/dts/sun4i-a10-pcduino.dts        | 8 ++++++++
+ 5 files changed, 43 insertions(+)
+
+diff --git a/arch/arm/boot/dts/sun4i-a10-hackberry.dts b/arch/arm/boot/dts/sun4i-a10-hackberry.dts
+index d7c17e4..a4b05d6 100644
+diff --git a/arch/arm/boot/dts/sun4i-a10-inet97fv2.dts b/arch/arm/boot/dts/sun4i-a10-inet97fv2.dts
+index fe9272e..b73a070 100644
+diff --git a/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts b/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts
+index dd84a9e3..c906171 100644
+--- a/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts
++++ b/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts
+@@ -20,6 +20,14 @@
+       compatible = "pineriver,mini-xplus", "allwinner,sun4i-a10";
+       soc@01c00000 {
++              mmc0: mmc@01c0f000 {
++                      pinctrl-names = "default", "default";
++                      pinctrl-0 = <&mmc0_pins_a>;
++                      pinctrl-1 = <&mmc0_cd_pin_reference_design>;
++                      cd-gpios = <&pio 7 1 0>; /* PH1 */
++                      status = "okay";
++              };
++
+               usbphy: phy@01c13400 {
+                       usb1_vbus-supply = <&reg_usb1_vbus>;
+                       usb2_vbus-supply = <&reg_usb2_vbus>;
+diff --git a/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts b/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts
+index 66cf0c7..e5a2765 100644
+--- a/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts
++++ b/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts
+@@ -33,6 +33,15 @@
+                       };
+               };
++              mmc0: mmc@01c0f000 {
++                      pinctrl-names = "default", "default";
++                      pinctrl-0 = <&mmc0_pins_a>;
++                      pinctrl-1 = <&mmc0_cd_pin_reference_design>;
++                      cd-gpios = <&pio 7 1 0>; /* PH1 */
++                      cd-mode = <1>;
++                      status = "okay";
++              };
++
+               usbphy: phy@01c13400 {
+                       usb1_vbus-supply = <&reg_usb1_vbus>;
+                       usb2_vbus-supply = <&reg_usb2_vbus>;
+diff --git a/arch/arm/boot/dts/sun4i-a10-pcduino.dts b/arch/arm/boot/dts/sun4i-a10-pcduino.dts
+index 255b47e..2820229 100644
+--- a/arch/arm/boot/dts/sun4i-a10-pcduino.dts
++++ b/arch/arm/boot/dts/sun4i-a10-pcduino.dts
+@@ -34,6 +34,14 @@
+                       };
+               };
++              mmc0: mmc@01c0f000 {
++                      pinctrl-names = "default", "default";
++                      pinctrl-0 = <&mmc0_pins_a>;
++                      pinctrl-1 = <&mmc0_cd_pin_reference_design>;
++                      cd-gpios = <&pio 7 1 0>; /* PH1 */
++                      status = "okay";
++              };
++
+               usbphy: phy@01c13400 {
+                       usb1_vbus-supply = <&reg_usb1_vbus>;
+                       usb2_vbus-supply = <&reg_usb2_vbus>;
+-- 
+2.0.3
+