diff options
author | Jean-Nicolas Graux <jean-nicolas.graux@stericsson.com> | 2012-10-19 11:39:07 -0400 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2012-10-25 11:42:54 -0400 |
commit | 35c0c281ddb4abb966874ba92029c1aa2bab0679 (patch) | |
tree | 8ac35494781ac992120244322ae4525628663ec0 /arch/arm/mach-ux500 | |
parent | ad7f67c44a74358b6104f7d6073a6891003536b8 (diff) |
ARM: ux500: add STM pin configuration
This patch add the new stm pinctrl states
definitions for the Ux500 MOP500 series.
Signed-off-by: Jean-Nicolas Graux <jean-nicolas.graux@stericsson.com>
Reviewed-by: Philippe Langlais <philippe.langlais@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'arch/arm/mach-ux500')
-rw-r--r-- | arch/arm/mach-ux500/board-mop500-pins.c | 185 |
1 files changed, 185 insertions, 0 deletions
diff --git a/arch/arm/mach-ux500/board-mop500-pins.c b/arch/arm/mach-ux500/board-mop500-pins.c index 05102ad6e0a0..f9ef2f44bcc2 100644 --- a/arch/arm/mach-ux500/board-mop500-pins.c +++ b/arch/arm/mach-ux500/board-mop500-pins.c | |||
@@ -96,6 +96,10 @@ BIAS(out_wkup_pdis, PIN_SLPM_DIR_OUTPUT|PIN_SLPM_WAKEUP_ENABLE| | |||
96 | #define DB8500_PIN_SLEEP(pin, conf, dev) \ | 96 | #define DB8500_PIN_SLEEP(pin, conf, dev) \ |
97 | PIN_MAP_CONFIGS_PIN(dev, PINCTRL_STATE_SLEEP, "pinctrl-db8500", \ | 97 | PIN_MAP_CONFIGS_PIN(dev, PINCTRL_STATE_SLEEP, "pinctrl-db8500", \ |
98 | pin, conf) | 98 | pin, conf) |
99 | #define DB8500_MUX_STATE(group, func, dev, state) \ | ||
100 | PIN_MAP_MUX_GROUP(dev, state, "pinctrl-db8500", group, func) | ||
101 | #define DB8500_PIN_STATE(pin, conf, dev, state) \ | ||
102 | PIN_MAP_CONFIGS_PIN(dev, state, "pinctrl-db8500", pin, conf) | ||
99 | 103 | ||
100 | /* Pin control settings */ | 104 | /* Pin control settings */ |
101 | static struct pinctrl_map __initdata mop500_family_pinmap[] = { | 105 | static struct pinctrl_map __initdata mop500_family_pinmap[] = { |
@@ -366,6 +370,187 @@ static struct pinctrl_map __initdata mop500_family_pinmap[] = { | |||
366 | DB8500_PIN_SLEEP("GPIO166_A22", slpm_out_lo_pdis, "nmk-ske-keypad"), /* O2 */ | 370 | DB8500_PIN_SLEEP("GPIO166_A22", slpm_out_lo_pdis, "nmk-ske-keypad"), /* O2 */ |
367 | DB8500_PIN_SLEEP("GPIO167_B24", slpm_out_lo_pdis, "nmk-ske-keypad"), /* O1 */ | 371 | DB8500_PIN_SLEEP("GPIO167_B24", slpm_out_lo_pdis, "nmk-ske-keypad"), /* O1 */ |
368 | DB8500_PIN_SLEEP("GPIO168_C22", slpm_out_lo_pdis, "nmk-ske-keypad"), /* O0 */ | 372 | DB8500_PIN_SLEEP("GPIO168_C22", slpm_out_lo_pdis, "nmk-ske-keypad"), /* O0 */ |
373 | |||
374 | /* STM APE pins states */ | ||
375 | DB8500_MUX_STATE("stmape_c_1", "stmape", | ||
376 | "stm", "ape_mipi34"), | ||
377 | DB8500_PIN_STATE("GPIO70_G5", in_nopull, | ||
378 | "stm", "ape_mipi34"), /* clk */ | ||
379 | DB8500_PIN_STATE("GPIO71_G4", in_nopull, | ||
380 | "stm", "ape_mipi34"), /* dat3 */ | ||
381 | DB8500_PIN_STATE("GPIO72_H4", in_nopull, | ||
382 | "stm", "ape_mipi34"), /* dat2 */ | ||
383 | DB8500_PIN_STATE("GPIO73_H3", in_nopull, | ||
384 | "stm", "ape_mipi34"), /* dat1 */ | ||
385 | DB8500_PIN_STATE("GPIO74_J3", in_nopull, | ||
386 | "stm", "ape_mipi34"), /* dat0 */ | ||
387 | |||
388 | DB8500_PIN_STATE("GPIO70_G5", slpm_out_lo_pdis, | ||
389 | "stm", "ape_mipi34_sleep"), /* clk */ | ||
390 | DB8500_PIN_STATE("GPIO71_G4", slpm_out_lo_pdis, | ||
391 | "stm", "ape_mipi34_sleep"), /* dat3 */ | ||
392 | DB8500_PIN_STATE("GPIO72_H4", slpm_out_lo_pdis, | ||
393 | "stm", "ape_mipi34_sleep"), /* dat2 */ | ||
394 | DB8500_PIN_STATE("GPIO73_H3", slpm_out_lo_pdis, | ||
395 | "stm", "ape_mipi34_sleep"), /* dat1 */ | ||
396 | DB8500_PIN_STATE("GPIO74_J3", slpm_out_lo_pdis, | ||
397 | "stm", "ape_mipi34_sleep"), /* dat0 */ | ||
398 | |||
399 | DB8500_MUX_STATE("stmape_oc1_1", "stmape", | ||
400 | "stm", "ape_microsd"), | ||
401 | DB8500_PIN_STATE("GPIO23_AA4", in_nopull, | ||
402 | "stm", "ape_microsd"), /* clk */ | ||
403 | DB8500_PIN_STATE("GPIO25_Y4", in_nopull, | ||
404 | "stm", "ape_microsd"), /* dat0 */ | ||
405 | DB8500_PIN_STATE("GPIO26_Y2", in_nopull, | ||
406 | "stm", "ape_microsd"), /* dat1 */ | ||
407 | DB8500_PIN_STATE("GPIO27_AA2", in_nopull, | ||
408 | "stm", "ape_microsd"), /* dat2 */ | ||
409 | DB8500_PIN_STATE("GPIO28_AA1", in_nopull, | ||
410 | "stm", "ape_microsd"), /* dat3 */ | ||
411 | |||
412 | DB8500_PIN_STATE("GPIO23_AA4", slpm_out_lo_wkup_pdis, | ||
413 | "stm", "ape_microsd_sleep"), /* clk */ | ||
414 | DB8500_PIN_STATE("GPIO25_Y4", slpm_in_wkup_pdis, | ||
415 | "stm", "ape_microsd_sleep"), /* dat0 */ | ||
416 | DB8500_PIN_STATE("GPIO26_Y2", slpm_in_wkup_pdis, | ||
417 | "stm", "ape_microsd_sleep"), /* dat1 */ | ||
418 | DB8500_PIN_STATE("GPIO27_AA2", slpm_in_wkup_pdis, | ||
419 | "stm", "ape_microsd_sleep"), /* dat2 */ | ||
420 | DB8500_PIN_STATE("GPIO28_AA1", slpm_in_wkup_pdis, | ||
421 | "stm", "ape_microsd_sleep"), /* dat3 */ | ||
422 | |||
423 | /* STM Modem pins states */ | ||
424 | DB8500_MUX_STATE("stmmod_oc3_2", "stmmod", | ||
425 | "stm", "mod_mipi34"), | ||
426 | DB8500_MUX_STATE("uartmodrx_oc3_1", "uartmod", | ||
427 | "stm", "mod_mipi34"), | ||
428 | DB8500_MUX_STATE("uartmodtx_oc3_1", "uartmod", | ||
429 | "stm", "mod_mipi34"), | ||
430 | DB8500_PIN_STATE("GPIO70_G5", in_nopull, | ||
431 | "stm", "mod_mipi34"), /* clk */ | ||
432 | DB8500_PIN_STATE("GPIO71_G4", in_nopull, | ||
433 | "stm", "mod_mipi34"), /* dat3 */ | ||
434 | DB8500_PIN_STATE("GPIO72_H4", in_nopull, | ||
435 | "stm", "mod_mipi34"), /* dat2 */ | ||
436 | DB8500_PIN_STATE("GPIO73_H3", in_nopull, | ||
437 | "stm", "mod_mipi34"), /* dat1 */ | ||
438 | DB8500_PIN_STATE("GPIO74_J3", in_nopull, | ||
439 | "stm", "mod_mipi34"), /* dat0 */ | ||
440 | DB8500_PIN_STATE("GPIO75_H2", in_pu, | ||
441 | "stm", "mod_mipi34"), /* uartmod rx */ | ||
442 | DB8500_PIN_STATE("GPIO76_J2", out_lo, | ||
443 | "stm", "mod_mipi34"), /* uartmod tx */ | ||
444 | |||
445 | DB8500_PIN_STATE("GPIO70_G5", slpm_out_lo_pdis, | ||
446 | "stm", "mod_mipi34_sleep"), /* clk */ | ||
447 | DB8500_PIN_STATE("GPIO71_G4", slpm_out_lo_pdis, | ||
448 | "stm", "mod_mipi34_sleep"), /* dat3 */ | ||
449 | DB8500_PIN_STATE("GPIO72_H4", slpm_out_lo_pdis, | ||
450 | "stm", "mod_mipi34_sleep"), /* dat2 */ | ||
451 | DB8500_PIN_STATE("GPIO73_H3", slpm_out_lo_pdis, | ||
452 | "stm", "mod_mipi34_sleep"), /* dat1 */ | ||
453 | DB8500_PIN_STATE("GPIO74_J3", slpm_out_lo_pdis, | ||
454 | "stm", "mod_mipi34_sleep"), /* dat0 */ | ||
455 | DB8500_PIN_STATE("GPIO75_H2", slpm_in_wkup_pdis, | ||
456 | "stm", "mod_mipi34_sleep"), /* uartmod rx */ | ||
457 | DB8500_PIN_STATE("GPIO76_J2", slpm_out_lo_wkup_pdis, | ||
458 | "stm", "mod_mipi34_sleep"), /* uartmod tx */ | ||
459 | |||
460 | DB8500_MUX_STATE("stmmod_b_1", "stmmod", | ||
461 | "stm", "mod_microsd"), | ||
462 | DB8500_MUX_STATE("uartmodrx_oc3_1", "uartmod", | ||
463 | "stm", "mod_microsd"), | ||
464 | DB8500_MUX_STATE("uartmodtx_oc3_1", "uartmod", | ||
465 | "stm", "mod_microsd"), | ||
466 | DB8500_PIN_STATE("GPIO23_AA4", in_nopull, | ||
467 | "stm", "mod_microsd"), /* clk */ | ||
468 | DB8500_PIN_STATE("GPIO25_Y4", in_nopull, | ||
469 | "stm", "mod_microsd"), /* dat0 */ | ||
470 | DB8500_PIN_STATE("GPIO26_Y2", in_nopull, | ||
471 | "stm", "mod_microsd"), /* dat1 */ | ||
472 | DB8500_PIN_STATE("GPIO27_AA2", in_nopull, | ||
473 | "stm", "mod_microsd"), /* dat2 */ | ||
474 | DB8500_PIN_STATE("GPIO28_AA1", in_nopull, | ||
475 | "stm", "mod_microsd"), /* dat3 */ | ||
476 | DB8500_PIN_STATE("GPIO75_H2", in_pu, | ||
477 | "stm", "mod_microsd"), /* uartmod rx */ | ||
478 | DB8500_PIN_STATE("GPIO76_J2", out_lo, | ||
479 | "stm", "mod_microsd"), /* uartmod tx */ | ||
480 | |||
481 | DB8500_PIN_STATE("GPIO23_AA4", slpm_out_lo_wkup_pdis, | ||
482 | "stm", "mod_microsd_sleep"), /* clk */ | ||
483 | DB8500_PIN_STATE("GPIO25_Y4", slpm_in_wkup_pdis, | ||
484 | "stm", "mod_microsd_sleep"), /* dat0 */ | ||
485 | DB8500_PIN_STATE("GPIO26_Y2", slpm_in_wkup_pdis, | ||
486 | "stm", "mod_microsd_sleep"), /* dat1 */ | ||
487 | DB8500_PIN_STATE("GPIO27_AA2", slpm_in_wkup_pdis, | ||
488 | "stm", "mod_microsd_sleep"), /* dat2 */ | ||
489 | DB8500_PIN_STATE("GPIO28_AA1", slpm_in_wkup_pdis, | ||
490 | "stm", "mod_microsd_sleep"), /* dat3 */ | ||
491 | DB8500_PIN_STATE("GPIO75_H2", slpm_in_wkup_pdis, | ||
492 | "stm", "mod_microsd_sleep"), /* uartmod rx */ | ||
493 | DB8500_PIN_STATE("GPIO76_J2", slpm_out_lo_wkup_pdis, | ||
494 | "stm", "mod_microsd_sleep"), /* uartmod tx */ | ||
495 | |||
496 | /* STM dual Modem/APE pins state */ | ||
497 | DB8500_MUX_STATE("stmmod_oc3_2", "stmmod", | ||
498 | "stm", "mod_mipi34_ape_mipi60"), | ||
499 | DB8500_MUX_STATE("stmape_c_2", "stmape", | ||
500 | "stm", "mod_mipi34_ape_mipi60"), | ||
501 | DB8500_MUX_STATE("uartmodrx_oc3_1", "uartmod", | ||
502 | "stm", "mod_mipi34_ape_mipi60"), | ||
503 | DB8500_MUX_STATE("uartmodtx_oc3_1", "uartmod", | ||
504 | "stm", "mod_mipi34_ape_mipi60"), | ||
505 | DB8500_PIN_STATE("GPIO70_G5", in_nopull, | ||
506 | "stm", "mod_mipi34_ape_mipi60"), /* clk */ | ||
507 | DB8500_PIN_STATE("GPIO71_G4", in_nopull, | ||
508 | "stm", "mod_mipi34_ape_mipi60"), /* dat3 */ | ||
509 | DB8500_PIN_STATE("GPIO72_H4", in_nopull, | ||
510 | "stm", "mod_mipi34_ape_mipi60"), /* dat2 */ | ||
511 | DB8500_PIN_STATE("GPIO73_H3", in_nopull, | ||
512 | "stm", "mod_mipi34_ape_mipi60"), /* dat1 */ | ||
513 | DB8500_PIN_STATE("GPIO74_J3", in_nopull, | ||
514 | "stm", "mod_mipi34_ape_mipi60"), /* dat0 */ | ||
515 | DB8500_PIN_STATE("GPIO75_H2", in_pu, | ||
516 | "stm", "mod_mipi34_ape_mipi60"), /* uartmod rx */ | ||
517 | DB8500_PIN_STATE("GPIO76_J2", out_lo, | ||
518 | "stm", "mod_mipi34_ape_mipi60"), /* uartmod tx */ | ||
519 | DB8500_PIN_STATE("GPIO155_C19", in_nopull, | ||
520 | "stm", "mod_mipi34_ape_mipi60"), /* clk */ | ||
521 | DB8500_PIN_STATE("GPIO156_C17", in_nopull, | ||
522 | "stm", "mod_mipi34_ape_mipi60"), /* dat3 */ | ||
523 | DB8500_PIN_STATE("GPIO157_A18", in_nopull, | ||
524 | "stm", "mod_mipi34_ape_mipi60"), /* dat2 */ | ||
525 | DB8500_PIN_STATE("GPIO158_C18", in_nopull, | ||
526 | "stm", "mod_mipi34_ape_mipi60"), /* dat1 */ | ||
527 | DB8500_PIN_STATE("GPIO159_B19", in_nopull, | ||
528 | "stm", "mod_mipi34_ape_mipi60"), /* dat0 */ | ||
529 | |||
530 | DB8500_PIN_STATE("GPIO70_G5", slpm_out_lo_pdis, | ||
531 | "stm", "mod_mipi34_ape_mipi60_sleep"), /* clk */ | ||
532 | DB8500_PIN_STATE("GPIO71_G4", slpm_out_lo_pdis, | ||
533 | "stm", "mod_mipi34_ape_mipi60_sleep"), /* dat3 */ | ||
534 | DB8500_PIN_STATE("GPIO72_H4", slpm_out_lo_pdis, | ||
535 | "stm", "mod_mipi34_ape_mipi60_sleep"), /* dat2 */ | ||
536 | DB8500_PIN_STATE("GPIO73_H3", slpm_out_lo_pdis, | ||
537 | "stm", "mod_mipi34_ape_mipi60_sleep"), /* dat1 */ | ||
538 | DB8500_PIN_STATE("GPIO74_J3", slpm_out_lo_pdis, | ||
539 | "stm", "mod_mipi34_ape_mipi60_sleep"), /* dat0 */ | ||
540 | DB8500_PIN_STATE("GPIO75_H2", slpm_in_wkup_pdis, | ||
541 | "stm", "mod_mipi34_ape_mipi60_sleep"), /* uartmod rx */ | ||
542 | DB8500_PIN_STATE("GPIO76_J2", slpm_out_lo_wkup_pdis, | ||
543 | "stm", "mod_mipi34_ape_mipi60_sleep"), /* uartmod tx */ | ||
544 | DB8500_PIN_STATE("GPIO155_C19", slpm_in_wkup_pdis, | ||
545 | "stm", "mod_mipi34_ape_mipi60_sleep"), /* clk */ | ||
546 | DB8500_PIN_STATE("GPIO156_C17", slpm_in_wkup_pdis, | ||
547 | "stm", "mod_mipi34_ape_mipi60_sleep"), /* dat3 */ | ||
548 | DB8500_PIN_STATE("GPIO157_A18", slpm_in_wkup_pdis, | ||
549 | "stm", "mod_mipi34_ape_mipi60_sleep"), /* dat2 */ | ||
550 | DB8500_PIN_STATE("GPIO158_C18", slpm_in_wkup_pdis, | ||
551 | "stm", "mod_mipi34_ape_mipi60_sleep"), /* dat1 */ | ||
552 | DB8500_PIN_STATE("GPIO159_B19", slpm_in_wkup_pdis, | ||
553 | "stm", "mod_mipi34_ape_mipi60_sleep"), /* dat0 */ | ||
369 | }; | 554 | }; |
370 | 555 | ||
371 | /* | 556 | /* |