ee7e2f189fad478b4050c9c72480d83518b337ea
[openwrt/openwrt.git] / target / linux / sunxi / patches-3.12 / 180-dt-sun7i-add-mmc.patch
1 From 665414c8e7584be7f1a30f77cf3eae177e93fd3e Mon Sep 17 00:00:00 2001
2 From: Hans de Goede <hdegoede@redhat.com>
3 Date: Sat, 14 Dec 2013 22:46:20 +0100
4 Subject: [PATCH] ARM: dts: sun7i: Add support for mmc
5
6 Signed-off-by: Hans de Goede <hdegoede@redhat.com>
7 ---
8 arch/arm/boot/dts/sun7i-a20-cubieboard2.dts | 16 ++++++++++++
9 arch/arm/boot/dts/sun7i-a20-cubietruck.dts | 16 ++++++++++++
10 arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts | 32 +++++++++++++++++++++++
11 arch/arm/boot/dts/sun7i-a20.dtsi | 34 +++++++++++++++++++++++++
12 4 files changed, 98 insertions(+)
13
14 diff --git a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
15 index 5c51cb8..6aef299 100644
16 --- a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
17 +++ b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
18 @@ -34,7 +34,23 @@
19 };
20 };
21
22 + sdc0: sdc@01c0f000 {
23 + pinctrl-names = "default";
24 + pinctrl-0 = <&sdc0_pins_a>;
25 + pinctrl-1 = <&mmc0_cd_pin_cubieboard2>;
26 + cd-gpios = <&pio 7 1 0>; /* PH1 */
27 + cd-mode = <1>;
28 + status = "okay";
29 + };
30 +
31 pinctrl@01c20800 {
32 + mmc0_cd_pin_cubieboard2: mmc0_cd_pin@0 {
33 + allwinner,pins = "PH1";
34 + allwinner,function = "gpio_in";
35 + allwinner,drive = <0>;
36 + allwinner,pull = <0>;
37 + };
38 +
39 led_pins_cubieboard2: led_pins@0 {
40 allwinner,pins = "PH20", "PH21";
41 allwinner,function = "gpio_out";
42 diff --git a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
43 index 8a1009d..302c785 100644
44 diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts
45 index ead3013..f271db9 100644
46 --- a/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts
47 +++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts
48 @@ -34,7 +34,39 @@
49 };
50 };
51
52 + sdc0: sdc@01c0f000 {
53 + pinctrl-names = "default";
54 + pinctrl-0 = <&sdc0_pins_a>;
55 + pinctrl-1 = <&mmc0_cd_pin_olinuxinom>;
56 + cd-gpios = <&pio 7 1 0>; /* PH1 */
57 + cd-mode = <1>;
58 + status = "okay";
59 + };
60 +
61 + sdc3: sdc@01c12000 {
62 + pinctrl-names = "default";
63 + pinctrl-0 = <&sdc3_pins_a>;
64 + pinctrl-1 = <&mmc3_cd_pin_olinuxinom>;
65 + cd-gpios = <&pio 7 11 0>; /* PH11 */
66 + cd-mode = <1>;
67 + status = "okay";
68 + };
69 +
70 pinctrl@01c20800 {
71 + mmc0_cd_pin_olinuxinom: mmc0_cd_pin@0 {
72 + allwinner,pins = "PH1";
73 + allwinner,function = "gpio_in";
74 + allwinner,drive = <0>;
75 + allwinner,pull = <0>;
76 + };
77 +
78 + mmc3_cd_pin_olinuxinom: mmc3_cd_pin@0 {
79 + allwinner,pins = "PH11";
80 + allwinner,function = "gpio_in";
81 + allwinner,drive = <0>;
82 + allwinner,pull = <0>;
83 + };
84 +
85 led_pins_olinuxino: led_pins@0 {
86 allwinner,pins = "PH2";
87 allwinner,function = "gpio_out";
88 diff --git a/arch/arm/boot/dts/sun7i-a20.dtsi b/arch/arm/boot/dts/sun7i-a20.dtsi
89 index 63757c5..5f9440c 100644
90 --- a/arch/arm/boot/dts/sun7i-a20.dtsi
91 +++ b/arch/arm/boot/dts/sun7i-a20.dtsi
92 @@ -303,6 +303,26 @@
93 #size-cells = <0>;
94 };
95
96 + sdc0: sdc@01c0f000 {
97 + compatible = "allwinner,sun5i-mmc";
98 + reg = <0x01c0f000 0x1000>;
99 + clocks = <&ahb_gates 8>, <&mmc0>;
100 + clock-names = "ahb", "mod";
101 + interrupts = <0 32 4>;
102 + bus-width = <4>;
103 + status = "disabled";
104 + };
105 +
106 + sdc3: sdc@01c12000 {
107 + compatible = "allwinner,sun5i-mmc";
108 + reg = <0x01c12000 0x1000>;
109 + clocks = <&ahb_gates 11>, <&mmc3>;
110 + clock-names = "ahb", "mod";
111 + interrupts = <0 35 4>;
112 + bus-width = <4>;
113 + status = "disabled";
114 + };
115 +
116 pio: pinctrl@01c20800 {
117 compatible = "allwinner,sun7i-a20-pinctrl";
118 reg = <0x01c20800 0x400>;
119 @@ -366,6 +386,20 @@
120 allwinner,drive = <0>;
121 allwinner,pull = <0>;
122 };
123 +
124 + sdc0_pins_a: sdc0@0 {
125 + allwinner,pins = "PF0","PF1","PF2","PF3","PF4","PF5";
126 + allwinner,function = "mmc0";
127 + allwinner,drive = <3>;
128 + allwinner,pull = <1>;
129 + };
130 +
131 + sdc3_pins_a: sdc3@0 {
132 + allwinner,pins = "PI4","PI5","PI6","PI7","PI8","PI9";
133 + allwinner,function = "mmc3";
134 + allwinner,drive = <3>;
135 + allwinner,pull = <1>;
136 + };
137 };
138
139 timer@01c20c00 {
140 --
141 1.8.5.1
142