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