aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMagnus Damm <damm@opensource.se>2014-02-12 04:54:04 -0500
committerSimon Horman <horms+renesas@verge.net.au>2014-02-26 01:11:41 -0500
commit2c60a7df72711fb8b4be1e6aa651ab166a8931bc (patch)
tree80481586e7507f7896c4fb7fc5b985a8b74b41b3
parentb7ed8a0dd4f1d41464c3ab050c3688c4a7fc15b3 (diff)
ARM: shmobile: Add SDHI devices for Koelsch DTS
Add DT support for SDHI0, SDHI1 and SDHI2 on Koelsch. The board specific handling of CD and WP pins are using GPIOs. SDHI0 and SDHI1 are hooked up to regular SD connectors while SDHI2 is using micro-SD which is lacking WP signal. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-rw-r--r--arch/arm/boot/dts/r8a7791-koelsch.dts119
1 files changed, 119 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/r8a7791-koelsch.dts b/arch/arm/boot/dts/r8a7791-koelsch.dts
index 603af8caae5b..bdd73e6657b2 100644
--- a/arch/arm/boot/dts/r8a7791-koelsch.dts
+++ b/arch/arm/boot/dts/r8a7791-koelsch.dts
@@ -103,6 +103,78 @@
103 gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>; 103 gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
104 }; 104 };
105 }; 105 };
106
107 vcc_sdhi0: regulator@0 {
108 compatible = "regulator-fixed";
109
110 regulator-name = "SDHI0 Vcc";
111 regulator-min-microvolt = <3300000>;
112 regulator-max-microvolt = <3300000>;
113
114 gpio = <&gpio7 17 GPIO_ACTIVE_HIGH>;
115 enable-active-high;
116 };
117
118 vccq_sdhi0: regulator@1 {
119 compatible = "regulator-gpio";
120
121 regulator-name = "SDHI0 VccQ";
122 regulator-min-microvolt = <1800000>;
123 regulator-max-microvolt = <3300000>;
124
125 gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
126 gpios-states = <1>;
127 states = <3300000 1
128 1800000 0>;
129 };
130
131 vcc_sdhi1: regulator@2 {
132 compatible = "regulator-fixed";
133
134 regulator-name = "SDHI1 Vcc";
135 regulator-min-microvolt = <3300000>;
136 regulator-max-microvolt = <3300000>;
137
138 gpio = <&gpio7 18 GPIO_ACTIVE_HIGH>;
139 enable-active-high;
140 };
141
142 vccq_sdhi1: regulator@3 {
143 compatible = "regulator-gpio";
144
145 regulator-name = "SDHI1 VccQ";
146 regulator-min-microvolt = <1800000>;
147 regulator-max-microvolt = <3300000>;
148
149 gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
150 gpios-states = <1>;
151 states = <3300000 1
152 1800000 0>;
153 };
154
155 vcc_sdhi2: regulator@4 {
156 compatible = "regulator-fixed";
157
158 regulator-name = "SDHI2 Vcc";
159 regulator-min-microvolt = <3300000>;
160 regulator-max-microvolt = <3300000>;
161
162 gpio = <&gpio7 19 GPIO_ACTIVE_HIGH>;
163 enable-active-high;
164 };
165
166 vccq_sdhi2: regulator@5 {
167 compatible = "regulator-gpio";
168
169 regulator-name = "SDHI2 VccQ";
170 regulator-min-microvolt = <1800000>;
171 regulator-max-microvolt = <3300000>;
172
173 gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
174 gpios-states = <1>;
175 states = <3300000 1
176 1800000 0>;
177 };
106}; 178};
107 179
108&extal_clk { 180&extal_clk {
@@ -157,6 +229,21 @@
157 renesas,function = "intc"; 229 renesas,function = "intc";
158 }; 230 };
159 231
232 sdhi0_pins: sd0 {
233 renesas,gpios = "sdhi0_data4", "sdhi0_ctrl";
234 renesas,function = "sdhi0";
235 };
236
237 sdhi1_pins: sd1 {
238 renesas,gpios = "sdhi1_data4", "sdhi1_ctrl";
239 renesas,function = "sdhi1";
240 };
241
242 sdhi2_pins: sd2 {
243 renesas,gpios = "sdhi2_data4", "sdhi2_ctrl";
244 renesas,function = "sdhi2";
245 };
246
160 qspi_pins: spi { 247 qspi_pins: spi {
161 renesas,groups = "qspi_ctrl", "qspi_data4"; 248 renesas,groups = "qspi_ctrl", "qspi_data4";
162 renesas,function = "qspi"; 249 renesas,function = "qspi";
@@ -182,6 +269,38 @@
182 status = "okay"; 269 status = "okay";
183}; 270};
184 271
272&sdhi0 {
273 pinctrl-0 = <&sdhi0_pins>;
274 pinctrl-names = "default";
275
276 vmmc-supply = <&vcc_sdhi0>;
277 vqmmc-supply = <&vccq_sdhi0>;
278 cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
279 wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
280 status = "okay";
281};
282
283&sdhi1 {
284 pinctrl-0 = <&sdhi1_pins>;
285 pinctrl-names = "default";
286
287 vmmc-supply = <&vcc_sdhi1>;
288 vqmmc-supply = <&vccq_sdhi1>;
289 cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
290 wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
291 status = "okay";
292};
293
294&sdhi2 {
295 pinctrl-0 = <&sdhi2_pins>;
296 pinctrl-names = "default";
297
298 vmmc-supply = <&vcc_sdhi2>;
299 vqmmc-supply = <&vccq_sdhi2>;
300 cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>;
301 status = "okay";
302};
303
185&spi { 304&spi {
186 pinctrl-0 = <&qspi_pins>; 305 pinctrl-0 = <&qspi_pins>;
187 pinctrl-names = "default"; 306 pinctrl-names = "default";