1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Copyright 2013 Linaro Ltd.
6 #include "ste-nomadik-pinctrl.dtsi"
9 /* Settings for all UART default and sleep states */
11 u0_a_1_default: u0_a_1_default {
17 pins = "GPIO0_AJ5", "GPIO2_AH4"; /* CTS+RXD */
18 ste,config = <&in_pu>;
21 pins = "GPIO1_AJ3", "GPIO3_AH3"; /* RTS+TXD */
22 ste,config = <&out_hi>;
26 u0_a_1_sleep: u0_a_1_sleep {
28 pins = "GPIO0_AJ5", "GPIO2_AH4"; /* CTS+RXD */
29 ste,config = <&slpm_in_wkup_pdis>;
32 pins = "GPIO1_AJ3"; /* RTS */
33 ste,config = <&slpm_out_hi_wkup_pdis>;
36 pins = "GPIO3_AH3"; /* TXD */
37 ste,config = <&slpm_out_wkup_pdis>;
43 u1rxtx_a_1_default: u1rxtx_a_1_default {
46 groups = "u1rxtx_a_1";
49 pins = "GPIO4_AH6"; /* RXD */
50 ste,config = <&in_pu>;
53 pins = "GPIO5_AG6"; /* TXD */
54 ste,config = <&out_hi>;
58 u1rxtx_a_1_sleep: u1rxtx_a_1_sleep {
60 pins = "GPIO4_AH6"; /* RXD */
61 ste,config = <&slpm_in_wkup_pdis>;
64 pins = "GPIO5_AG6"; /* TXD */
65 ste,config = <&slpm_out_wkup_pdis>;
69 u1ctsrts_a_1_default: u1ctsrts_a_1_default {
72 groups = "u1ctsrts_a_1";
75 pins = "GPIO6_AF6"; /* CTS */
76 ste,config = <&in_pu>;
79 pins = "GPIO7_AG5"; /* RTS */
80 ste,config = <&out_hi>;
84 u1ctsrts_a_1_sleep: u1ctsrts_a_1_sleep {
86 pins = "GPIO6_AF6"; /* CTS */
87 ste,config = <&slpm_in_wkup_pdis>;
90 pins = "GPIO7_AG5"; /* RTS */
91 ste,config = <&slpm_out_hi_wkup_pdis>;
97 u2rxtx_c_1_default: u2rxtx_c_1_default {
100 groups = "u2rxtx_c_1";
103 pins = "GPIO29_W2"; /* RXD */
104 ste,config = <&in_pu>;
107 pins = "GPIO30_W3"; /* TXD */
108 ste,config = <&out_hi>;
112 u2rxtx_c_1_sleep: u2rxtx_c_1_sleep {
114 pins = "GPIO29_W2"; /* RXD */
115 ste,config = <&in_wkup_pdis>;
118 pins = "GPIO30_W3"; /* TXD */
119 ste,config = <&out_wkup_pdis>;
124 /* Settings for all I2C default and sleep states */
126 i2c0_a_1_default: i2c0_a_1_default {
132 pins = "GPIO147_C15", "GPIO148_B16"; /* SDA/SCL */
133 ste,config = <&in_nopull>;
137 i2c0_a_1_sleep: i2c0_a_1_sleep {
139 pins = "GPIO147_C15", "GPIO148_B16"; /* SDA/SCL */
140 ste,config = <&slpm_in_wkup_pdis>;
146 i2c1_b_2_default: i2c1_b_2_default {
152 pins = "GPIO16_AD3", "GPIO17_AD4"; /* SDA/SCL */
153 ste,config = <&in_nopull>;
157 i2c1_b_2_sleep: i2c1_b_2_sleep {
159 pins = "GPIO16_AD3", "GPIO17_AD4"; /* SDA/SCL */
160 ste,config = <&slpm_in_wkup_pdis>;
166 i2c2_b_1_default: i2c2_b_1_default {
172 pins = "GPIO8_AD5", "GPIO9_AE4"; /* SDA/SCL */
173 ste,config = <&in_nopull>;
177 i2c2_b_1_sleep: i2c2_b_1_sleep {
179 pins = "GPIO8_AD5", "GPIO9_AE4"; /* SDA/SCL */
180 ste,config = <&slpm_in_wkup_pdis>;
184 i2c2_b_2_default: i2c2_b_2_default {
190 pins = "GPIO10_AF5", "GPIO11_AG4"; /* SDA/SCL */
191 ste,config = <&in_nopull>;
195 i2c2_b_2_sleep: i2c2_b_2_sleep {
197 pins = "GPIO10_AF5", "GPIO11_AG4"; /* SDA/SCL */
198 ste,config = <&slpm_in_wkup_pdis>;
204 i2c3_c_2_default: i2c3_c_2_default {
210 pins = "GPIO229_AG7", "GPIO230_AF7"; /* SDA/SCL */
211 ste,config = <&in_nopull>;
215 i2c3_c_2_sleep: i2c3_c_2_sleep {
217 pins = "GPIO229_AG7", "GPIO230_AF7"; /* SDA/SCL */
218 ste,config = <&slpm_in_wkup_pdis>;
224 * Activating I2C4 will conflict with UART1 about the same pins so do not
225 * enable I2C4 and UART1 at the same time.
228 i2c4_b_1_default: i2c4_b_1_default {
234 pins = "GPIO4_AH6", "GPIO5_AG6"; /* SDA/SCL */
235 ste,config = <&in_nopull>;
239 i2c4_b_1_sleep: i2c4_b_1_sleep {
241 pins = "GPIO4_AH6", "GPIO5_AG6"; /* SDA/SCL */
242 ste,config = <&slpm_in_wkup_pdis>;
247 /* Settings for all MMC/SD/SDIO default and sleep states */
249 /* This is the external SD card slot, 4 bits wide */
250 mc0_a_1_default: mc0_a_1_default {
257 "GPIO18_AC2", /* CMDDIR */
258 "GPIO19_AC1", /* DAT0DIR */
259 "GPIO20_AB4"; /* DAT2DIR */
260 ste,config = <&out_hi>;
263 pins = "GPIO22_AA3"; /* FBCLK */
264 ste,config = <&in_nopull>;
267 pins = "GPIO23_AA4"; /* CLK */
268 ste,config = <&out_lo>;
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>;
281 mc0_a_1_sleep: mc0_a_1_sleep {
284 "GPIO18_AC2", /* CMDDIR */
285 "GPIO19_AC1", /* DAT0DIR */
286 "GPIO20_AB4"; /* DAT2DIR */
287 ste,config = <&slpm_out_hi_wkup_pdis>;
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>;
300 pins = "GPIO23_AA4"; /* CLK */
301 ste,config = <&slpm_out_lo_wkup_pdis>;
305 mc0_a_2_default: mc0_a_2_default {
311 pins = "GPIO22_AA3"; /* FBCLK */
312 ste,config = <&in_nopull>;
315 pins = "GPIO23_AA4"; /* CLK */
316 ste,config = <&out_lo>;
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>;
329 mc0_a_2_sleep: mc0_a_2_sleep {
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>;
341 pins = "GPIO23_AA4"; /* CLK */
342 ste,config = <&slpm_out_lo_wkup_pdis>;
348 /* This is the WLAN SDIO 4 bits wide */
349 mc1_a_1_default: mc1_a_1_default {
355 pins = "GPIO208_AH16"; /* CLK */
356 ste,config = <&out_lo>;
359 pins = "GPIO209_AG15"; /* FBCLK */
360 ste,config = <&in_nopull>;
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>;
373 mc1_a_1_sleep: mc1_a_1_sleep {
375 pins = "GPIO208_AH16"; /* CLK */
376 ste,config = <&slpm_out_lo_wkup_pdis>;
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>;
390 mc1_a_2_default: mc1_a_2_default {
396 pins = "GPIO208_AH16"; /* CLK */
397 ste,config = <&out_lo>;
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>;
410 mc1_a_2_sleep: mc1_a_2_sleep {
412 pins = "GPIO208_AH16"; /* CLK */
413 ste,config = <&slpm_out_lo_wkup_pdis>;
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>;
428 /* This is the eMMC 8 bits wide, usually PoP eMMC */
429 mc2_a_1_default: mc2_a_1_default {
435 pins = "GPIO128_A5"; /* CLK */
436 ste,config = <&out_lo>;
439 pins = "GPIO130_C8"; /* FBCLK */
440 ste,config = <&in_nopull>;
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>;
457 mc2_a_1_sleep: mc2_a_1_sleep {
459 pins = "GPIO128_A5"; /* CLK */
460 ste,config = <&out_lo_wkup_pdis>;
464 "GPIO130_C8", /* FBCLK */
465 "GPIO129_B4"; /* CMD */
466 ste,config = <&in_wkup_pdis_en>;
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>;
484 /* This is the eMMC 8 bits wide, usually PCB-mounted eMMC */
485 mc4_a_1_default: mc4_a_1_default {
491 pins = "GPIO203_AE23"; /* CLK */
492 ste,config = <&out_lo>;
495 pins = "GPIO202_AF25"; /* FBCLK */
496 ste,config = <&in_nopull>;
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>;
513 mc4_a_1_sleep: mc4_a_1_sleep {
515 pins = "GPIO203_AE23"; /* CLK */
516 ste,config = <&out_lo_wkup_pdis>;
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>;
536 * Multi-rate serial ports (MSPs) - MSP3 output is internal and
537 * cannot be muxed onto any pins.
540 msp0txrxtfstck_a_1_default: msp0txrxtfstck_a_1_default {
543 groups = "msp0txrx_a_1", "msp0tfstck_a_1";
547 "GPIO12_AC4", /* TXD */
548 "GPIO15_AC3", /* RXD */
549 "GPIO13_AF3", /* TFS */
550 "GPIO14_AE3"; /* TCK */
551 ste,config = <&in_nopull>;
557 msp1txrx_a_1_default: msp1txrx_a_1_default {
560 groups = "msp1txrx_a_1", "msp1_a_1";
564 ste,config = <&out_lo>;
571 ste,config = <&in_nopull>;
577 msp2_a_1_default: msp2_a_1_default {
578 /* MSP2 usually used for HDMI audio */
585 "GPIO193_AH27", /* TXD */
586 "GPIO194_AF27", /* TCK */
587 "GPIO195_AG28"; /* TFS */
588 ste,config = <&in_pd>;
591 pins = "GPIO196_AG26"; /* RXD */
592 ste,config = <&out_lo>;
598 usb_a_1_default: usb_a_1_default {
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>;
619 pins = "GPIO257_AE29"; /* STP */
620 ste,config = <&out_hi>;
624 usb_a_1_sleep: usb_a_1_sleep {
627 "GPIO256_AF28", /* NXT */
628 "GPIO258_AD29", /* XCLK */
629 "GPIO259_AC29"; /* DIR */
630 ste,config = <&slpm_wkup_pdis_en>;
633 pins = "GPIO257_AE29"; /* STP */
634 ste,config = <&slpm_out_hi_wkup_pdis>;
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>;