blob: 31a86606bedaede9539a950c127bcd2b8d03e112 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * Copyright 2013 Linaro Ltd.
4 */
5
6#include "ste-nomadik-pinctrl.dtsi"
7
8&pinctrl {
9 /* Settings for all UART default and sleep states */
10 uart0 {
11 u0_a_1_default: u0_a_1_default {
12 default_mux {
13 function = "u0";
14 groups = "u0_a_1";
15 };
16 default_cfg1 {
17 pins = "GPIO0_AJ5", "GPIO2_AH4"; /* CTS+RXD */
18 ste,config = <&in_pu>;
19 };
20 default_cfg2 {
21 pins = "GPIO1_AJ3", "GPIO3_AH3"; /* RTS+TXD */
22 ste,config = <&out_hi>;
23 };
24 };
25
26 u0_a_1_sleep: u0_a_1_sleep {
27 sleep_cfg1 {
28 pins = "GPIO0_AJ5", "GPIO2_AH4"; /* CTS+RXD */
29 ste,config = <&slpm_in_wkup_pdis>;
30 };
31 sleep_cfg2 {
32 pins = "GPIO1_AJ3"; /* RTS */
33 ste,config = <&slpm_out_hi_wkup_pdis>;
34 };
35 sleep_cfg3 {
36 pins = "GPIO3_AH3"; /* TXD */
37 ste,config = <&slpm_out_wkup_pdis>;
38 };
39 };
40 };
41
42 uart1 {
43 u1rxtx_a_1_default: u1rxtx_a_1_default {
44 default_mux {
45 function = "u1";
46 groups = "u1rxtx_a_1";
47 };
48 default_cfg1 {
49 pins = "GPIO4_AH6"; /* RXD */
50 ste,config = <&in_pu>;
51 };
52 default_cfg2 {
53 pins = "GPIO5_AG6"; /* TXD */
54 ste,config = <&out_hi>;
55 };
56 };
57
58 u1rxtx_a_1_sleep: u1rxtx_a_1_sleep {
59 sleep_cfg1 {
60 pins = "GPIO4_AH6"; /* RXD */
61 ste,config = <&slpm_in_wkup_pdis>;
62 };
63 sleep_cfg2 {
64 pins = "GPIO5_AG6"; /* TXD */
65 ste,config = <&slpm_out_wkup_pdis>;
66 };
67 };
68
69 u1ctsrts_a_1_default: u1ctsrts_a_1_default {
70 default_mux {
71 function = "u1";
72 groups = "u1ctsrts_a_1";
73 };
74 default_cfg1 {
75 pins = "GPIO6_AF6"; /* CTS */
76 ste,config = <&in_pu>;
77 };
78 default_cfg2 {
79 pins = "GPIO7_AG5"; /* RTS */
80 ste,config = <&out_hi>;
81 };
82 };
83
84 u1ctsrts_a_1_sleep: u1ctsrts_a_1_sleep {
85 sleep_cfg1 {
86 pins = "GPIO6_AF6"; /* CTS */
87 ste,config = <&slpm_in_wkup_pdis>;
88 };
89 sleep_cfg2 {
90 pins = "GPIO7_AG5"; /* RTS */
91 ste,config = <&slpm_out_hi_wkup_pdis>;
92 };
93 };
94 };
95
96 uart2 {
97 u2rxtx_c_1_default: u2rxtx_c_1_default {
98 default_mux {
99 function = "u2";
100 groups = "u2rxtx_c_1";
101 };
102 default_cfg1 {
103 pins = "GPIO29_W2"; /* RXD */
104 ste,config = <&in_pu>;
105 };
106 default_cfg2 {
107 pins = "GPIO30_W3"; /* TXD */
108 ste,config = <&out_hi>;
109 };
110 };
111
112 u2rxtx_c_1_sleep: u2rxtx_c_1_sleep {
113 sleep_cfg1 {
114 pins = "GPIO29_W2"; /* RXD */
115 ste,config = <&in_wkup_pdis>;
116 };
117 sleep_cfg2 {
118 pins = "GPIO30_W3"; /* TXD */
119 ste,config = <&out_wkup_pdis>;
120 };
121 };
122 };
123
124 /* Settings for all I2C default and sleep states */
125 i2c0 {
126 i2c0_a_1_default: i2c0_a_1_default {
127 default_mux {
128 function = "i2c0";
129 groups = "i2c0_a_1";
130 };
131 default_cfg1 {
132 pins = "GPIO147_C15", "GPIO148_B16"; /* SDA/SCL */
133 ste,config = <&in_nopull>;
134 };
135 };
136
137 i2c0_a_1_sleep: i2c0_a_1_sleep {
138 sleep_cfg1 {
139 pins = "GPIO147_C15", "GPIO148_B16"; /* SDA/SCL */
140 ste,config = <&slpm_in_wkup_pdis>;
141 };
142 };
143 };
144
145 i2c1 {
146 i2c1_b_2_default: i2c1_b_2_default {
147 default_mux {
148 function = "i2c1";
149 groups = "i2c1_b_2";
150 };
151 default_cfg1 {
152 pins = "GPIO16_AD3", "GPIO17_AD4"; /* SDA/SCL */
153 ste,config = <&in_nopull>;
154 };
155 };
156
157 i2c1_b_2_sleep: i2c1_b_2_sleep {
158 sleep_cfg1 {
159 pins = "GPIO16_AD3", "GPIO17_AD4"; /* SDA/SCL */
160 ste,config = <&slpm_in_wkup_pdis>;
161 };
162 };
163 };
164
165 i2c2 {
166 i2c2_b_1_default: i2c2_b_1_default {
167 default_mux {
168 function = "i2c2";
169 groups = "i2c2_b_1";
170 };
171 default_cfg1 {
172 pins = "GPIO8_AD5", "GPIO9_AE4"; /* SDA/SCL */
173 ste,config = <&in_nopull>;
174 };
175 };
176
177 i2c2_b_1_sleep: i2c2_b_1_sleep {
178 sleep_cfg1 {
179 pins = "GPIO8_AD5", "GPIO9_AE4"; /* SDA/SCL */
180 ste,config = <&slpm_in_wkup_pdis>;
181 };
182 };
183
184 i2c2_b_2_default: i2c2_b_2_default {
185 default_mux {
186 function = "i2c2";
187 groups = "i2c2_b_2";
188 };
189 default_cfg1 {
190 pins = "GPIO10_AF5", "GPIO11_AG4"; /* SDA/SCL */
191 ste,config = <&in_nopull>;
192 };
193 };
194
195 i2c2_b_2_sleep: i2c2_b_2_sleep {
196 sleep_cfg1 {
197 pins = "GPIO10_AF5", "GPIO11_AG4"; /* SDA/SCL */
198 ste,config = <&slpm_in_wkup_pdis>;
199 };
200 };
201 };
202
203 i2c3 {
204 i2c3_c_2_default: i2c3_c_2_default {
205 default_mux {
206 function = "i2c3";
207 groups = "i2c3_c_2";
208 };
209 default_cfg1 {
210 pins = "GPIO229_AG7", "GPIO230_AF7"; /* SDA/SCL */
211 ste,config = <&in_nopull>;
212 };
213 };
214
215 i2c3_c_2_sleep: i2c3_c_2_sleep {
216 sleep_cfg1 {
217 pins = "GPIO229_AG7", "GPIO230_AF7"; /* SDA/SCL */
218 ste,config = <&slpm_in_wkup_pdis>;
219 };
220 };
221 };
222
223 /*
224 * Activating I2C4 will conflict with UART1 about the same pins so do not
225 * enable I2C4 and UART1 at the same time.
226 */
227 i2c4 {
228 i2c4_b_1_default: i2c4_b_1_default {
229 default_mux {
230 function = "i2c4";
231 groups = "i2c4_b_1";
232 };
233 default_cfg1 {
234 pins = "GPIO4_AH6", "GPIO5_AG6"; /* SDA/SCL */
235 ste,config = <&in_nopull>;
236 };
237 };
238
239 i2c4_b_1_sleep: i2c4_b_1_sleep {
240 sleep_cfg1 {
241 pins = "GPIO4_AH6", "GPIO5_AG6"; /* SDA/SCL */
242 ste,config = <&slpm_in_wkup_pdis>;
243 };
244 };
245 };
246
247 /* Settings for all MMC/SD/SDIO default and sleep states */
248 sdi0 {
249 /* This is the external SD card slot, 4 bits wide */
250 mc0_a_1_default: mc0_a_1_default {
251 default_mux {
252 function = "mc0";
253 groups = "mc0_a_1";
254 };
255 default_cfg1 {
256 pins =
257 "GPIO18_AC2", /* CMDDIR */
258 "GPIO19_AC1", /* DAT0DIR */
259 "GPIO20_AB4"; /* DAT2DIR */
260 ste,config = <&out_hi>;
261 };
262 default_cfg2 {
263 pins = "GPIO22_AA3"; /* FBCLK */
264 ste,config = <&in_nopull>;
265 };
266 default_cfg3 {
267 pins = "GPIO23_AA4"; /* CLK */
268 ste,config = <&out_lo>;
269 };
270 default_cfg4 {
271 pins =
272 "GPIO24_AB2", /* CMD */
273 "GPIO25_Y4", /* DAT0 */
274 "GPIO26_Y2", /* DAT1 */
275 "GPIO27_AA2", /* DAT2 */
276 "GPIO28_AA1"; /* DAT3 */
277 ste,config = <&in_pu>;
278 };
279 };
280
281 mc0_a_1_sleep: mc0_a_1_sleep {
282 sleep_cfg1 {
283 pins =
284 "GPIO18_AC2", /* CMDDIR */
285 "GPIO19_AC1", /* DAT0DIR */
286 "GPIO20_AB4"; /* DAT2DIR */
287 ste,config = <&slpm_out_hi_wkup_pdis>;
288 };
289 sleep_cfg2 {
290 pins =
291 "GPIO22_AA3", /* FBCLK */
292 "GPIO24_AB2", /* CMD */
293 "GPIO25_Y4", /* DAT0 */
294 "GPIO26_Y2", /* DAT1 */
295 "GPIO27_AA2", /* DAT2 */
296 "GPIO28_AA1"; /* DAT3 */
297 ste,config = <&slpm_in_wkup_pdis>;
298 };
299 sleep_cfg3 {
300 pins = "GPIO23_AA4"; /* CLK */
301 ste,config = <&slpm_out_lo_wkup_pdis>;
302 };
303 };
304
305 mc0_a_2_default: mc0_a_2_default {
306 default_mux {
307 function = "mc0";
308 groups = "mc0_a_2";
309 };
310 default_cfg1 {
311 pins = "GPIO22_AA3"; /* FBCLK */
312 ste,config = <&in_nopull>;
313 };
314 default_cfg2 {
315 pins = "GPIO23_AA4"; /* CLK */
316 ste,config = <&out_lo>;
317 };
318 default_cfg3 {
319 pins =
320 "GPIO24_AB2", /* CMD */
321 "GPIO25_Y4", /* DAT0 */
322 "GPIO26_Y2", /* DAT1 */
323 "GPIO27_AA2", /* DAT2 */
324 "GPIO28_AA1"; /* DAT3 */
325 ste,config = <&in_pu>;
326 };
327 };
328
329 mc0_a_2_sleep: mc0_a_2_sleep {
330 sleep_cfg1 {
331 pins =
332 "GPIO22_AA3", /* FBCLK */
333 "GPIO24_AB2", /* CMD */
334 "GPIO25_Y4", /* DAT0 */
335 "GPIO26_Y2", /* DAT1 */
336 "GPIO27_AA2", /* DAT2 */
337 "GPIO28_AA1"; /* DAT3 */
338 ste,config = <&slpm_in_wkup_pdis>;
339 };
340 sleep_cfg2 {
341 pins = "GPIO23_AA4"; /* CLK */
342 ste,config = <&slpm_out_lo_wkup_pdis>;
343 };
344 };
345 };
346
347 sdi1 {
348 /* This is the WLAN SDIO 4 bits wide */
349 mc1_a_1_default: mc1_a_1_default {
350 default_mux {
351 function = "mc1";
352 groups = "mc1_a_1";
353 };
354 default_cfg1 {
355 pins = "GPIO208_AH16"; /* CLK */
356 ste,config = <&out_lo>;
357 };
358 default_cfg2 {
359 pins = "GPIO209_AG15"; /* FBCLK */
360 ste,config = <&in_nopull>;
361 };
362 default_cfg3 {
363 pins =
364 "GPIO210_AJ15", /* CMD */
365 "GPIO211_AG14", /* DAT0 */
366 "GPIO212_AF13", /* DAT1 */
367 "GPIO213_AG13", /* DAT2 */
368 "GPIO214_AH15"; /* DAT3 */
369 ste,config = <&in_pu>;
370 };
371 };
372
373 mc1_a_1_sleep: mc1_a_1_sleep {
374 sleep_cfg1 {
375 pins = "GPIO208_AH16"; /* CLK */
376 ste,config = <&slpm_out_lo_wkup_pdis>;
377 };
378 sleep_cfg2 {
379 pins =
380 "GPIO209_AG15", /* FBCLK */
381 "GPIO210_AJ15", /* CMD */
382 "GPIO211_AG14", /* DAT0 */
383 "GPIO212_AF13", /* DAT1 */
384 "GPIO213_AG13", /* DAT2 */
385 "GPIO214_AH15"; /* DAT3 */
386 ste,config = <&slpm_in_wkup_pdis>;
387 };
388 };
389
390 mc1_a_2_default: mc1_a_2_default {
391 default_mux {
392 function = "mc1";
393 groups = "mc1_a_2";
394 };
395 default_cfg1 {
396 pins = "GPIO208_AH16"; /* CLK */
397 ste,config = <&out_lo>;
398 };
399 default_cfg2 {
400 pins =
401 "GPIO210_AJ15", /* CMD */
402 "GPIO211_AG14", /* DAT0 */
403 "GPIO212_AF13", /* DAT1 */
404 "GPIO213_AG13", /* DAT2 */
405 "GPIO214_AH15"; /* DAT3 */
406 ste,config = <&in_pu>;
407 };
408 };
409
410 mc1_a_2_sleep: mc1_a_2_sleep {
411 sleep_cfg1 {
412 pins = "GPIO208_AH16"; /* CLK */
413 ste,config = <&slpm_out_lo_wkup_pdis>;
414 };
415 sleep_cfg2 {
416 pins =
417 "GPIO210_AJ15", /* CMD */
418 "GPIO211_AG14", /* DAT0 */
419 "GPIO212_AF13", /* DAT1 */
420 "GPIO213_AG13", /* DAT2 */
421 "GPIO214_AH15"; /* DAT3 */
422 ste,config = <&slpm_in_wkup_pdis>;
423 };
424 };
425 };
426
427 sdi2 {
428 /* This is the eMMC 8 bits wide, usually PoP eMMC */
429 mc2_a_1_default: mc2_a_1_default {
430 default_mux {
431 function = "mc2";
432 groups = "mc2_a_1";
433 };
434 default_cfg1 {
435 pins = "GPIO128_A5"; /* CLK */
436 ste,config = <&out_lo>;
437 };
438 default_cfg2 {
439 pins = "GPIO130_C8"; /* FBCLK */
440 ste,config = <&in_nopull>;
441 };
442 default_cfg3 {
443 pins =
444 "GPIO129_B4", /* CMD */
445 "GPIO131_A12", /* DAT0 */
446 "GPIO132_C10", /* DAT1 */
447 "GPIO133_B10", /* DAT2 */
448 "GPIO134_B9", /* DAT3 */
449 "GPIO135_A9", /* DAT4 */
450 "GPIO136_C7", /* DAT5 */
451 "GPIO137_A7", /* DAT6 */
452 "GPIO138_C5"; /* DAT7 */
453 ste,config = <&in_pu>;
454 };
455 };
456
457 mc2_a_1_sleep: mc2_a_1_sleep {
458 sleep_cfg1 {
459 pins = "GPIO128_A5"; /* CLK */
460 ste,config = <&out_lo_wkup_pdis>;
461 };
462 sleep_cfg2 {
463 pins =
464 "GPIO130_C8", /* FBCLK */
465 "GPIO129_B4"; /* CMD */
466 ste,config = <&in_wkup_pdis_en>;
467 };
468 sleep_cfg3 {
469 pins =
470 "GPIO131_A12", /* DAT0 */
471 "GPIO132_C10", /* DAT1 */
472 "GPIO133_B10", /* DAT2 */
473 "GPIO134_B9", /* DAT3 */
474 "GPIO135_A9", /* DAT4 */
475 "GPIO136_C7", /* DAT5 */
476 "GPIO137_A7", /* DAT6 */
477 "GPIO138_C5"; /* DAT7 */
478 ste,config = <&in_wkup_pdis>;
479 };
480 };
481 };
482
483 sdi4 {
484 /* This is the eMMC 8 bits wide, usually PCB-mounted eMMC */
485 mc4_a_1_default: mc4_a_1_default {
486 default_mux {
487 function = "mc4";
488 groups = "mc4_a_1";
489 };
490 default_cfg1 {
491 pins = "GPIO203_AE23"; /* CLK */
492 ste,config = <&out_lo>;
493 };
494 default_cfg2 {
495 pins = "GPIO202_AF25"; /* FBCLK */
496 ste,config = <&in_nopull>;
497 };
498 default_cfg3 {
499 pins =
500 "GPIO201_AF24", /* CMD */
501 "GPIO200_AH26", /* DAT0 */
502 "GPIO199_AH23", /* DAT1 */
503 "GPIO198_AG25", /* DAT2 */
504 "GPIO197_AH24", /* DAT3 */
505 "GPIO207_AJ23", /* DAT4 */
506 "GPIO206_AG24", /* DAT5 */
507 "GPIO205_AG23", /* DAT6 */
508 "GPIO204_AF23"; /* DAT7 */
509 ste,config = <&in_pu>;
510 };
511 };
512
513 mc4_a_1_sleep: mc4_a_1_sleep {
514 sleep_cfg1 {
515 pins = "GPIO203_AE23"; /* CLK */
516 ste,config = <&out_lo_wkup_pdis>;
517 };
518 sleep_cfg2 {
519 pins =
520 "GPIO202_AF25", /* FBCLK */
521 "GPIO201_AF24", /* CMD */
522 "GPIO200_AH26", /* DAT0 */
523 "GPIO199_AH23", /* DAT1 */
524 "GPIO198_AG25", /* DAT2 */
525 "GPIO197_AH24", /* DAT3 */
526 "GPIO207_AJ23", /* DAT4 */
527 "GPIO206_AG24", /* DAT5 */
528 "GPIO205_AG23", /* DAT6 */
529 "GPIO204_AF23"; /* DAT7 */
530 ste,config = <&slpm_in_wkup_pdis>;
531 };
532 };
533 };
534
535 /*
536 * Multi-rate serial ports (MSPs) - MSP3 output is internal and
537 * cannot be muxed onto any pins.
538 */
539 msp0 {
540 msp0txrxtfstck_a_1_default: msp0txrxtfstck_a_1_default {
541 default_msp0_mux {
542 function = "msp0";
543 groups = "msp0txrx_a_1", "msp0tfstck_a_1";
544 };
545 default_msp0_cfg {
546 pins =
547 "GPIO12_AC4", /* TXD */
548 "GPIO15_AC3", /* RXD */
549 "GPIO13_AF3", /* TFS */
550 "GPIO14_AE3"; /* TCK */
551 ste,config = <&in_nopull>;
552 };
553 };
554 };
555
556 msp1 {
557 msp1txrx_a_1_default: msp1txrx_a_1_default {
558 default_mux {
559 function = "msp1";
560 groups = "msp1txrx_a_1", "msp1_a_1";
561 };
562 default_cfg1 {
563 pins = "GPIO33_AF2";
564 ste,config = <&out_lo>;
565 };
566 default_cfg2 {
567 pins =
568 "GPIO34_AE1",
569 "GPIO35_AE2",
570 "GPIO36_AG2";
571 ste,config = <&in_nopull>;
572 };
573 };
574 };
575
576 msp2 {
577 msp2_a_1_default: msp2_a_1_default {
578 /* MSP2 usually used for HDMI audio */
579 default_mux {
580 function = "msp2";
581 groups = "msp2_a_1";
582 };
583 default_cfg1 {
584 pins =
585 "GPIO193_AH27", /* TXD */
586 "GPIO194_AF27", /* TCK */
587 "GPIO195_AG28"; /* TFS */
588 ste,config = <&in_pd>;
589 };
590 default_cfg2 {
591 pins = "GPIO196_AG26"; /* RXD */
592 ste,config = <&out_lo>;
593 };
594 };
595 };
596
597 musb {
598 usb_a_1_default: usb_a_1_default {
599 default_mux {
600 function = "usb";
601 groups = "usb_a_1";
602 };
603 default_cfg1 {
604 pins =
605 "GPIO256_AF28", /* NXT */
606 "GPIO258_AD29", /* XCLK */
607 "GPIO259_AC29", /* DIR */
608 "GPIO260_AD28", /* DAT7 */
609 "GPIO261_AD26", /* DAT6 */
610 "GPIO262_AE26", /* DAT5 */
611 "GPIO263_AG29", /* DAT4 */
612 "GPIO264_AE27", /* DAT3 */
613 "GPIO265_AD27", /* DAT2 */
614 "GPIO266_AC28", /* DAT1 */
615 "GPIO267_AC27"; /* DAT0 */
616 ste,config = <&in_nopull>;
617 };
618 default_cfg2 {
619 pins = "GPIO257_AE29"; /* STP */
620 ste,config = <&out_hi>;
621 };
622 };
623
624 usb_a_1_sleep: usb_a_1_sleep {
625 sleep_cfg1 {
626 pins =
627 "GPIO256_AF28", /* NXT */
628 "GPIO258_AD29", /* XCLK */
629 "GPIO259_AC29"; /* DIR */
630 ste,config = <&slpm_wkup_pdis_en>;
631 };
632 sleep_cfg2 {
633 pins = "GPIO257_AE29"; /* STP */
634 ste,config = <&slpm_out_hi_wkup_pdis>;
635 };
636 sleep_cfg3 {
637 pins =
638 "GPIO260_AD28", /* DAT7 */
639 "GPIO261_AD26", /* DAT6 */
640 "GPIO262_AE26", /* DAT5 */
641 "GPIO263_AG29", /* DAT4 */
642 "GPIO264_AE27", /* DAT3 */
643 "GPIO265_AD27", /* DAT2 */
644 "GPIO266_AC28", /* DAT1 */
645 "GPIO267_AC27"; /* DAT0 */
646 ste,config = <&slpm_in_wkup_pdis_en>;
647 };
648 };
649 };
650};