ARM: dts: armada388-clearfog: enable spi flash
[linux-2.6-block.git] / arch / arm / boot / dts / spear1340-evb.dts
CommitLineData
07658d9a
VK
1/*
2 * DTS file for SPEAr1340 Evaluation Baord
3 *
da89947b 4 * Copyright 2012 Viresh Kumar <vireshk@kernel.org>
07658d9a
VK
5 *
6 * The code contained herein is licensed under the GNU General Public
7 * License. You may obtain a copy of the GNU General Public License
8 * Version 2 or later at the following locations:
9 *
10 * http://www.opensource.org/licenses/gpl-license.html
11 * http://www.gnu.org/copyleft/gpl.html
12 */
13
14/dts-v1/;
15/include/ "spear1340.dtsi"
16
17/ {
18 model = "ST SPEAr1340 Evaluation Board";
19 compatible = "st,spear1340-evb", "st,spear1340";
20 #address-cells = <1>;
21 #size-cells = <1>;
22
23 memory {
24 reg = <0 0x40000000>;
25 };
26
27 ahb {
28 pinmux@e0700000 {
29 pinctrl-names = "default";
30 pinctrl-0 = <&state_default>;
31
32 state_default: pinmux {
33 pads_as_gpio {
34 st,pins = "pads_as_gpio_grp";
35 st,function = "pads_as_gpio";
36 };
37 fsmc {
38 st,pins = "fsmc_8bit_grp";
39 st,function = "fsmc";
40 };
07658d9a 41 uart0 {
7db083e0 42 st,pins = "uart0_grp";
07658d9a
VK
43 st,function = "uart0";
44 };
7db083e0 45 i2c0 {
07658d9a
VK
46 st,pins = "i2c0_grp";
47 st,function = "i2c0";
48 };
7db083e0 49 i2c1 {
07658d9a
VK
50 st,pins = "i2c1_grp";
51 st,function = "i2c1";
52 };
53 spdif-in {
54 st,pins = "spdif_in_grp";
55 st,function = "spdif_in";
56 };
57 spdif-out {
58 st,pins = "spdif_out_grp";
59 st,function = "spdif_out";
60 };
61 ssp0 {
7db083e0 62 st,pins = "ssp0_grp", "ssp0_cs1_grp", "ssp0_cs2_grp", "ssp0_cs3_grp";
07658d9a
VK
63 st,function = "ssp0";
64 };
07658d9a
VK
65 smi-pmx {
66 st,pins = "smi_grp";
67 st,function = "smi";
68 };
69 i2s {
70 st,pins = "i2s_in_grp", "i2s_out_grp";
71 st,function = "i2s";
72 };
73 gmac {
74 st,pins = "gmii_grp", "rgmii_grp";
75 st,function = "gmac";
76 };
7db083e0
VKS
77 cam0 {
78 st,pins = "cam0_grp";
79 st,function = "cam0";
80 };
81 cam1 {
82 st,pins = "cam1_grp";
83 st,function = "cam1";
84 };
85 cam2 {
86 st,pins = "cam2_grp";
87 st,function = "cam2";
88 };
07658d9a
VK
89 cam3 {
90 st,pins = "cam3_grp";
91 st,function = "cam3";
92 };
93 cec0 {
94 st,pins = "cec0_grp";
95 st,function = "cec0";
96 };
97 cec1 {
98 st,pins = "cec1_grp";
99 st,function = "cec1";
100 };
101 sdhci {
102 st,pins = "sdhci_grp";
103 st,function = "sdhci";
104 };
105 clcd {
106 st,pins = "clcd_grp";
107 st,function = "clcd";
108 };
109 sata {
110 st,pins = "sata_grp";
111 st,function = "sata";
112 };
7db083e0
VKS
113 pcie {
114 st,pins = "pcie_grp";
115 st,function = "pcie";
116 };
117
07658d9a
VK
118 };
119 };
120
8113ba91
SH
121 ahci@b1000000 {
122 status = "okay";
123 };
124
549f3ae1
PA
125 miphy@eb800000 {
126 status = "okay";
127 };
128
07658d9a
VK
129 dma@ea800000 {
130 status = "okay";
131 };
132
133 dma@eb000000 {
134 status = "okay";
135 };
136
137 fsmc: flash@b0000000 {
138 status = "okay";
482a8f3f
VK
139
140 partition@0 {
141 label = "xloader";
142 reg = <0x0 0x200000>;
143 };
144 partition@200000 {
145 label = "u-boot";
146 reg = <0x200000 0x200000>;
147 };
148 partition@400000 {
149 label = "environment";
150 reg = <0x400000 0x100000>;
151 };
152 partition@500000 {
153 label = "dtb";
154 reg = <0x500000 0x100000>;
155 };
156 partition@600000 {
157 label = "linux";
158 reg = <0x600000 0xC00000>;
159 };
160 partition@1200000 {
161 label = "rootfs";
162 reg = <0x1200000 0x0>;
163 };
07658d9a
VK
164 };
165
166 gmac0: eth@e2000000 {
4c7a078f 167 phy-mode = "rgmii";
07658d9a
VK
168 status = "okay";
169 };
170
171 sdhci@b3000000 {
172 status = "okay";
173 };
174
175 smi: flash@ea000000 {
176 status = "okay";
177 clock-rate=<50000000>;
178
179 flash@e6000000 {
180 #address-cells = <1>;
181 #size-cells = <1>;
182 reg = <0xe6000000 0x800000>;
183 st,smi-fast-mode;
184
185 partition@0 {
186 label = "xloader";
187 reg = <0x0 0x10000>;
188 };
189 partition@10000 {
190 label = "u-boot";
482a8f3f
VK
191 reg = <0x10000 0x50000>;
192 };
193 partition@60000 {
194 label = "environment";
195 reg = <0x60000 0x10000>;
196 };
197 partition@70000 {
198 label = "dtb";
199 reg = <0x70000 0x10000>;
07658d9a 200 };
482a8f3f 201 partition@80000 {
07658d9a 202 label = "linux";
482a8f3f 203 reg = <0x80000 0x310000>;
07658d9a 204 };
482a8f3f 205 partition@390000 {
07658d9a 206 label = "rootfs";
482a8f3f 207 reg = <0x390000 0x0>;
07658d9a
VK
208 };
209 };
210 };
211
07658d9a
VK
212 ehci@e4800000 {
213 status = "okay";
214 };
215
8113ba91
SH
216 gpio_keys {
217 compatible = "gpio-keys";
218 #address-cells = <1>;
219 #size-cells = <0>;
220
221 button@1 {
222 label = "wakeup";
223 linux,code = <0x100>;
224 gpios = <&gpio1 1 0x4>;
225 debounce-interval = <20>;
a6b17868 226 wakeup-source;
8113ba91
SH
227 };
228 };
229
07658d9a
VK
230 ehci@e5800000 {
231 status = "okay";
232 };
233
8113ba91
SH
234 i2s0: i2s-play@b2400000 {
235 status = "okay";
236 };
237
238 i2s1: i2s-rec@b2000000 {
239 status = "okay";
240 };
241
242 incodec: dir-hifi {
243 compatible = "dummy,dir-hifi";
244 status = "okay";
245 };
246
07658d9a
VK
247 ohci@e4000000 {
248 status = "okay";
249 };
250
251 ohci@e5000000 {
252 status = "okay";
253 };
254
8113ba91
SH
255 outcodec: dit-hifi {
256 compatible = "dummy,dit-hifi";
257 status = "okay";
258 };
259
260 sound {
261 compatible = "spear,spear-evb";
262 audio-controllers = <&spdif0 &spdif1 &i2s0 &i2s1>;
263 audio-codecs = <&incodec &outcodec &sta529 &sta529>;
264 codec_dai_name = "dir-hifi", "dit-hifi", "sta529-audio", "sta529-audio";
265 stream_name = "spdif-cap", "spdif-play", "i2s-play", "i2s-cap";
266 dai_name = "spdifin-pcm", "spdifout-pcm", "i2s0-pcm", "i2s1-pcm";
267 nr_controllers = <4>;
268 status = "okay";
269 };
270
271 spdif0: spdif-in@d0100000 {
272 status = "okay";
273 };
274
275 spdif1: spdif-out@d0000000 {
276 status = "okay";
277 };
278
07658d9a
VK
279 apb {
280 adc@e0080000 {
281 status = "okay";
282 };
283
8113ba91
SH
284 i2s-play@b2400000 {
285 status = "okay";
286 };
287
288 i2s-rec@b2000000 {
289 status = "okay";
290 };
291
07658d9a
VK
292 gpio0: gpio@e0600000 {
293 status = "okay";
294 };
295
296 gpio1: gpio@e0680000 {
297 status = "okay";
298 };
299
4ddb1c29
VK
300 gpio@e2800000 {
301 status = "okay";
302 };
303
07658d9a
VK
304 i2c0: i2c@e0280000 {
305 status = "okay";
8113ba91
SH
306
307 sta529: sta529@1a {
308 compatible = "st,sta529";
309 reg = <0x1a>;
310 };
07658d9a
VK
311 };
312
313 i2c1: i2c@b4000000 {
314 status = "okay";
8113ba91
SH
315
316 eeprom0@56 {
317 compatible = "st,eeprom";
318 reg = <0x56>;
319 };
320
321 stmpe801@41 {
322 compatible = "st,stmpe801";
323 #address-cells = <1>;
324 #size-cells = <0>;
325 reg = <0x41>;
326 interrupts = <4 0x4>;
327 interrupt-parent = <&gpio0>;
328 irq-trigger = <0x2>;
329
330 stmpegpio: stmpe_gpio {
331 compatible = "st,stmpe-gpio";
332 gpio-controller;
333 #gpio-cells = <2>;
334 };
335 };
07658d9a
VK
336 };
337
338 kbd@e0300000 {
339 linux,keymap = < 0x00000001
340 0x00010002
341 0x00020003
342 0x00030004
343 0x00040005
344 0x00050006
345 0x00060007
346 0x00070008
347 0x00080009
348 0x0100000a
349 0x0101000c
350 0x0102000d
351 0x0103000e
352 0x0104000f
353 0x01050010
354 0x01060011
355 0x01070012
356 0x01080013
357 0x02000014
358 0x02010015
359 0x02020016
360 0x02030017
361 0x02040018
362 0x02050019
363 0x0206001a
364 0x0207001b
365 0x0208001c
366 0x0300001d
367 0x0301001e
368 0x0302001f
369 0x03030020
370 0x03040021
371 0x03050022
372 0x03060023
373 0x03070024
374 0x03080025
375 0x04000026
376 0x04010027
377 0x04020028
378 0x04030029
379 0x0404002a
380 0x0405002b
381 0x0406002c
382 0x0407002d
383 0x0408002e
384 0x0500002f
385 0x05010030
386 0x05020031
387 0x05030032
388 0x05040033
389 0x05050034
390 0x05060035
391 0x05070036
392 0x05080037
393 0x06000038
394 0x06010039
395 0x0602003a
396 0x0603003b
397 0x0604003c
398 0x0605003d
399 0x0606003e
400 0x0607003f
401 0x06080040
402 0x07000041
403 0x07010042
404 0x07020043
405 0x07030044
406 0x07040045
407 0x07050046
408 0x07060047
409 0x07070048
410 0x07080049
411 0x0800004a
412 0x0801004b
413 0x0802004c
414 0x0803004d
415 0x0804004e
416 0x0805004f
417 0x08060050
418 0x08070051
419 0x08080052 >;
420 autorepeat;
421 st,mode = <0>;
f631b984 422 suspended_rate = <2000000>;
07658d9a
VK
423 status = "okay";
424 };
425
426 rtc@e0580000 {
427 status = "okay";
428 };
429
430 serial@e0000000 {
431 status = "okay";
7bceba83
VKS
432 pinctrl-names = "default";
433 pinctrl-0 = <>;
07658d9a
VK
434 };
435
436 serial@b4100000 {
437 status = "okay";
7bceba83
VKS
438 pinctrl-names = "default";
439 pinctrl-0 = <>;
07658d9a
VK
440 };
441
f631b984
VKS
442 spi0: spi@e0100000 {
443 status = "okay";
8113ba91
SH
444 num-cs = <3>;
445 cs-gpios = <&gpiopinctrl 80 0>, <&gpiopinctrl 24 0>,
446 <&gpiopinctrl 85 0>;
447
448 m25p80@0 {
449 compatible = "m25p80";
450 reg = <0>;
451 spi-max-frequency = <12000000>;
452 spi-cpol;
453 spi-cpha;
454 pl022,hierarchy = <0>;
455 pl022,interface = <0>;
456 pl022,slave-tx-disable;
457 pl022,com-mode = <0x2>;
458 pl022,rx-level-trig = <0>;
459 pl022,tx-level-trig = <0>;
460 pl022,ctrl-len = <0x11>;
461 pl022,wait-state = <0>;
462 pl022,duplex = <0>;
463 };
464
465 stmpe610@1 {
466 compatible = "st,stmpe610";
467 spi-max-frequency = <1000000>;
468 spi-cpha;
469 reg = <1>;
470 pl022,hierarchy = <0>;
471 pl022,interface = <0>;
472 pl022,slave-tx-disable;
473 pl022,com-mode = <0>;
474 pl022,rx-level-trig = <0>;
475 pl022,tx-level-trig = <0>;
476 pl022,ctrl-len = <0x7>;
477 pl022,wait-state = <0>;
478 pl022,duplex = <0>;
479 interrupts = <100 0>;
480 interrupt-parent = <&gpiopinctrl>;
481 irq-trigger = <0x2>;
482 #address-cells = <1>;
483 #size-cells = <0>;
484
485 stmpe_touchscreen {
486 compatible = "st,stmpe-ts";
487 ts,sample-time = <4>;
488 ts,mod-12b = <1>;
489 ts,ref-sel = <0>;
490 ts,adc-freq = <1>;
491 ts,ave-ctrl = <1>;
492 ts,touch-det-delay = <2>;
493 ts,settling = <2>;
494 ts,fraction-z = <7>;
495 ts,i-drive = <1>;
496 };
497 };
498
499 spidev@2 {
500 compatible = "spidev";
501 reg = <2>;
502 spi-max-frequency = <25000000>;
503 spi-cpha;
504 pl022,hierarchy = <0>;
505 pl022,interface = <0>;
506 pl022,slave-tx-disable;
507 pl022,com-mode = <0x2>;
508 pl022,rx-level-trig = <0>;
509 pl022,tx-level-trig = <0>;
510 pl022,ctrl-len = <0x11>;
511 pl022,wait-state = <0>;
512 pl022,duplex = <0>;
513 };
514 };
515
516 timer@ec800600 {
517 status = "okay";
f631b984
VKS
518 };
519
07658d9a
VK
520 wdt@ec800620 {
521 status = "okay";
522 };
523 };
524 };
525};