sunxi: initial 3.13 support
[openwrt/staging/yousong.git] / target / linux / sunxi / patches-3.13 / 153-1-dt-sun4i-add-mmc.patch
1 From 677631fa522e4ac24f636535e3abb5cd1a5ef40e Mon Sep 17 00:00:00 2001
2 From: Hans de Goede <hdegoede@redhat.com>
3 Date: Sat, 14 Dec 2013 22:58:12 +0100
4 Subject: [PATCH] ARM: dts: sun4i: Add support for mmc
5
6 Signed-off-by: Hans de Goede <hdegoede@redhat.com>
7 ---
8 arch/arm/boot/dts/sun4i-a10-a1000.dts | 16 ++++++++++++++++
9 arch/arm/boot/dts/sun4i-a10-cubieboard.dts | 16 ++++++++++++++++
10 arch/arm/boot/dts/sun4i-a10.dtsi | 17 +++++++++++++++++
11 3 files changed, 49 insertions(+)
12
13 diff --git a/arch/arm/boot/dts/sun4i-a10-a1000.dts b/arch/arm/boot/dts/sun4i-a10-a1000.dts
14 index eb4d73b..aef8207 100644
15 --- a/arch/arm/boot/dts/sun4i-a10-a1000.dts
16 +++ b/arch/arm/boot/dts/sun4i-a10-a1000.dts
17 @@ -39,7 +39,23 @@
18 };
19 };
20
21 + mmc0: mmc@01c0f000 {
22 + pinctrl-names = "default";
23 + pinctrl-0 = <&mmc0_pins_a>;
24 + pinctrl-1 = <&mmc0_cd_pin_a1000>;
25 + cd-gpios = <&pio 7 1 0>; /* PH1 */
26 + cd-mode = <1>;
27 + status = "okay";
28 + };
29 +
30 pinctrl@01c20800 {
31 + mmc0_cd_pin_a1000: mmc0_cd_pin@0 {
32 + allwinner,pins = "PH1";
33 + allwinner,function = "gpio_in";
34 + allwinner,drive = <0>;
35 + allwinner,pull = <0>;
36 + };
37 +
38 emac_power_pin_a1000: emac_power_pin@0 {
39 allwinner,pins = "PH15";
40 allwinner,function = "gpio_out";
41 diff --git a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
42 index 425a7db..f50fb2b 100644
43 --- a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
44 +++ b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
45 @@ -42,7 +42,23 @@
46 };
47 };
48
49 + mmc0: mmc@01c0f000 {
50 + pinctrl-names = "default";
51 + pinctrl-0 = <&mmc0_pins_a>;
52 + pinctrl-1 = <&mmc0_cd_pin_cubieboard>;
53 + cd-gpios = <&pio 7 1 0>; /* PH1 */
54 + cd-mode = <1>;
55 + status = "okay";
56 + };
57 +
58 pinctrl@01c20800 {
59 + mmc0_cd_pin_cubieboard: mmc0_cd_pin@0 {
60 + allwinner,pins = "PH1";
61 + allwinner,function = "gpio_in";
62 + allwinner,drive = <0>;
63 + allwinner,pull = <0>;
64 + };
65 +
66 led_pins_cubieboard: led_pins@0 {
67 allwinner,pins = "PH20", "PH21";
68 allwinner,function = "gpio_out";
69 diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi b/arch/arm/boot/dts/sun4i-a10.dtsi
70 index 9779c6b..4736dd2 100644
71 --- a/arch/arm/boot/dts/sun4i-a10.dtsi
72 +++ b/arch/arm/boot/dts/sun4i-a10.dtsi
73 @@ -321,6 +321,16 @@
74 #size-cells = <0>;
75 };
76
77 + mmc0: mmc@01c0f000 {
78 + compatible = "allwinner,sun4i-a10-mmc";
79 + reg = <0x01c0f000 0x1000>;
80 + clocks = <&ahb_gates 8>, <&mmc0_clk>;
81 + clock-names = "ahb", "mod";
82 + interrupts = <32>;
83 + bus-width = <4>;
84 + status = "disabled";
85 + };
86 +
87 intc: interrupt-controller@01c20400 {
88 compatible = "allwinner,sun4i-ic";
89 reg = <0x01c20400 0x400>;
90 @@ -391,6 +401,13 @@
91 allwinner,drive = <0>;
92 allwinner,pull = <0>;
93 };
94 +
95 + mmc0_pins_a: mmc0@0 {
96 + allwinner,pins = "PF0","PF1","PF2","PF3","PF4","PF5";
97 + allwinner,function = "mmc0";
98 + allwinner,drive = <3>;
99 + allwinner,pull = <0>;
100 + };
101 };
102
103 timer@01c20c00 {
104 --
105 1.8.5.1
106