upgrade 3.13 targets to 3.13.2, refresh patches
[openwrt/staging/chunkeey.git] / target / linux / sunxi / patches-3.13 / 153-2-dt-sun5i-add-mmc.patch
1 From 48332fd7217cf5b06b438503513e54e6138e0637 Mon Sep 17 00:00:00 2001
2 From: Hans de Goede <hdegoede@redhat.com>
3 Date: Sat, 14 Dec 2013 22:58:14 +0100
4 Subject: [PATCH] ARM: dts: sun5i: Add support for mmc
5
6 Signed-off-by: Hans de Goede <hdegoede@redhat.com>
7 ---
8 arch/arm/boot/dts/sun5i-a10s-olinuxino-micro.dts | 32 ++++++++++++++++++++++
9 arch/arm/boot/dts/sun5i-a10s.dtsi | 34 ++++++++++++++++++++++++
10 arch/arm/boot/dts/sun5i-a13-olinuxino-micro.dts | 16 +++++++++++
11 arch/arm/boot/dts/sun5i-a13-olinuxino.dts | 16 +++++++++++
12 arch/arm/boot/dts/sun5i-a13.dtsi | 17 ++++++++++++
13 5 files changed, 115 insertions(+)
14
15 --- a/arch/arm/boot/dts/sun5i-a10s-olinuxino-micro.dts
16 +++ b/arch/arm/boot/dts/sun5i-a10s-olinuxino-micro.dts
17 @@ -34,7 +34,39 @@
18 };
19 };
20
21 + mmc0: mmc@01c0f000 {
22 + pinctrl-names = "default";
23 + pinctrl-0 = <&mmc0_pins_a>;
24 + pinctrl-1 = <&mmc0_cd_pin_olinuxino_micro>;
25 + cd-gpios = <&pio 6 1 0>; /* PG1 */
26 + cd-mode = <1>;
27 + status = "okay";
28 + };
29 +
30 + mmc1: mmc@01c10000 {
31 + pinctrl-names = "default";
32 + pinctrl-0 = <&mmc1_pins_a>;
33 + pinctrl-1 = <&mmc1_cd_pin_olinuxino_micro>;
34 + cd-gpios = <&pio 6 13 0>; /* PG13 */
35 + cd-mode = <1>;
36 + status = "okay";
37 + };
38 +
39 pinctrl@01c20800 {
40 + mmc0_cd_pin_olinuxino_micro: mmc0_cd_pin@0 {
41 + allwinner,pins = "PG1";
42 + allwinner,function = "gpio_in";
43 + allwinner,drive = <0>;
44 + allwinner,pull = <0>;
45 + };
46 +
47 + mmc1_cd_pin_olinuxino_micro: mmc1_cd_pin@0 {
48 + allwinner,pins = "PG13";
49 + allwinner,function = "gpio_in";
50 + allwinner,drive = <0>;
51 + allwinner,pull = <0>;
52 + };
53 +
54 led_pins_olinuxino: led_pins@0 {
55 allwinner,pins = "PE3";
56 allwinner,function = "gpio_out";
57 --- a/arch/arm/boot/dts/sun5i-a10s.dtsi
58 +++ b/arch/arm/boot/dts/sun5i-a10s.dtsi
59 @@ -293,6 +293,26 @@
60 #size-cells = <0>;
61 };
62
63 + mmc0: mmc@01c0f000 {
64 + compatible = "allwinner,sun5i-a13-mmc";
65 + reg = <0x01c0f000 0x1000>;
66 + clocks = <&ahb_gates 8>, <&mmc0_clk>;
67 + clock-names = "ahb", "mod";
68 + interrupts = <32>;
69 + bus-width = <4>;
70 + status = "disabled";
71 + };
72 +
73 + mmc1: mmc@01c10000 {
74 + compatible = "allwinner,sun5i-a13-mmc";
75 + reg = <0x01c10000 0x1000>;
76 + clocks = <&ahb_gates 9>, <&mmc1_clk>;
77 + clock-names = "ahb", "mod";
78 + interrupts = <33>;
79 + bus-width = <4>;
80 + status = "disabled";
81 + };
82 +
83 intc: interrupt-controller@01c20400 {
84 compatible = "allwinner,sun4i-ic";
85 reg = <0x01c20400 0x400>;
86 @@ -363,6 +383,20 @@
87 allwinner,drive = <0>;
88 allwinner,pull = <0>;
89 };
90 +
91 + mmc0_pins_a: mmc0@0 {
92 + allwinner,pins = "PF0","PF1","PF2","PF3","PF4","PF5";
93 + allwinner,function = "mmc0";
94 + allwinner,drive = <3>;
95 + allwinner,pull = <0>;
96 + };
97 +
98 + mmc1_pins_a: mmc1@0 {
99 + allwinner,pins = "PG3","PG4","PG5","PG6","PG7","PG8";
100 + allwinner,function = "mmc1";
101 + allwinner,drive = <3>;
102 + allwinner,pull = <0>;
103 + };
104 };
105
106 timer@01c20c00 {
107 --- a/arch/arm/boot/dts/sun5i-a13-olinuxino-micro.dts
108 +++ b/arch/arm/boot/dts/sun5i-a13-olinuxino-micro.dts
109 @@ -20,7 +20,23 @@
110 compatible = "olimex,a13-olinuxino-micro", "allwinner,sun5i-a13";
111
112 soc@01c00000 {
113 + mmc0: mmc@01c0f000 {
114 + pinctrl-names = "default";
115 + pinctrl-0 = <&mmc0_pins_a>;
116 + pinctrl-1 = <&mmc0_cd_pin_olinuxinom>;
117 + cd-gpios = <&pio 6 0 0>; /* PG0 */
118 + cd-mode = <1>;
119 + status = "okay";
120 + };
121 +
122 pinctrl@01c20800 {
123 + mmc0_cd_pin_olinuxinom: mmc0_cd_pin@0 {
124 + allwinner,pins = "PG0";
125 + allwinner,function = "gpio_in";
126 + allwinner,drive = <0>;
127 + allwinner,pull = <0>;
128 + };
129 +
130 led_pins_olinuxinom: led_pins@0 {
131 allwinner,pins = "PG9";
132 allwinner,function = "gpio_out";
133 --- a/arch/arm/boot/dts/sun5i-a13-olinuxino.dts
134 +++ b/arch/arm/boot/dts/sun5i-a13-olinuxino.dts
135 @@ -23,7 +23,23 @@
136 };
137
138 soc@01c00000 {
139 + mmc0: mmc@01c0f000 {
140 + pinctrl-names = "default";
141 + pinctrl-0 = <&mmc0_pins_a>;
142 + pinctrl-1 = <&mmc0_cd_pin_olinuxino>;
143 + cd-gpios = <&pio 6 0 0>; /* PG0 */
144 + cd-mode = <1>;
145 + status = "okay";
146 + };
147 +
148 pinctrl@01c20800 {
149 + mmc0_cd_pin_olinuxino: mmc0_cd_pin@0 {
150 + allwinner,pins = "PG0";
151 + allwinner,function = "gpio_in";
152 + allwinner,drive = <0>;
153 + allwinner,pull = <0>;
154 + };
155 +
156 led_pins_olinuxino: led_pins@0 {
157 allwinner,pins = "PG9";
158 allwinner,function = "gpio_out";
159 --- a/arch/arm/boot/dts/sun5i-a13.dtsi
160 +++ b/arch/arm/boot/dts/sun5i-a13.dtsi
161 @@ -274,6 +274,16 @@
162 #size-cells = <1>;
163 ranges;
164
165 + mmc0: mmc@01c0f000 {
166 + compatible = "allwinner,sun5i-a13-mmc";
167 + reg = <0x01c0f000 0x1000>;
168 + clocks = <&ahb_gates 8>, <&mmc0_clk>;
169 + clock-names = "ahb", "mod";
170 + interrupts = <32>;
171 + bus-width = <4>;
172 + status = "disabled";
173 + };
174 +
175 intc: interrupt-controller@01c20400 {
176 compatible = "allwinner,sun4i-ic";
177 reg = <0x01c20400 0x400>;
178 @@ -326,6 +336,13 @@
179 allwinner,drive = <0>;
180 allwinner,pull = <0>;
181 };
182 +
183 + mmc0_pins_a: mmc0@0 {
184 + allwinner,pins = "PF0","PF1","PF2","PF3","PF4","PF5";
185 + allwinner,function = "mmc0";
186 + allwinner,drive = <3>;
187 + allwinner,pull = <0>;
188 + };
189 };
190
191 timer@01c20c00 {