diff options
author | Arnd Bergmann <arnd@arndb.de> | 2013-03-21 12:47:08 -0400 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2013-03-21 12:47:08 -0400 |
commit | cb3daf580a6bd798580d274a164e63a598d165c5 (patch) | |
tree | 5c98399cff8d97099e18c2fd2cf0278874dee2eb /arch | |
parent | f6161aa153581da4a3867a2d1a7caf4be19b6ec9 (diff) | |
parent | a4339a9cb46644e19278e4dd5d89b262a37cb0b0 (diff) |
Merge tag 'renesas-pinmux-for-v3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/renesas-pinctrl
From Simon Horman <horms+renesas@verge.net.au>:
Renesas ARM and SH based SoC pinmux update for v3.10
As with changes to the Renesas ARM and SH based SoC pinmux code for v3.9
it has been agreed by the relevant parties, Linus Walleij, Laurent Pinchart,
Paul Mundt and myself, that it would be best to take these changes through
the renesas tree and in turn the arm-soc tree.
This pull is based on a merge of the following in order to provide
the required dependencies. This base has been discussed and agreed upon by
Linus Walleij, Laurent Pinchart and myself.
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl devel
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl fixes
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas fixes
* tag 'renesas-pinmux-for-v3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: (162 commits)
ARM: shmobile: r8a7779: Remove INTC function GPIOs
ARM: shmobile: r8a7779: Remove LBSC function GPIOs
ARM: shmobile: r8a7779: Remove USB function GPIOs
ARM: shmobile: r8a7779: Remove HSPI function GPIOs
ARM: shmobile: r8a7779: Remove SCIF function GPIOs
ARM: shmobile: r8a7779: Remove SDHI and MMCIF function GPIOs
ARM: shmobile: r8a7779: Remove DU function GPIOs
ARM: shmobile: r8a7779: Remove DU1_DOTCLKOUT1 GPIO
ARM: shmobile: r8a7740: Remove SDHI and MMCIF function GPIOs
ARM: shmobile: r8a7740: Remove LCD0 and LCD1 function GPIOs
ARM: shmobile: sh73a0: Remove IrDA function GPIOs
ARM: shmobile: sh73a0: Remove USB function GPIOs
ARM: shmobile: sh73a0: Remove BSC function GPIOs
ARM: shmobile: sh73a0: Remove KEYSC function GPIOs
ARM: shmobile: sh73a0: Remove pull-up function GPIOS
ARM: shmobile: sh73a0: Remove FSI function GPIOs
ARM: shmobile: sh73a0: Remove I2C function GPIOs
ARM: shmobile: sh73a0: Remove SCIFA and SCIFB function GPIOs
ARM: shmobile: sh73a0: Remove LCDC and LCDC2 function GPIOs
ARM: shmobile: sh7372: Remove SDHI and MMCIF function GPIOs
...
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch')
27 files changed, 901 insertions, 1068 deletions
diff --git a/arch/arm/boot/dts/spear1310.dtsi b/arch/arm/boot/dts/spear1310.dtsi index 1513c1927cc8..122ae94076c8 100644 --- a/arch/arm/boot/dts/spear1310.dtsi +++ b/arch/arm/boot/dts/spear1310.dtsi | |||
@@ -89,7 +89,7 @@ | |||
89 | pinmux: pinmux@e0700000 { | 89 | pinmux: pinmux@e0700000 { |
90 | compatible = "st,spear1310-pinmux"; | 90 | compatible = "st,spear1310-pinmux"; |
91 | reg = <0xe0700000 0x1000>; | 91 | reg = <0xe0700000 0x1000>; |
92 | #gpio-range-cells = <2>; | 92 | #gpio-range-cells = <3>; |
93 | }; | 93 | }; |
94 | 94 | ||
95 | apb { | 95 | apb { |
@@ -212,7 +212,7 @@ | |||
212 | interrupt-controller; | 212 | interrupt-controller; |
213 | gpio-controller; | 213 | gpio-controller; |
214 | #gpio-cells = <2>; | 214 | #gpio-cells = <2>; |
215 | gpio-ranges = <&pinmux 0 246>; | 215 | gpio-ranges = <&pinmux 0 0 246>; |
216 | status = "disabled"; | 216 | status = "disabled"; |
217 | 217 | ||
218 | st-plgpio,ngpio = <246>; | 218 | st-plgpio,ngpio = <246>; |
diff --git a/arch/arm/boot/dts/spear1340.dtsi b/arch/arm/boot/dts/spear1340.dtsi index 34da11aa6795..c511c4772efd 100644 --- a/arch/arm/boot/dts/spear1340.dtsi +++ b/arch/arm/boot/dts/spear1340.dtsi | |||
@@ -63,7 +63,7 @@ | |||
63 | pinmux: pinmux@e0700000 { | 63 | pinmux: pinmux@e0700000 { |
64 | compatible = "st,spear1340-pinmux"; | 64 | compatible = "st,spear1340-pinmux"; |
65 | reg = <0xe0700000 0x1000>; | 65 | reg = <0xe0700000 0x1000>; |
66 | #gpio-range-cells = <2>; | 66 | #gpio-range-cells = <3>; |
67 | }; | 67 | }; |
68 | 68 | ||
69 | pwm: pwm@e0180000 { | 69 | pwm: pwm@e0180000 { |
@@ -127,7 +127,7 @@ | |||
127 | interrupt-controller; | 127 | interrupt-controller; |
128 | gpio-controller; | 128 | gpio-controller; |
129 | #gpio-cells = <2>; | 129 | #gpio-cells = <2>; |
130 | gpio-ranges = <&pinmux 0 252>; | 130 | gpio-ranges = <&pinmux 0 0 252>; |
131 | status = "disabled"; | 131 | status = "disabled"; |
132 | 132 | ||
133 | st-plgpio,ngpio = <250>; | 133 | st-plgpio,ngpio = <250>; |
diff --git a/arch/arm/boot/dts/spear310.dtsi b/arch/arm/boot/dts/spear310.dtsi index ab45b8c81982..95372080eea6 100644 --- a/arch/arm/boot/dts/spear310.dtsi +++ b/arch/arm/boot/dts/spear310.dtsi | |||
@@ -25,7 +25,7 @@ | |||
25 | pinmux: pinmux@b4000000 { | 25 | pinmux: pinmux@b4000000 { |
26 | compatible = "st,spear310-pinmux"; | 26 | compatible = "st,spear310-pinmux"; |
27 | reg = <0xb4000000 0x1000>; | 27 | reg = <0xb4000000 0x1000>; |
28 | #gpio-range-cells = <2>; | 28 | #gpio-range-cells = <3>; |
29 | }; | 29 | }; |
30 | 30 | ||
31 | fsmc: flash@44000000 { | 31 | fsmc: flash@44000000 { |
@@ -102,7 +102,7 @@ | |||
102 | interrupt-controller; | 102 | interrupt-controller; |
103 | gpio-controller; | 103 | gpio-controller; |
104 | #gpio-cells = <2>; | 104 | #gpio-cells = <2>; |
105 | gpio-ranges = <&pinmux 0 102>; | 105 | gpio-ranges = <&pinmux 0 0 102>; |
106 | status = "disabled"; | 106 | status = "disabled"; |
107 | 107 | ||
108 | st-plgpio,ngpio = <102>; | 108 | st-plgpio,ngpio = <102>; |
diff --git a/arch/arm/boot/dts/spear320.dtsi b/arch/arm/boot/dts/spear320.dtsi index caa5520b1fd4..ffea342aeec9 100644 --- a/arch/arm/boot/dts/spear320.dtsi +++ b/arch/arm/boot/dts/spear320.dtsi | |||
@@ -24,7 +24,7 @@ | |||
24 | pinmux: pinmux@b3000000 { | 24 | pinmux: pinmux@b3000000 { |
25 | compatible = "st,spear320-pinmux"; | 25 | compatible = "st,spear320-pinmux"; |
26 | reg = <0xb3000000 0x1000>; | 26 | reg = <0xb3000000 0x1000>; |
27 | #gpio-range-cells = <2>; | 27 | #gpio-range-cells = <3>; |
28 | }; | 28 | }; |
29 | 29 | ||
30 | clcd@90000000 { | 30 | clcd@90000000 { |
@@ -130,7 +130,7 @@ | |||
130 | interrupt-controller; | 130 | interrupt-controller; |
131 | gpio-controller; | 131 | gpio-controller; |
132 | #gpio-cells = <2>; | 132 | #gpio-cells = <2>; |
133 | gpio-ranges = <&pinmux 0 102>; | 133 | gpio-ranges = <&pinmux 0 0 102>; |
134 | status = "disabled"; | 134 | status = "disabled"; |
135 | 135 | ||
136 | st-plgpio,ngpio = <102>; | 136 | st-plgpio,ngpio = <102>; |
diff --git a/arch/arm/mach-shmobile/board-ag5evm.c b/arch/arm/mach-shmobile/board-ag5evm.c index 8ff53a19c48c..c7540710906f 100644 --- a/arch/arm/mach-shmobile/board-ag5evm.c +++ b/arch/arm/mach-shmobile/board-ag5evm.c | |||
@@ -23,6 +23,8 @@ | |||
23 | #include <linux/init.h> | 23 | #include <linux/init.h> |
24 | #include <linux/interrupt.h> | 24 | #include <linux/interrupt.h> |
25 | #include <linux/irq.h> | 25 | #include <linux/irq.h> |
26 | #include <linux/pinctrl/machine.h> | ||
27 | #include <linux/pinctrl/pinconf-generic.h> | ||
26 | #include <linux/platform_device.h> | 28 | #include <linux/platform_device.h> |
27 | #include <linux/delay.h> | 29 | #include <linux/delay.h> |
28 | #include <linux/io.h> | 30 | #include <linux/io.h> |
@@ -304,9 +306,9 @@ static int lcd_backlight_set_brightness(int brightness) | |||
304 | 306 | ||
305 | if (brightness == 0) { | 307 | if (brightness == 0) { |
306 | /* Reset the chip */ | 308 | /* Reset the chip */ |
307 | gpio_set_value(GPIO_PORT235, 0); | 309 | gpio_set_value(235, 0); |
308 | mdelay(24); | 310 | mdelay(24); |
309 | gpio_set_value(GPIO_PORT235, 1); | 311 | gpio_set_value(235, 1); |
310 | return 0; | 312 | return 0; |
311 | } | 313 | } |
312 | 314 | ||
@@ -406,7 +408,7 @@ static struct sh_mobile_sdhi_info sdhi0_info = { | |||
406 | .tmio_flags = TMIO_MMC_HAS_IDLE_WAIT | TMIO_MMC_USE_GPIO_CD, | 408 | .tmio_flags = TMIO_MMC_HAS_IDLE_WAIT | TMIO_MMC_USE_GPIO_CD, |
407 | .tmio_caps = MMC_CAP_SD_HIGHSPEED, | 409 | .tmio_caps = MMC_CAP_SD_HIGHSPEED, |
408 | .tmio_ocr_mask = MMC_VDD_27_28 | MMC_VDD_28_29, | 410 | .tmio_ocr_mask = MMC_VDD_27_28 | MMC_VDD_28_29, |
409 | .cd_gpio = GPIO_PORT251, | 411 | .cd_gpio = 251, |
410 | }; | 412 | }; |
411 | 413 | ||
412 | static struct resource sdhi0_resources[] = { | 414 | static struct resource sdhi0_resources[] = { |
@@ -461,7 +463,7 @@ static struct regulator_init_data cn4_power_init_data = { | |||
461 | static struct fixed_voltage_config cn4_power_info = { | 463 | static struct fixed_voltage_config cn4_power_info = { |
462 | .supply_name = "CN4 SD/MMC Vdd", | 464 | .supply_name = "CN4 SD/MMC Vdd", |
463 | .microvolts = 3300000, | 465 | .microvolts = 3300000, |
464 | .gpio = GPIO_PORT114, | 466 | .gpio = 114, |
465 | .enable_high = 1, | 467 | .enable_high = 1, |
466 | .init_data = &cn4_power_init_data, | 468 | .init_data = &cn4_power_init_data, |
467 | }; | 469 | }; |
@@ -479,10 +481,10 @@ static void ag5evm_sdhi1_set_pwr(struct platform_device *pdev, int state) | |||
479 | static int power_gpio = -EINVAL; | 481 | static int power_gpio = -EINVAL; |
480 | 482 | ||
481 | if (power_gpio < 0) { | 483 | if (power_gpio < 0) { |
482 | int ret = gpio_request_one(GPIO_PORT114, GPIOF_OUT_INIT_LOW, | 484 | int ret = gpio_request_one(114, GPIOF_OUT_INIT_LOW, |
483 | "sdhi1_power"); | 485 | "sdhi1_power"); |
484 | if (!ret) | 486 | if (!ret) |
485 | power_gpio = GPIO_PORT114; | 487 | power_gpio = 114; |
486 | } | 488 | } |
487 | 489 | ||
488 | /* | 490 | /* |
@@ -493,7 +495,7 @@ static void ag5evm_sdhi1_set_pwr(struct platform_device *pdev, int state) | |||
493 | * regulator driver. We have to live with the race in case the driver | 495 | * regulator driver. We have to live with the race in case the driver |
494 | * gets unloaded and the GPIO freed between these two steps. | 496 | * gets unloaded and the GPIO freed between these two steps. |
495 | */ | 497 | */ |
496 | gpio_set_value(GPIO_PORT114, state); | 498 | gpio_set_value(114, state); |
497 | } | 499 | } |
498 | 500 | ||
499 | static struct sh_mobile_sdhi_info sh_sdhi1_info = { | 501 | static struct sh_mobile_sdhi_info sh_sdhi1_info = { |
@@ -550,6 +552,77 @@ static struct platform_device *ag5evm_devices[] __initdata = { | |||
550 | &sdhi1_device, | 552 | &sdhi1_device, |
551 | }; | 553 | }; |
552 | 554 | ||
555 | static unsigned long pin_pullup_conf[] = { | ||
556 | PIN_CONF_PACKED(PIN_CONFIG_BIAS_PULL_UP, 0), | ||
557 | }; | ||
558 | |||
559 | static const struct pinctrl_map ag5evm_pinctrl_map[] = { | ||
560 | /* FSIA */ | ||
561 | PIN_MAP_MUX_GROUP_DEFAULT("sh_fsi2.0", "pfc-sh73a0", | ||
562 | "fsia_mclk_in", "fsia"), | ||
563 | PIN_MAP_MUX_GROUP_DEFAULT("sh_fsi2.0", "pfc-sh73a0", | ||
564 | "fsia_sclk_in", "fsia"), | ||
565 | PIN_MAP_MUX_GROUP_DEFAULT("sh_fsi2.0", "pfc-sh73a0", | ||
566 | "fsia_data_in", "fsia"), | ||
567 | PIN_MAP_MUX_GROUP_DEFAULT("sh_fsi2.0", "pfc-sh73a0", | ||
568 | "fsia_data_out", "fsia"), | ||
569 | /* I2C2 & I2C3 */ | ||
570 | PIN_MAP_MUX_GROUP_DEFAULT("i2c-sh_mobile.2", "pfc-sh73a0", | ||
571 | "i2c2_0", "i2c2"), | ||
572 | PIN_MAP_MUX_GROUP_DEFAULT("i2c-sh_mobile.3", "pfc-sh73a0", | ||
573 | "i2c3_0", "i2c3"), | ||
574 | /* IrDA */ | ||
575 | PIN_MAP_MUX_GROUP_DEFAULT("sh_irda.0", "pfc-sh73a0", | ||
576 | "irda_0", "irda"), | ||
577 | /* KEYSC */ | ||
578 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
579 | "keysc_in8", "keysc"), | ||
580 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
581 | "keysc_out04", "keysc"), | ||
582 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
583 | "keysc_out5", "keysc"), | ||
584 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
585 | "keysc_out6_0", "keysc"), | ||
586 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
587 | "keysc_out7_0", "keysc"), | ||
588 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
589 | "keysc_out8_0", "keysc"), | ||
590 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
591 | "keysc_out9_2", "keysc"), | ||
592 | PIN_MAP_CONFIGS_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
593 | "keysc_in8", pin_pullup_conf), | ||
594 | /* MMCIF */ | ||
595 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh73a0", | ||
596 | "mmc0_data8_0", "mmc0"), | ||
597 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh73a0", | ||
598 | "mmc0_ctrl_0", "mmc0"), | ||
599 | PIN_MAP_CONFIGS_PIN_DEFAULT("sh_mmcif.0", "pfc-sh73a0", | ||
600 | "PORT279", pin_pullup_conf), | ||
601 | PIN_MAP_CONFIGS_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh73a0", | ||
602 | "mmc0_data8_0", pin_pullup_conf), | ||
603 | /* SCIFA2 */ | ||
604 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.2", "pfc-sh73a0", | ||
605 | "scifa2_data_0", "scifa2"), | ||
606 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.2", "pfc-sh73a0", | ||
607 | "scifa2_ctrl_0", "scifa2"), | ||
608 | /* SDHI0 (CN15 [SD I/F]) */ | ||
609 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
610 | "sdhi0_data4", "sdhi0"), | ||
611 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
612 | "sdhi0_ctrl", "sdhi0"), | ||
613 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
614 | "sdhi0_wp", "sdhi0"), | ||
615 | /* SDHI1 (CN4 [WLAN I/F]) */ | ||
616 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-sh73a0", | ||
617 | "sdhi1_data4", "sdhi1"), | ||
618 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-sh73a0", | ||
619 | "sdhi1_ctrl", "sdhi1"), | ||
620 | PIN_MAP_CONFIGS_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-sh73a0", | ||
621 | "sdhi1_data4", pin_pullup_conf), | ||
622 | PIN_MAP_CONFIGS_PIN_DEFAULT("sh_mobile_sdhi.1", "pfc-sh73a0", | ||
623 | "PORT263", pin_pullup_conf), | ||
624 | }; | ||
625 | |||
553 | static void __init ag5evm_init(void) | 626 | static void __init ag5evm_init(void) |
554 | { | 627 | { |
555 | regulator_register_always_on(0, "fixed-1.8V", fixed1v8_power_consumers, | 628 | regulator_register_always_on(0, "fixed-1.8V", fixed1v8_power_consumers, |
@@ -558,96 +631,27 @@ static void __init ag5evm_init(void) | |||
558 | ARRAY_SIZE(fixed2v8_power_consumers), 3300000); | 631 | ARRAY_SIZE(fixed2v8_power_consumers), 3300000); |
559 | regulator_register_fixed(3, dummy_supplies, ARRAY_SIZE(dummy_supplies)); | 632 | regulator_register_fixed(3, dummy_supplies, ARRAY_SIZE(dummy_supplies)); |
560 | 633 | ||
634 | pinctrl_register_mappings(ag5evm_pinctrl_map, | ||
635 | ARRAY_SIZE(ag5evm_pinctrl_map)); | ||
561 | sh73a0_pinmux_init(); | 636 | sh73a0_pinmux_init(); |
562 | 637 | ||
563 | /* enable SCIFA2 */ | ||
564 | gpio_request(GPIO_FN_SCIFA2_TXD1, NULL); | ||
565 | gpio_request(GPIO_FN_SCIFA2_RXD1, NULL); | ||
566 | gpio_request(GPIO_FN_SCIFA2_RTS1_, NULL); | ||
567 | gpio_request(GPIO_FN_SCIFA2_CTS1_, NULL); | ||
568 | |||
569 | /* enable KEYSC */ | ||
570 | gpio_request(GPIO_FN_KEYIN0_PU, NULL); | ||
571 | gpio_request(GPIO_FN_KEYIN1_PU, NULL); | ||
572 | gpio_request(GPIO_FN_KEYIN2_PU, NULL); | ||
573 | gpio_request(GPIO_FN_KEYIN3_PU, NULL); | ||
574 | gpio_request(GPIO_FN_KEYIN4_PU, NULL); | ||
575 | gpio_request(GPIO_FN_KEYIN5_PU, NULL); | ||
576 | gpio_request(GPIO_FN_KEYIN6_PU, NULL); | ||
577 | gpio_request(GPIO_FN_KEYIN7_PU, NULL); | ||
578 | gpio_request(GPIO_FN_KEYOUT0, NULL); | ||
579 | gpio_request(GPIO_FN_KEYOUT1, NULL); | ||
580 | gpio_request(GPIO_FN_KEYOUT2, NULL); | ||
581 | gpio_request(GPIO_FN_KEYOUT3, NULL); | ||
582 | gpio_request(GPIO_FN_KEYOUT4, NULL); | ||
583 | gpio_request(GPIO_FN_KEYOUT5, NULL); | ||
584 | gpio_request(GPIO_FN_PORT59_KEYOUT6, NULL); | ||
585 | gpio_request(GPIO_FN_PORT58_KEYOUT7, NULL); | ||
586 | gpio_request(GPIO_FN_KEYOUT8, NULL); | ||
587 | gpio_request(GPIO_FN_PORT149_KEYOUT9, NULL); | ||
588 | |||
589 | /* enable I2C channel 2 and 3 */ | ||
590 | gpio_request(GPIO_FN_PORT236_I2C_SDA2, NULL); | ||
591 | gpio_request(GPIO_FN_PORT237_I2C_SCL2, NULL); | ||
592 | gpio_request(GPIO_FN_PORT248_I2C_SCL3, NULL); | ||
593 | gpio_request(GPIO_FN_PORT249_I2C_SDA3, NULL); | ||
594 | |||
595 | /* enable MMCIF */ | 638 | /* enable MMCIF */ |
596 | gpio_request(GPIO_FN_MMCCLK0, NULL); | 639 | gpio_request_one(208, GPIOF_OUT_INIT_HIGH, NULL); /* Reset */ |
597 | gpio_request(GPIO_FN_MMCCMD0_PU, NULL); | ||
598 | gpio_request(GPIO_FN_MMCD0_0_PU, NULL); | ||
599 | gpio_request(GPIO_FN_MMCD0_1_PU, NULL); | ||
600 | gpio_request(GPIO_FN_MMCD0_2_PU, NULL); | ||
601 | gpio_request(GPIO_FN_MMCD0_3_PU, NULL); | ||
602 | gpio_request(GPIO_FN_MMCD0_4_PU, NULL); | ||
603 | gpio_request(GPIO_FN_MMCD0_5_PU, NULL); | ||
604 | gpio_request(GPIO_FN_MMCD0_6_PU, NULL); | ||
605 | gpio_request(GPIO_FN_MMCD0_7_PU, NULL); | ||
606 | gpio_request_one(GPIO_PORT208, GPIOF_OUT_INIT_HIGH, NULL); /* Reset */ | ||
607 | 640 | ||
608 | /* enable SMSC911X */ | 641 | /* enable SMSC911X */ |
609 | gpio_request_one(GPIO_PORT144, GPIOF_IN, NULL); /* PINTA2 */ | 642 | gpio_request_one(144, GPIOF_IN, NULL); /* PINTA2 */ |
610 | gpio_request_one(GPIO_PORT145, GPIOF_OUT_INIT_HIGH, NULL); /* RESET */ | 643 | gpio_request_one(145, GPIOF_OUT_INIT_HIGH, NULL); /* RESET */ |
611 | |||
612 | /* FSI A */ | ||
613 | gpio_request(GPIO_FN_FSIACK, NULL); | ||
614 | gpio_request(GPIO_FN_FSIAILR, NULL); | ||
615 | gpio_request(GPIO_FN_FSIAIBT, NULL); | ||
616 | gpio_request(GPIO_FN_FSIAISLD, NULL); | ||
617 | gpio_request(GPIO_FN_FSIAOSLD, NULL); | ||
618 | |||
619 | /* IrDA */ | ||
620 | gpio_request(GPIO_FN_PORT241_IRDA_OUT, NULL); | ||
621 | gpio_request(GPIO_FN_PORT242_IRDA_IN, NULL); | ||
622 | gpio_request(GPIO_FN_PORT243_IRDA_FIRSEL, NULL); | ||
623 | 644 | ||
624 | /* LCD panel */ | 645 | /* LCD panel */ |
625 | gpio_request_one(GPIO_PORT217, GPIOF_OUT_INIT_LOW, NULL); /* RESET */ | 646 | gpio_request_one(217, GPIOF_OUT_INIT_LOW, NULL); /* RESET */ |
626 | mdelay(1); | 647 | mdelay(1); |
627 | gpio_set_value(GPIO_PORT217, 1); | 648 | gpio_set_value(217, 1); |
628 | mdelay(100); | 649 | mdelay(100); |
629 | 650 | ||
630 | /* LCD backlight controller */ | 651 | /* LCD backlight controller */ |
631 | gpio_request_one(GPIO_PORT235, GPIOF_OUT_INIT_LOW, NULL); /* RESET */ | 652 | gpio_request_one(235, GPIOF_OUT_INIT_LOW, NULL); /* RESET */ |
632 | lcd_backlight_set_brightness(0); | 653 | lcd_backlight_set_brightness(0); |
633 | 654 | ||
634 | /* enable SDHI0 on CN15 [SD I/F] */ | ||
635 | gpio_request(GPIO_FN_SDHIWP0, NULL); | ||
636 | gpio_request(GPIO_FN_SDHICMD0, NULL); | ||
637 | gpio_request(GPIO_FN_SDHICLK0, NULL); | ||
638 | gpio_request(GPIO_FN_SDHID0_3, NULL); | ||
639 | gpio_request(GPIO_FN_SDHID0_2, NULL); | ||
640 | gpio_request(GPIO_FN_SDHID0_1, NULL); | ||
641 | gpio_request(GPIO_FN_SDHID0_0, NULL); | ||
642 | |||
643 | /* enable SDHI1 on CN4 [WLAN I/F] */ | ||
644 | gpio_request(GPIO_FN_SDHICLK1, NULL); | ||
645 | gpio_request(GPIO_FN_SDHICMD1_PU, NULL); | ||
646 | gpio_request(GPIO_FN_SDHID1_3_PU, NULL); | ||
647 | gpio_request(GPIO_FN_SDHID1_2_PU, NULL); | ||
648 | gpio_request(GPIO_FN_SDHID1_1_PU, NULL); | ||
649 | gpio_request(GPIO_FN_SDHID1_0_PU, NULL); | ||
650 | |||
651 | #ifdef CONFIG_CACHE_L2X0 | 655 | #ifdef CONFIG_CACHE_L2X0 |
652 | /* Shared attribute override enable, 64K*8way */ | 656 | /* Shared attribute override enable, 64K*8way */ |
653 | l2x0_init(IOMEM(0xf0100000), 0x00460000, 0xc2000fff); | 657 | l2x0_init(IOMEM(0xf0100000), 0x00460000, 0xc2000fff); |
diff --git a/arch/arm/mach-shmobile/board-ap4evb.c b/arch/arm/mach-shmobile/board-ap4evb.c index 38f1259a0daf..45f78cadec1d 100644 --- a/arch/arm/mach-shmobile/board-ap4evb.c +++ b/arch/arm/mach-shmobile/board-ap4evb.c | |||
@@ -34,6 +34,7 @@ | |||
34 | #include <linux/i2c.h> | 34 | #include <linux/i2c.h> |
35 | #include <linux/i2c/tsc2007.h> | 35 | #include <linux/i2c/tsc2007.h> |
36 | #include <linux/io.h> | 36 | #include <linux/io.h> |
37 | #include <linux/pinctrl/machine.h> | ||
37 | #include <linux/regulator/fixed.h> | 38 | #include <linux/regulator/fixed.h> |
38 | #include <linux/regulator/machine.h> | 39 | #include <linux/regulator/machine.h> |
39 | #include <linux/smsc911x.h> | 40 | #include <linux/smsc911x.h> |
@@ -273,11 +274,11 @@ static struct platform_device smc911x_device = { | |||
273 | 274 | ||
274 | /* | 275 | /* |
275 | * The card detect pin of the top SD/MMC slot (CN7) is active low and is | 276 | * The card detect pin of the top SD/MMC slot (CN7) is active low and is |
276 | * connected to GPIO A22 of SH7372 (GPIO_PORT41). | 277 | * connected to GPIO A22 of SH7372 (GPIO 41). |
277 | */ | 278 | */ |
278 | static int slot_cn7_get_cd(struct platform_device *pdev) | 279 | static int slot_cn7_get_cd(struct platform_device *pdev) |
279 | { | 280 | { |
280 | return !gpio_get_value(GPIO_PORT41); | 281 | return !gpio_get_value(41); |
281 | } | 282 | } |
282 | /* MERAM */ | 283 | /* MERAM */ |
283 | static struct sh_mobile_meram_info meram_info = { | 284 | static struct sh_mobile_meram_info meram_info = { |
@@ -838,22 +839,22 @@ static struct platform_device fsi_hdmi_device = { | |||
838 | static struct gpio_led ap4evb_leds[] = { | 839 | static struct gpio_led ap4evb_leds[] = { |
839 | { | 840 | { |
840 | .name = "led4", | 841 | .name = "led4", |
841 | .gpio = GPIO_PORT185, | 842 | .gpio = 185, |
842 | .default_state = LEDS_GPIO_DEFSTATE_ON, | 843 | .default_state = LEDS_GPIO_DEFSTATE_ON, |
843 | }, | 844 | }, |
844 | { | 845 | { |
845 | .name = "led2", | 846 | .name = "led2", |
846 | .gpio = GPIO_PORT186, | 847 | .gpio = 186, |
847 | .default_state = LEDS_GPIO_DEFSTATE_ON, | 848 | .default_state = LEDS_GPIO_DEFSTATE_ON, |
848 | }, | 849 | }, |
849 | { | 850 | { |
850 | .name = "led3", | 851 | .name = "led3", |
851 | .gpio = GPIO_PORT187, | 852 | .gpio = 187, |
852 | .default_state = LEDS_GPIO_DEFSTATE_ON, | 853 | .default_state = LEDS_GPIO_DEFSTATE_ON, |
853 | }, | 854 | }, |
854 | { | 855 | { |
855 | .name = "led1", | 856 | .name = "led1", |
856 | .gpio = GPIO_PORT188, | 857 | .gpio = 188, |
857 | .default_state = LEDS_GPIO_DEFSTATE_ON, | 858 | .default_state = LEDS_GPIO_DEFSTATE_ON, |
858 | } | 859 | } |
859 | }; | 860 | }; |
@@ -1026,10 +1027,10 @@ out: | |||
1026 | /* TouchScreen */ | 1027 | /* TouchScreen */ |
1027 | #ifdef CONFIG_AP4EVB_QHD | 1028 | #ifdef CONFIG_AP4EVB_QHD |
1028 | # define GPIO_TSC_IRQ GPIO_FN_IRQ28_123 | 1029 | # define GPIO_TSC_IRQ GPIO_FN_IRQ28_123 |
1029 | # define GPIO_TSC_PORT GPIO_PORT123 | 1030 | # define GPIO_TSC_PORT 123 |
1030 | #else /* WVGA */ | 1031 | #else /* WVGA */ |
1031 | # define GPIO_TSC_IRQ GPIO_FN_IRQ7_40 | 1032 | # define GPIO_TSC_IRQ GPIO_FN_IRQ7_40 |
1032 | # define GPIO_TSC_PORT GPIO_PORT40 | 1033 | # define GPIO_TSC_PORT 40 |
1033 | #endif | 1034 | #endif |
1034 | 1035 | ||
1035 | #define IRQ28 evt2irq(0x3380) /* IRQ28A */ | 1036 | #define IRQ28 evt2irq(0x3380) /* IRQ28A */ |
@@ -1084,6 +1085,28 @@ static struct i2c_board_info i2c1_devices[] = { | |||
1084 | }; | 1085 | }; |
1085 | 1086 | ||
1086 | 1087 | ||
1088 | static const struct pinctrl_map ap4evb_pinctrl_map[] = { | ||
1089 | /* MMCIF */ | ||
1090 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh7372", | ||
1091 | "mmc0_data8_0", "mmc0"), | ||
1092 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh7372", | ||
1093 | "mmc0_ctrl_0", "mmc0"), | ||
1094 | /* SDHI0 */ | ||
1095 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh7372", | ||
1096 | "sdhi0_data4", "sdhi0"), | ||
1097 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh7372", | ||
1098 | "sdhi0_ctrl", "sdhi0"), | ||
1099 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh7372", | ||
1100 | "sdhi0_cd", "sdhi0"), | ||
1101 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh7372", | ||
1102 | "sdhi0_wp", "sdhi0"), | ||
1103 | /* SDHI1 */ | ||
1104 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-sh7372", | ||
1105 | "sdhi1_data4", "sdhi1"), | ||
1106 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-sh7372", | ||
1107 | "sdhi1_ctrl", "sdhi1"), | ||
1108 | }; | ||
1109 | |||
1087 | #define GPIO_PORT9CR IOMEM(0xE6051009) | 1110 | #define GPIO_PORT9CR IOMEM(0xE6051009) |
1088 | #define GPIO_PORT10CR IOMEM(0xE605100A) | 1111 | #define GPIO_PORT10CR IOMEM(0xE605100A) |
1089 | #define USCCR1 IOMEM(0xE6058144) | 1112 | #define USCCR1 IOMEM(0xE6058144) |
@@ -1110,6 +1133,8 @@ static void __init ap4evb_init(void) | |||
1110 | /* External clock source */ | 1133 | /* External clock source */ |
1111 | clk_set_rate(&sh7372_dv_clki_clk, 27000000); | 1134 | clk_set_rate(&sh7372_dv_clki_clk, 27000000); |
1112 | 1135 | ||
1136 | pinctrl_register_mappings(ap4evb_pinctrl_map, | ||
1137 | ARRAY_SIZE(ap4evb_pinctrl_map)); | ||
1113 | sh7372_pinmux_init(); | 1138 | sh7372_pinmux_init(); |
1114 | 1139 | ||
1115 | /* enable SCIFA0 */ | 1140 | /* enable SCIFA0 */ |
@@ -1121,40 +1146,10 @@ static void __init ap4evb_init(void) | |||
1121 | gpio_request(GPIO_FN_IRQ6_39, NULL); | 1146 | gpio_request(GPIO_FN_IRQ6_39, NULL); |
1122 | 1147 | ||
1123 | /* enable Debug switch (S6) */ | 1148 | /* enable Debug switch (S6) */ |
1124 | gpio_request_one(GPIO_PORT32, GPIOF_IN | GPIOF_EXPORT, NULL); | 1149 | gpio_request_one(32, GPIOF_IN | GPIOF_EXPORT, NULL); |
1125 | gpio_request_one(GPIO_PORT33, GPIOF_IN | GPIOF_EXPORT, NULL); | 1150 | gpio_request_one(33, GPIOF_IN | GPIOF_EXPORT, NULL); |
1126 | gpio_request_one(GPIO_PORT34, GPIOF_IN | GPIOF_EXPORT, NULL); | 1151 | gpio_request_one(34, GPIOF_IN | GPIOF_EXPORT, NULL); |
1127 | gpio_request_one(GPIO_PORT35, GPIOF_IN | GPIOF_EXPORT, NULL); | 1152 | gpio_request_one(35, GPIOF_IN | GPIOF_EXPORT, NULL); |
1128 | |||
1129 | /* SDHI0 */ | ||
1130 | gpio_request(GPIO_FN_SDHICD0, NULL); | ||
1131 | gpio_request(GPIO_FN_SDHIWP0, NULL); | ||
1132 | gpio_request(GPIO_FN_SDHICMD0, NULL); | ||
1133 | gpio_request(GPIO_FN_SDHICLK0, NULL); | ||
1134 | gpio_request(GPIO_FN_SDHID0_3, NULL); | ||
1135 | gpio_request(GPIO_FN_SDHID0_2, NULL); | ||
1136 | gpio_request(GPIO_FN_SDHID0_1, NULL); | ||
1137 | gpio_request(GPIO_FN_SDHID0_0, NULL); | ||
1138 | |||
1139 | /* SDHI1 */ | ||
1140 | gpio_request(GPIO_FN_SDHICMD1, NULL); | ||
1141 | gpio_request(GPIO_FN_SDHICLK1, NULL); | ||
1142 | gpio_request(GPIO_FN_SDHID1_3, NULL); | ||
1143 | gpio_request(GPIO_FN_SDHID1_2, NULL); | ||
1144 | gpio_request(GPIO_FN_SDHID1_1, NULL); | ||
1145 | gpio_request(GPIO_FN_SDHID1_0, NULL); | ||
1146 | |||
1147 | /* MMCIF */ | ||
1148 | gpio_request(GPIO_FN_MMCD0_0, NULL); | ||
1149 | gpio_request(GPIO_FN_MMCD0_1, NULL); | ||
1150 | gpio_request(GPIO_FN_MMCD0_2, NULL); | ||
1151 | gpio_request(GPIO_FN_MMCD0_3, NULL); | ||
1152 | gpio_request(GPIO_FN_MMCD0_4, NULL); | ||
1153 | gpio_request(GPIO_FN_MMCD0_5, NULL); | ||
1154 | gpio_request(GPIO_FN_MMCD0_6, NULL); | ||
1155 | gpio_request(GPIO_FN_MMCD0_7, NULL); | ||
1156 | gpio_request(GPIO_FN_MMCCMD0, NULL); | ||
1157 | gpio_request(GPIO_FN_MMCCLK0, NULL); | ||
1158 | 1153 | ||
1159 | /* USB enable */ | 1154 | /* USB enable */ |
1160 | gpio_request(GPIO_FN_VBUS0_1, NULL); | 1155 | gpio_request(GPIO_FN_VBUS0_1, NULL); |
@@ -1172,15 +1167,15 @@ static void __init ap4evb_init(void) | |||
1172 | gpio_request(GPIO_FN_FSIAILR, NULL); | 1167 | gpio_request(GPIO_FN_FSIAILR, NULL); |
1173 | gpio_request(GPIO_FN_FSIAISLD, NULL); | 1168 | gpio_request(GPIO_FN_FSIAISLD, NULL); |
1174 | gpio_request(GPIO_FN_FSIAOSLD, NULL); | 1169 | gpio_request(GPIO_FN_FSIAOSLD, NULL); |
1175 | gpio_request_one(GPIO_PORT161, GPIOF_OUT_INIT_LOW, NULL); /* slave */ | 1170 | gpio_request_one(161, GPIOF_OUT_INIT_LOW, NULL); /* slave */ |
1176 | 1171 | ||
1177 | gpio_request(GPIO_PORT9, NULL); | 1172 | gpio_request(9, NULL); |
1178 | gpio_request(GPIO_PORT10, NULL); | 1173 | gpio_request(10, NULL); |
1179 | gpio_direction_none(GPIO_PORT9CR); /* FSIAOBT needs no direction */ | 1174 | gpio_direction_none(GPIO_PORT9CR); /* FSIAOBT needs no direction */ |
1180 | gpio_direction_none(GPIO_PORT10CR); /* FSIAOLR needs no direction */ | 1175 | gpio_direction_none(GPIO_PORT10CR); /* FSIAOLR needs no direction */ |
1181 | 1176 | ||
1182 | /* card detect pin for MMC slot (CN7) */ | 1177 | /* card detect pin for MMC slot (CN7) */ |
1183 | gpio_request_one(GPIO_PORT41, GPIOF_IN, NULL); | 1178 | gpio_request_one(41, GPIOF_IN, NULL); |
1184 | 1179 | ||
1185 | /* setup FSI2 port B (HDMI) */ | 1180 | /* setup FSI2 port B (HDMI) */ |
1186 | gpio_request(GPIO_FN_FSIBCK, NULL); | 1181 | gpio_request(GPIO_FN_FSIBCK, NULL); |
@@ -1268,8 +1263,8 @@ static void __init ap4evb_init(void) | |||
1268 | gpio_request(GPIO_FN_LCDDISP, NULL); | 1263 | gpio_request(GPIO_FN_LCDDISP, NULL); |
1269 | gpio_request(GPIO_FN_LCDDCK, NULL); | 1264 | gpio_request(GPIO_FN_LCDDCK, NULL); |
1270 | 1265 | ||
1271 | gpio_request_one(GPIO_PORT189, GPIOF_OUT_INIT_HIGH, NULL); /* backlight */ | 1266 | gpio_request_one(189, GPIOF_OUT_INIT_HIGH, NULL); /* backlight */ |
1272 | gpio_request_one(GPIO_PORT151, GPIOF_OUT_INIT_HIGH, NULL); /* LCDDON */ | 1267 | gpio_request_one(151, GPIOF_OUT_INIT_HIGH, NULL); /* LCDDON */ |
1273 | 1268 | ||
1274 | lcdc_info.clock_source = LCDC_CLK_BUS; | 1269 | lcdc_info.clock_source = LCDC_CLK_BUS; |
1275 | lcdc_info.ch[0].interface_type = RGB18; | 1270 | lcdc_info.ch[0].interface_type = RGB18; |
diff --git a/arch/arm/mach-shmobile/board-armadillo800eva.c b/arch/arm/mach-shmobile/board-armadillo800eva.c index f2ec0777cfbe..04eff93df793 100644 --- a/arch/arm/mach-shmobile/board-armadillo800eva.c +++ b/arch/arm/mach-shmobile/board-armadillo800eva.c | |||
@@ -28,6 +28,7 @@ | |||
28 | #include <linux/platform_device.h> | 28 | #include <linux/platform_device.h> |
29 | #include <linux/gpio.h> | 29 | #include <linux/gpio.h> |
30 | #include <linux/gpio_keys.h> | 30 | #include <linux/gpio_keys.h> |
31 | #include <linux/pinctrl/machine.h> | ||
31 | #include <linux/regulator/fixed.h> | 32 | #include <linux/regulator/fixed.h> |
32 | #include <linux/regulator/machine.h> | 33 | #include <linux/regulator/machine.h> |
33 | #include <linux/sh_eth.h> | 34 | #include <linux/sh_eth.h> |
@@ -227,7 +228,7 @@ static void usbhsf_power_ctrl(struct platform_device *pdev, | |||
227 | 228 | ||
228 | static int usbhsf_get_vbus(struct platform_device *pdev) | 229 | static int usbhsf_get_vbus(struct platform_device *pdev) |
229 | { | 230 | { |
230 | return gpio_get_value(GPIO_PORT209); | 231 | return gpio_get_value(209); |
231 | } | 232 | } |
232 | 233 | ||
233 | static irqreturn_t usbhsf_interrupt(int irq, void *data) | 234 | static irqreturn_t usbhsf_interrupt(int irq, void *data) |
@@ -535,10 +536,10 @@ static struct platform_device hdmi_lcdc_device = { | |||
535 | { .code = c, .gpio = g, .desc = d, .active_low = 1, __VA_ARGS__ } | 536 | { .code = c, .gpio = g, .desc = d, .active_low = 1, __VA_ARGS__ } |
536 | 537 | ||
537 | static struct gpio_keys_button gpio_buttons[] = { | 538 | static struct gpio_keys_button gpio_buttons[] = { |
538 | GPIO_KEY(KEY_POWER, GPIO_PORT99, "SW3", .wakeup = 1), | 539 | GPIO_KEY(KEY_POWER, 99, "SW3", .wakeup = 1), |
539 | GPIO_KEY(KEY_BACK, GPIO_PORT100, "SW4"), | 540 | GPIO_KEY(KEY_BACK, 100, "SW4"), |
540 | GPIO_KEY(KEY_MENU, GPIO_PORT97, "SW5"), | 541 | GPIO_KEY(KEY_MENU, 97, "SW5"), |
541 | GPIO_KEY(KEY_HOME, GPIO_PORT98, "SW6"), | 542 | GPIO_KEY(KEY_HOME, 98, "SW6"), |
542 | }; | 543 | }; |
543 | 544 | ||
544 | static struct gpio_keys_platform_data gpio_key_info = { | 545 | static struct gpio_keys_platform_data gpio_key_info = { |
@@ -656,6 +657,17 @@ static struct platform_device sdhi1_device = { | |||
656 | .resource = sdhi1_resources, | 657 | .resource = sdhi1_resources, |
657 | }; | 658 | }; |
658 | 659 | ||
660 | static const struct pinctrl_map eva_sdhi1_pinctrl_map[] = { | ||
661 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-r8a7740", | ||
662 | "sdhi1_data4", "sdhi1"), | ||
663 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-r8a7740", | ||
664 | "sdhi1_ctrl", "sdhi1"), | ||
665 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-r8a7740", | ||
666 | "sdhi1_cd", "sdhi1"), | ||
667 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-r8a7740", | ||
668 | "sdhi1_wp", "sdhi1"), | ||
669 | }; | ||
670 | |||
659 | /* MMCIF */ | 671 | /* MMCIF */ |
660 | static struct sh_mmcif_plat_data sh_mmcif_plat = { | 672 | static struct sh_mmcif_plat_data sh_mmcif_plat = { |
661 | .sup_pclk = 0, | 673 | .sup_pclk = 0, |
@@ -708,9 +720,9 @@ static int mt9t111_power(struct device *dev, int mode) | |||
708 | /* video1 (= CON1 camera) expect 24MHz */ | 720 | /* video1 (= CON1 camera) expect 24MHz */ |
709 | clk_set_rate(mclk, clk_round_rate(mclk, 24000000)); | 721 | clk_set_rate(mclk, clk_round_rate(mclk, 24000000)); |
710 | clk_enable(mclk); | 722 | clk_enable(mclk); |
711 | gpio_set_value(GPIO_PORT158, 1); | 723 | gpio_set_value(158, 1); |
712 | } else { | 724 | } else { |
713 | gpio_set_value(GPIO_PORT158, 0); | 725 | gpio_set_value(158, 0); |
714 | clk_disable(mclk); | 726 | clk_disable(mclk); |
715 | } | 727 | } |
716 | 728 | ||
@@ -864,8 +876,8 @@ static struct platform_device fsi_hdmi_device = { | |||
864 | 876 | ||
865 | /* RTC: RTC connects i2c-gpio. */ | 877 | /* RTC: RTC connects i2c-gpio. */ |
866 | static struct i2c_gpio_platform_data i2c_gpio_data = { | 878 | static struct i2c_gpio_platform_data i2c_gpio_data = { |
867 | .sda_pin = GPIO_PORT208, | 879 | .sda_pin = 208, |
868 | .scl_pin = GPIO_PORT91, | 880 | .scl_pin = 91, |
869 | .udelay = 5, /* 100 kHz */ | 881 | .udelay = 5, /* 100 kHz */ |
870 | }; | 882 | }; |
871 | 883 | ||
@@ -914,6 +926,28 @@ static struct platform_device *eva_devices[] __initdata = { | |||
914 | &i2c_gpio_device, | 926 | &i2c_gpio_device, |
915 | }; | 927 | }; |
916 | 928 | ||
929 | static const struct pinctrl_map eva_pinctrl_map[] = { | ||
930 | /* LCD0 */ | ||
931 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_lcdc_fb.0", "pfc-r8a7740", | ||
932 | "lcd0_data24_0", "lcd0"), | ||
933 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_lcdc_fb.0", "pfc-r8a7740", | ||
934 | "lcd0_lclk_1", "lcd0"), | ||
935 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_lcdc_fb.0", "pfc-r8a7740", | ||
936 | "lcd0_sync", "lcd0"), | ||
937 | /* MMCIF */ | ||
938 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-r8a7740", | ||
939 | "mmc0_data8_1", "mmc0"), | ||
940 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-r8a7740", | ||
941 | "mmc0_ctrl_1", "mmc0"), | ||
942 | /* SDHI0 */ | ||
943 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7740", | ||
944 | "sdhi0_data4", "sdhi0"), | ||
945 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7740", | ||
946 | "sdhi0_ctrl", "sdhi0"), | ||
947 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7740", | ||
948 | "sdhi0_wp", "sdhi0"), | ||
949 | }; | ||
950 | |||
917 | static void __init eva_clock_init(void) | 951 | static void __init eva_clock_init(void) |
918 | { | 952 | { |
919 | struct clk *system = clk_get(NULL, "system_clk"); | 953 | struct clk *system = clk_get(NULL, "system_clk"); |
@@ -961,6 +995,8 @@ static void __init eva_init(void) | |||
961 | regulator_register_always_on(0, "fixed-3.3V", fixed3v3_power_consumers, | 995 | regulator_register_always_on(0, "fixed-3.3V", fixed3v3_power_consumers, |
962 | ARRAY_SIZE(fixed3v3_power_consumers), 3300000); | 996 | ARRAY_SIZE(fixed3v3_power_consumers), 3300000); |
963 | 997 | ||
998 | pinctrl_register_mappings(eva_pinctrl_map, ARRAY_SIZE(eva_pinctrl_map)); | ||
999 | |||
964 | r8a7740_pinmux_init(); | 1000 | r8a7740_pinmux_init(); |
965 | r8a7740_meram_workaround(); | 1001 | r8a7740_meram_workaround(); |
966 | 1002 | ||
@@ -970,42 +1006,13 @@ static void __init eva_init(void) | |||
970 | 1006 | ||
971 | /* LCDC0 */ | 1007 | /* LCDC0 */ |
972 | gpio_request(GPIO_FN_LCDC0_SELECT, NULL); | 1008 | gpio_request(GPIO_FN_LCDC0_SELECT, NULL); |
973 | gpio_request(GPIO_FN_LCD0_D0, NULL); | 1009 | |
974 | gpio_request(GPIO_FN_LCD0_D1, NULL); | 1010 | gpio_request_one(61, GPIOF_OUT_INIT_HIGH, NULL); /* LCDDON */ |
975 | gpio_request(GPIO_FN_LCD0_D2, NULL); | 1011 | gpio_request_one(202, GPIOF_OUT_INIT_LOW, NULL); /* LCD0_LED_CONT */ |
976 | gpio_request(GPIO_FN_LCD0_D3, NULL); | ||
977 | gpio_request(GPIO_FN_LCD0_D4, NULL); | ||
978 | gpio_request(GPIO_FN_LCD0_D5, NULL); | ||
979 | gpio_request(GPIO_FN_LCD0_D6, NULL); | ||
980 | gpio_request(GPIO_FN_LCD0_D7, NULL); | ||
981 | gpio_request(GPIO_FN_LCD0_D8, NULL); | ||
982 | gpio_request(GPIO_FN_LCD0_D9, NULL); | ||
983 | gpio_request(GPIO_FN_LCD0_D10, NULL); | ||
984 | gpio_request(GPIO_FN_LCD0_D11, NULL); | ||
985 | gpio_request(GPIO_FN_LCD0_D12, NULL); | ||
986 | gpio_request(GPIO_FN_LCD0_D13, NULL); | ||
987 | gpio_request(GPIO_FN_LCD0_D14, NULL); | ||
988 | gpio_request(GPIO_FN_LCD0_D15, NULL); | ||
989 | gpio_request(GPIO_FN_LCD0_D16, NULL); | ||
990 | gpio_request(GPIO_FN_LCD0_D17, NULL); | ||
991 | gpio_request(GPIO_FN_LCD0_D18_PORT40, NULL); | ||
992 | gpio_request(GPIO_FN_LCD0_D19_PORT4, NULL); | ||
993 | gpio_request(GPIO_FN_LCD0_D20_PORT3, NULL); | ||
994 | gpio_request(GPIO_FN_LCD0_D21_PORT2, NULL); | ||
995 | gpio_request(GPIO_FN_LCD0_D22_PORT0, NULL); | ||
996 | gpio_request(GPIO_FN_LCD0_D23_PORT1, NULL); | ||
997 | gpio_request(GPIO_FN_LCD0_DCK, NULL); | ||
998 | gpio_request(GPIO_FN_LCD0_VSYN, NULL); | ||
999 | gpio_request(GPIO_FN_LCD0_HSYN, NULL); | ||
1000 | gpio_request(GPIO_FN_LCD0_DISP, NULL); | ||
1001 | gpio_request(GPIO_FN_LCD0_LCLK_PORT165, NULL); | ||
1002 | |||
1003 | gpio_request_one(GPIO_PORT61, GPIOF_OUT_INIT_HIGH, NULL); /* LCDDON */ | ||
1004 | gpio_request_one(GPIO_PORT202, GPIOF_OUT_INIT_LOW, NULL); /* LCD0_LED_CONT */ | ||
1005 | 1012 | ||
1006 | /* Touchscreen */ | 1013 | /* Touchscreen */ |
1007 | gpio_request(GPIO_FN_IRQ10, NULL); /* TP_INT */ | 1014 | gpio_request(GPIO_FN_IRQ10, NULL); /* TP_INT */ |
1008 | gpio_request_one(GPIO_PORT166, GPIOF_OUT_INIT_HIGH, NULL); /* TP_RST_B */ | 1015 | gpio_request_one(166, GPIOF_OUT_INIT_HIGH, NULL); /* TP_RST_B */ |
1009 | 1016 | ||
1010 | /* GETHER */ | 1017 | /* GETHER */ |
1011 | gpio_request(GPIO_FN_ET_CRS, NULL); | 1018 | gpio_request(GPIO_FN_ET_CRS, NULL); |
@@ -1028,12 +1035,12 @@ static void __init eva_init(void) | |||
1028 | gpio_request(GPIO_FN_ET_RX_DV, NULL); | 1035 | gpio_request(GPIO_FN_ET_RX_DV, NULL); |
1029 | gpio_request(GPIO_FN_ET_RX_CLK, NULL); | 1036 | gpio_request(GPIO_FN_ET_RX_CLK, NULL); |
1030 | 1037 | ||
1031 | gpio_request_one(GPIO_PORT18, GPIOF_OUT_INIT_HIGH, NULL); /* PHY_RST */ | 1038 | gpio_request_one(18, GPIOF_OUT_INIT_HIGH, NULL); /* PHY_RST */ |
1032 | 1039 | ||
1033 | /* USB */ | 1040 | /* USB */ |
1034 | gpio_request_one(GPIO_PORT159, GPIOF_IN, NULL); /* USB_DEVICE_MODE */ | 1041 | gpio_request_one(159, GPIOF_IN, NULL); /* USB_DEVICE_MODE */ |
1035 | 1042 | ||
1036 | if (gpio_get_value(GPIO_PORT159)) { | 1043 | if (gpio_get_value(159)) { |
1037 | /* USB Host */ | 1044 | /* USB Host */ |
1038 | } else { | 1045 | } else { |
1039 | /* USB Func */ | 1046 | /* USB Func */ |
@@ -1042,47 +1049,22 @@ static void __init eva_init(void) | |||
1042 | * OTOH, usbhs interrupt needs its value (HI/LOW) to decide | 1049 | * OTOH, usbhs interrupt needs its value (HI/LOW) to decide |
1043 | * USB connection/disconnection (usbhsf_get_vbus()). | 1050 | * USB connection/disconnection (usbhsf_get_vbus()). |
1044 | * This means we needs to select GPIO_FN_IRQ7_PORT209 first, | 1051 | * This means we needs to select GPIO_FN_IRQ7_PORT209 first, |
1045 | * and select GPIO_PORT209 here | 1052 | * and select GPIO 209 here |
1046 | */ | 1053 | */ |
1047 | gpio_request(GPIO_FN_IRQ7_PORT209, NULL); | 1054 | gpio_request(GPIO_FN_IRQ7_PORT209, NULL); |
1048 | gpio_request_one(GPIO_PORT209, GPIOF_IN, NULL); | 1055 | gpio_request_one(209, GPIOF_IN, NULL); |
1049 | 1056 | ||
1050 | platform_device_register(&usbhsf_device); | 1057 | platform_device_register(&usbhsf_device); |
1051 | usb = &usbhsf_device; | 1058 | usb = &usbhsf_device; |
1052 | } | 1059 | } |
1053 | 1060 | ||
1054 | /* SDHI0 */ | 1061 | /* SDHI0 */ |
1055 | gpio_request(GPIO_FN_SDHI0_CMD, NULL); | 1062 | gpio_request_one(17, GPIOF_OUT_INIT_LOW, NULL); /* SDHI0_18/33_B */ |
1056 | gpio_request(GPIO_FN_SDHI0_CLK, NULL); | 1063 | gpio_request_one(74, GPIOF_OUT_INIT_HIGH, NULL); /* SDHI0_PON */ |
1057 | gpio_request(GPIO_FN_SDHI0_D0, NULL); | 1064 | gpio_request_one(75, GPIOF_OUT_INIT_HIGH, NULL); /* SDSLOT1_PON */ |
1058 | gpio_request(GPIO_FN_SDHI0_D1, NULL); | ||
1059 | gpio_request(GPIO_FN_SDHI0_D2, NULL); | ||
1060 | gpio_request(GPIO_FN_SDHI0_D3, NULL); | ||
1061 | gpio_request(GPIO_FN_SDHI0_WP, NULL); | ||
1062 | |||
1063 | gpio_request_one(GPIO_PORT17, GPIOF_OUT_INIT_LOW, NULL); /* SDHI0_18/33_B */ | ||
1064 | gpio_request_one(GPIO_PORT74, GPIOF_OUT_INIT_HIGH, NULL); /* SDHI0_PON */ | ||
1065 | gpio_request_one(GPIO_PORT75, GPIOF_OUT_INIT_HIGH, NULL); /* SDSLOT1_PON */ | ||
1066 | 1065 | ||
1067 | /* we can use GPIO_FN_IRQ31_PORT167 here for SDHI0 CD irq */ | 1066 | /* we can use GPIO_FN_IRQ31_PORT167 here for SDHI0 CD irq */ |
1068 | 1067 | ||
1069 | /* | ||
1070 | * MMCIF | ||
1071 | * | ||
1072 | * Here doesn't care SW1.4 status, | ||
1073 | * since CON2 is not mounted. | ||
1074 | */ | ||
1075 | gpio_request(GPIO_FN_MMC1_CLK_PORT103, NULL); | ||
1076 | gpio_request(GPIO_FN_MMC1_CMD_PORT104, NULL); | ||
1077 | gpio_request(GPIO_FN_MMC1_D0_PORT149, NULL); | ||
1078 | gpio_request(GPIO_FN_MMC1_D1_PORT148, NULL); | ||
1079 | gpio_request(GPIO_FN_MMC1_D2_PORT147, NULL); | ||
1080 | gpio_request(GPIO_FN_MMC1_D3_PORT146, NULL); | ||
1081 | gpio_request(GPIO_FN_MMC1_D4_PORT145, NULL); | ||
1082 | gpio_request(GPIO_FN_MMC1_D5_PORT144, NULL); | ||
1083 | gpio_request(GPIO_FN_MMC1_D6_PORT143, NULL); | ||
1084 | gpio_request(GPIO_FN_MMC1_D7_PORT142, NULL); | ||
1085 | |||
1086 | /* CEU0 */ | 1068 | /* CEU0 */ |
1087 | gpio_request(GPIO_FN_VIO0_D7, NULL); | 1069 | gpio_request(GPIO_FN_VIO0_D7, NULL); |
1088 | gpio_request(GPIO_FN_VIO0_D6, NULL); | 1070 | gpio_request(GPIO_FN_VIO0_D6, NULL); |
@@ -1099,10 +1081,10 @@ static void __init eva_init(void) | |||
1099 | gpio_request(GPIO_FN_VIO_CKO, NULL); | 1081 | gpio_request(GPIO_FN_VIO_CKO, NULL); |
1100 | 1082 | ||
1101 | /* CON1/CON15 Camera */ | 1083 | /* CON1/CON15 Camera */ |
1102 | gpio_request_one(GPIO_PORT173, GPIOF_OUT_INIT_LOW, NULL); /* STANDBY */ | 1084 | gpio_request_one(173, GPIOF_OUT_INIT_LOW, NULL); /* STANDBY */ |
1103 | gpio_request_one(GPIO_PORT172, GPIOF_OUT_INIT_HIGH, NULL); /* RST */ | 1085 | gpio_request_one(172, GPIOF_OUT_INIT_HIGH, NULL); /* RST */ |
1104 | /* see mt9t111_power() */ | 1086 | /* see mt9t111_power() */ |
1105 | gpio_request_one(GPIO_PORT158, GPIOF_OUT_INIT_LOW, NULL); /* CAM_PON */ | 1087 | gpio_request_one(158, GPIOF_OUT_INIT_LOW, NULL); /* CAM_PON */ |
1106 | 1088 | ||
1107 | /* FSI-WM8978 */ | 1089 | /* FSI-WM8978 */ |
1108 | gpio_request(GPIO_FN_FSIAIBT, NULL); | 1090 | gpio_request(GPIO_FN_FSIAIBT, NULL); |
@@ -1111,8 +1093,8 @@ static void __init eva_init(void) | |||
1111 | gpio_request(GPIO_FN_FSIAOSLD, NULL); | 1093 | gpio_request(GPIO_FN_FSIAOSLD, NULL); |
1112 | gpio_request(GPIO_FN_FSIAISLD_PORT5, NULL); | 1094 | gpio_request(GPIO_FN_FSIAISLD_PORT5, NULL); |
1113 | 1095 | ||
1114 | gpio_request(GPIO_PORT7, NULL); | 1096 | gpio_request(7, NULL); |
1115 | gpio_request(GPIO_PORT8, NULL); | 1097 | gpio_request(8, NULL); |
1116 | gpio_direction_none(GPIO_PORT7CR); /* FSIAOBT needs no direction */ | 1098 | gpio_direction_none(GPIO_PORT7CR); /* FSIAOBT needs no direction */ |
1117 | gpio_direction_none(GPIO_PORT8CR); /* FSIAOLR needs no direction */ | 1099 | gpio_direction_none(GPIO_PORT8CR); /* FSIAOLR needs no direction */ |
1118 | 1100 | ||
@@ -1129,28 +1111,22 @@ static void __init eva_init(void) | |||
1129 | * DBGMD/LCDC0/FSIA MUX | 1111 | * DBGMD/LCDC0/FSIA MUX |
1130 | * DBGMD_SELECT_B should be set after setting PFC Function. | 1112 | * DBGMD_SELECT_B should be set after setting PFC Function. |
1131 | */ | 1113 | */ |
1132 | gpio_request_one(GPIO_PORT176, GPIOF_OUT_INIT_HIGH, NULL); | 1114 | gpio_request_one(176, GPIOF_OUT_INIT_HIGH, NULL); |
1133 | 1115 | ||
1134 | /* | 1116 | /* |
1135 | * We can switch CON8/CON14 by SW1.5, | 1117 | * We can switch CON8/CON14 by SW1.5, |
1136 | * but it needs after DBGMD_SELECT_B | 1118 | * but it needs after DBGMD_SELECT_B |
1137 | */ | 1119 | */ |
1138 | gpio_request_one(GPIO_PORT6, GPIOF_IN, NULL); | 1120 | gpio_request_one(6, GPIOF_IN, NULL); |
1139 | if (gpio_get_value(GPIO_PORT6)) { | 1121 | if (gpio_get_value(6)) { |
1140 | /* CON14 enable */ | 1122 | /* CON14 enable */ |
1141 | } else { | 1123 | } else { |
1142 | /* CON8 (SDHI1) enable */ | 1124 | /* CON8 (SDHI1) enable */ |
1143 | gpio_request(GPIO_FN_SDHI1_CLK, NULL); | 1125 | pinctrl_register_mappings(eva_sdhi1_pinctrl_map, |
1144 | gpio_request(GPIO_FN_SDHI1_CMD, NULL); | 1126 | ARRAY_SIZE(eva_sdhi1_pinctrl_map)); |
1145 | gpio_request(GPIO_FN_SDHI1_D0, NULL); | ||
1146 | gpio_request(GPIO_FN_SDHI1_D1, NULL); | ||
1147 | gpio_request(GPIO_FN_SDHI1_D2, NULL); | ||
1148 | gpio_request(GPIO_FN_SDHI1_D3, NULL); | ||
1149 | gpio_request(GPIO_FN_SDHI1_CD, NULL); | ||
1150 | gpio_request(GPIO_FN_SDHI1_WP, NULL); | ||
1151 | 1127 | ||
1152 | /* SDSLOT2_PON */ | 1128 | /* SDSLOT2_PON */ |
1153 | gpio_request_one(GPIO_PORT16, GPIOF_OUT_INIT_HIGH, NULL); | 1129 | gpio_request_one(16, GPIOF_OUT_INIT_HIGH, NULL); |
1154 | 1130 | ||
1155 | platform_device_register(&sdhi1_device); | 1131 | platform_device_register(&sdhi1_device); |
1156 | } | 1132 | } |
diff --git a/arch/arm/mach-shmobile/board-bonito.c b/arch/arm/mach-shmobile/board-bonito.c index e50f86691539..70d992c540ae 100644 --- a/arch/arm/mach-shmobile/board-bonito.c +++ b/arch/arm/mach-shmobile/board-bonito.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include <linux/init.h> | 24 | #include <linux/init.h> |
25 | #include <linux/interrupt.h> | 25 | #include <linux/interrupt.h> |
26 | #include <linux/irq.h> | 26 | #include <linux/irq.h> |
27 | #include <linux/pinctrl/machine.h> | ||
27 | #include <linux/platform_device.h> | 28 | #include <linux/platform_device.h> |
28 | #include <linux/gpio.h> | 29 | #include <linux/gpio.h> |
29 | #include <linux/regulator/fixed.h> | 30 | #include <linux/regulator/fixed.h> |
@@ -288,6 +289,16 @@ static struct platform_device lcdc0_device = { | |||
288 | }, | 289 | }, |
289 | }; | 290 | }; |
290 | 291 | ||
292 | static const struct pinctrl_map lcdc0_pinctrl_map[] = { | ||
293 | /* LCD0 */ | ||
294 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_lcdc_fb.0", "pfc-r8a7740", | ||
295 | "lcd0_data24_1", "lcd0"), | ||
296 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_lcdc_fb.0", "pfc-r8a7740", | ||
297 | "lcd0_lclk_1", "lcd0"), | ||
298 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_lcdc_fb.0", "pfc-r8a7740", | ||
299 | "lcd0_sync", "lcd0"), | ||
300 | }; | ||
301 | |||
291 | /* | 302 | /* |
292 | * SMSC 9221 | 303 | * SMSC 9221 |
293 | */ | 304 | */ |
@@ -392,8 +403,8 @@ static void __init bonito_init(void) | |||
392 | /* | 403 | /* |
393 | * base board settings | 404 | * base board settings |
394 | */ | 405 | */ |
395 | gpio_request_one(GPIO_PORT176, GPIOF_IN, NULL); | 406 | gpio_request_one(176, GPIOF_IN, NULL); |
396 | if (!gpio_get_value(GPIO_PORT176)) { | 407 | if (!gpio_get_value(176)) { |
397 | u16 bsw2; | 408 | u16 bsw2; |
398 | u16 bsw3; | 409 | u16 bsw3; |
399 | u16 bsw4; | 410 | u16 bsw4; |
@@ -430,38 +441,11 @@ static void __init bonito_init(void) | |||
430 | */ | 441 | */ |
431 | if (BIT_ON(bsw2, 3) && /* S38.1 = OFF */ | 442 | if (BIT_ON(bsw2, 3) && /* S38.1 = OFF */ |
432 | BIT_ON(bsw2, 2)) { /* S38.2 = OFF */ | 443 | BIT_ON(bsw2, 2)) { /* S38.2 = OFF */ |
433 | gpio_request(GPIO_FN_LCDC0_SELECT, NULL); | 444 | pinctrl_register_mappings(lcdc0_pinctrl_map, |
434 | gpio_request(GPIO_FN_LCD0_D0, NULL); | 445 | ARRAY_SIZE(lcdc0_pinctrl_map)); |
435 | gpio_request(GPIO_FN_LCD0_D1, NULL); | 446 | gpio_request(GPIO_FN_LCDC0_SELECT, NULL); |
436 | gpio_request(GPIO_FN_LCD0_D2, NULL); | 447 | |
437 | gpio_request(GPIO_FN_LCD0_D3, NULL); | 448 | gpio_request_one(61, GPIOF_OUT_INIT_HIGH, |
438 | gpio_request(GPIO_FN_LCD0_D4, NULL); | ||
439 | gpio_request(GPIO_FN_LCD0_D5, NULL); | ||
440 | gpio_request(GPIO_FN_LCD0_D6, NULL); | ||
441 | gpio_request(GPIO_FN_LCD0_D7, NULL); | ||
442 | gpio_request(GPIO_FN_LCD0_D8, NULL); | ||
443 | gpio_request(GPIO_FN_LCD0_D9, NULL); | ||
444 | gpio_request(GPIO_FN_LCD0_D10, NULL); | ||
445 | gpio_request(GPIO_FN_LCD0_D11, NULL); | ||
446 | gpio_request(GPIO_FN_LCD0_D12, NULL); | ||
447 | gpio_request(GPIO_FN_LCD0_D13, NULL); | ||
448 | gpio_request(GPIO_FN_LCD0_D14, NULL); | ||
449 | gpio_request(GPIO_FN_LCD0_D15, NULL); | ||
450 | gpio_request(GPIO_FN_LCD0_D16, NULL); | ||
451 | gpio_request(GPIO_FN_LCD0_D17, NULL); | ||
452 | gpio_request(GPIO_FN_LCD0_D18_PORT163, NULL); | ||
453 | gpio_request(GPIO_FN_LCD0_D19_PORT162, NULL); | ||
454 | gpio_request(GPIO_FN_LCD0_D20_PORT161, NULL); | ||
455 | gpio_request(GPIO_FN_LCD0_D21_PORT158, NULL); | ||
456 | gpio_request(GPIO_FN_LCD0_D22_PORT160, NULL); | ||
457 | gpio_request(GPIO_FN_LCD0_D23_PORT159, NULL); | ||
458 | gpio_request(GPIO_FN_LCD0_DCK, NULL); | ||
459 | gpio_request(GPIO_FN_LCD0_VSYN, NULL); | ||
460 | gpio_request(GPIO_FN_LCD0_HSYN, NULL); | ||
461 | gpio_request(GPIO_FN_LCD0_DISP, NULL); | ||
462 | gpio_request(GPIO_FN_LCD0_LCLK_PORT165, NULL); | ||
463 | |||
464 | gpio_request_one(GPIO_PORT61, GPIOF_OUT_INIT_HIGH, | ||
465 | NULL); /* LCDDON */ | 449 | NULL); /* LCDDON */ |
466 | 450 | ||
467 | /* backlight on */ | 451 | /* backlight on */ |
diff --git a/arch/arm/mach-shmobile/board-kota2.c b/arch/arm/mach-shmobile/board-kota2.c index 2ccc860403ef..ef5ca0ef0cb5 100644 --- a/arch/arm/mach-shmobile/board-kota2.c +++ b/arch/arm/mach-shmobile/board-kota2.c | |||
@@ -24,6 +24,8 @@ | |||
24 | #include <linux/init.h> | 24 | #include <linux/init.h> |
25 | #include <linux/interrupt.h> | 25 | #include <linux/interrupt.h> |
26 | #include <linux/irq.h> | 26 | #include <linux/irq.h> |
27 | #include <linux/pinctrl/machine.h> | ||
28 | #include <linux/pinctrl/pinconf-generic.h> | ||
27 | #include <linux/platform_device.h> | 29 | #include <linux/platform_device.h> |
28 | #include <linux/delay.h> | 30 | #include <linux/delay.h> |
29 | #include <linux/io.h> | 31 | #include <linux/io.h> |
@@ -135,17 +137,17 @@ static struct platform_device keysc_device = { | |||
135 | #define GPIO_KEY(c, g, d) { .code = c, .gpio = g, .desc = d, .active_low = 1 } | 137 | #define GPIO_KEY(c, g, d) { .code = c, .gpio = g, .desc = d, .active_low = 1 } |
136 | 138 | ||
137 | static struct gpio_keys_button gpio_buttons[] = { | 139 | static struct gpio_keys_button gpio_buttons[] = { |
138 | GPIO_KEY(KEY_VOLUMEUP, GPIO_PORT56, "+"), /* S2: VOL+ [IRQ9] */ | 140 | GPIO_KEY(KEY_VOLUMEUP, 56, "+"), /* S2: VOL+ [IRQ9] */ |
139 | GPIO_KEY(KEY_VOLUMEDOWN, GPIO_PORT54, "-"), /* S3: VOL- [IRQ10] */ | 141 | GPIO_KEY(KEY_VOLUMEDOWN, 54, "-"), /* S3: VOL- [IRQ10] */ |
140 | GPIO_KEY(KEY_MENU, GPIO_PORT27, "Menu"), /* S4: MENU [IRQ30] */ | 142 | GPIO_KEY(KEY_MENU, 27, "Menu"), /* S4: MENU [IRQ30] */ |
141 | GPIO_KEY(KEY_HOMEPAGE, GPIO_PORT26, "Home"), /* S5: HOME [IRQ31] */ | 143 | GPIO_KEY(KEY_HOMEPAGE, 26, "Home"), /* S5: HOME [IRQ31] */ |
142 | GPIO_KEY(KEY_BACK, GPIO_PORT11, "Back"), /* S6: BACK [IRQ0] */ | 144 | GPIO_KEY(KEY_BACK, 11, "Back"), /* S6: BACK [IRQ0] */ |
143 | GPIO_KEY(KEY_PHONE, GPIO_PORT238, "Tel"), /* S7: TEL [IRQ11] */ | 145 | GPIO_KEY(KEY_PHONE, 238, "Tel"), /* S7: TEL [IRQ11] */ |
144 | GPIO_KEY(KEY_POWER, GPIO_PORT239, "C1"), /* S8: CAM [IRQ13] */ | 146 | GPIO_KEY(KEY_POWER, 239, "C1"), /* S8: CAM [IRQ13] */ |
145 | GPIO_KEY(KEY_MAIL, GPIO_PORT224, "Mail"), /* S9: MAIL [IRQ3] */ | 147 | GPIO_KEY(KEY_MAIL, 224, "Mail"), /* S9: MAIL [IRQ3] */ |
146 | /* Omitted button "C3?": GPIO_PORT223 - S10: CUST [IRQ8] */ | 148 | /* Omitted button "C3?": 223 - S10: CUST [IRQ8] */ |
147 | GPIO_KEY(KEY_CAMERA, GPIO_PORT164, "C2"), /* S11: CAM_HALF [IRQ25] */ | 149 | GPIO_KEY(KEY_CAMERA, 164, "C2"), /* S11: CAM_HALF [IRQ25] */ |
148 | /* Omitted button "?": GPIO_PORT152 - S12: CAM_FULL [No IRQ] */ | 150 | /* Omitted button "?": 152 - S12: CAM_FULL [No IRQ] */ |
149 | }; | 151 | }; |
150 | 152 | ||
151 | static struct gpio_keys_platform_data gpio_key_info = { | 153 | static struct gpio_keys_platform_data gpio_key_info = { |
@@ -165,9 +167,9 @@ static struct platform_device gpio_keys_device = { | |||
165 | #define GPIO_LED(n, g) { .name = n, .gpio = g } | 167 | #define GPIO_LED(n, g) { .name = n, .gpio = g } |
166 | 168 | ||
167 | static struct gpio_led gpio_leds[] = { | 169 | static struct gpio_led gpio_leds[] = { |
168 | GPIO_LED("G", GPIO_PORT20), /* PORT20 [GPO0] -> LED7 -> "G" */ | 170 | GPIO_LED("G", 20), /* PORT20 [GPO0] -> LED7 -> "G" */ |
169 | GPIO_LED("H", GPIO_PORT21), /* PORT21 [GPO1] -> LED8 -> "H" */ | 171 | GPIO_LED("H", 21), /* PORT21 [GPO1] -> LED8 -> "H" */ |
170 | GPIO_LED("J", GPIO_PORT22), /* PORT22 [GPO2] -> LED9 -> "J" */ | 172 | GPIO_LED("J", 22), /* PORT22 [GPO2] -> LED9 -> "J" */ |
171 | }; | 173 | }; |
172 | 174 | ||
173 | static struct gpio_led_platform_data gpio_leds_info = { | 175 | static struct gpio_led_platform_data gpio_leds_info = { |
@@ -187,7 +189,7 @@ static struct platform_device gpio_leds_device = { | |||
187 | static struct led_renesas_tpu_config led_renesas_tpu12_pdata = { | 189 | static struct led_renesas_tpu_config led_renesas_tpu12_pdata = { |
188 | .name = "V2513", | 190 | .name = "V2513", |
189 | .pin_gpio_fn = GPIO_FN_TPU1TO2, | 191 | .pin_gpio_fn = GPIO_FN_TPU1TO2, |
190 | .pin_gpio = GPIO_PORT153, | 192 | .pin_gpio = 153, |
191 | .channel_offset = 0x90, | 193 | .channel_offset = 0x90, |
192 | .timer_bit = 2, | 194 | .timer_bit = 2, |
193 | .max_brightness = 1000, | 195 | .max_brightness = 1000, |
@@ -215,7 +217,7 @@ static struct platform_device leds_tpu12_device = { | |||
215 | static struct led_renesas_tpu_config led_renesas_tpu41_pdata = { | 217 | static struct led_renesas_tpu_config led_renesas_tpu41_pdata = { |
216 | .name = "V2514", | 218 | .name = "V2514", |
217 | .pin_gpio_fn = GPIO_FN_TPU4TO1, | 219 | .pin_gpio_fn = GPIO_FN_TPU4TO1, |
218 | .pin_gpio = GPIO_PORT199, | 220 | .pin_gpio = 199, |
219 | .channel_offset = 0x50, | 221 | .channel_offset = 0x50, |
220 | .timer_bit = 1, | 222 | .timer_bit = 1, |
221 | .max_brightness = 1000, | 223 | .max_brightness = 1000, |
@@ -243,7 +245,7 @@ static struct platform_device leds_tpu41_device = { | |||
243 | static struct led_renesas_tpu_config led_renesas_tpu21_pdata = { | 245 | static struct led_renesas_tpu_config led_renesas_tpu21_pdata = { |
244 | .name = "V2515", | 246 | .name = "V2515", |
245 | .pin_gpio_fn = GPIO_FN_TPU2TO1, | 247 | .pin_gpio_fn = GPIO_FN_TPU2TO1, |
246 | .pin_gpio = GPIO_PORT197, | 248 | .pin_gpio = 197, |
247 | .channel_offset = 0x50, | 249 | .channel_offset = 0x50, |
248 | .timer_bit = 1, | 250 | .timer_bit = 1, |
249 | .max_brightness = 1000, | 251 | .max_brightness = 1000, |
@@ -271,7 +273,7 @@ static struct platform_device leds_tpu21_device = { | |||
271 | static struct led_renesas_tpu_config led_renesas_tpu30_pdata = { | 273 | static struct led_renesas_tpu_config led_renesas_tpu30_pdata = { |
272 | .name = "KEYLED", | 274 | .name = "KEYLED", |
273 | .pin_gpio_fn = GPIO_FN_TPU3TO0, | 275 | .pin_gpio_fn = GPIO_FN_TPU3TO0, |
274 | .pin_gpio = GPIO_PORT163, | 276 | .pin_gpio = 163, |
275 | .channel_offset = 0x10, | 277 | .channel_offset = 0x10, |
276 | .timer_bit = 0, | 278 | .timer_bit = 0, |
277 | .max_brightness = 1000, | 279 | .max_brightness = 1000, |
@@ -433,6 +435,85 @@ static struct platform_device *kota2_devices[] __initdata = { | |||
433 | &sdhi1_device, | 435 | &sdhi1_device, |
434 | }; | 436 | }; |
435 | 437 | ||
438 | static unsigned long pin_pullup_conf[] = { | ||
439 | PIN_CONF_PACKED(PIN_CONFIG_BIAS_PULL_UP, 0), | ||
440 | }; | ||
441 | |||
442 | static const struct pinctrl_map kota2_pinctrl_map[] = { | ||
443 | /* KEYSC */ | ||
444 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
445 | "keysc_in8", "keysc"), | ||
446 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
447 | "keysc_out04", "keysc"), | ||
448 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
449 | "keysc_out5", "keysc"), | ||
450 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
451 | "keysc_out6_0", "keysc"), | ||
452 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
453 | "keysc_out7_0", "keysc"), | ||
454 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
455 | "keysc_out8_0", "keysc"), | ||
456 | PIN_MAP_CONFIGS_GROUP_DEFAULT("sh_keysc.0", "pfc-sh73a0", | ||
457 | "keysc_in8", pin_pullup_conf), | ||
458 | /* MMCIF */ | ||
459 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh73a0", | ||
460 | "mmc0_data8_0", "mmc0"), | ||
461 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh73a0", | ||
462 | "mmc0_ctrl_0", "mmc0"), | ||
463 | PIN_MAP_CONFIGS_PIN_DEFAULT("sh_mmcif.0", "pfc-sh73a0", | ||
464 | "PORT279", pin_pullup_conf), | ||
465 | PIN_MAP_CONFIGS_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh73a0", | ||
466 | "mmc0_data8_0", pin_pullup_conf), | ||
467 | /* SCIFA2 (UART2) */ | ||
468 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.2", "pfc-sh73a0", | ||
469 | "scifa2_data_0", "scifa2"), | ||
470 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.2", "pfc-sh73a0", | ||
471 | "scifa2_ctrl_0", "scifa2"), | ||
472 | /* SCIFA4 (UART1) */ | ||
473 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.4", "pfc-sh73a0", | ||
474 | "scifa4_data", "scifa4"), | ||
475 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.4", "pfc-sh73a0", | ||
476 | "scifa4_ctrl", "scifa4"), | ||
477 | /* SCIFB (BT) */ | ||
478 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.8", "pfc-sh73a0", | ||
479 | "scifb_data_0", "scifb"), | ||
480 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.8", "pfc-sh73a0", | ||
481 | "scifb_clk_0", "scifb"), | ||
482 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.8", "pfc-sh73a0", | ||
483 | "scifb_ctrl_0", "scifb"), | ||
484 | /* SDHI0 (microSD) */ | ||
485 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
486 | "sdhi0_data4", "sdhi0"), | ||
487 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
488 | "sdhi0_ctrl", "sdhi0"), | ||
489 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
490 | "sdhi0_cd", "sdhi0"), | ||
491 | PIN_MAP_CONFIGS_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
492 | "sdhi0_data4", pin_pullup_conf), | ||
493 | PIN_MAP_CONFIGS_PIN_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
494 | "PORT256", pin_pullup_conf), | ||
495 | PIN_MAP_CONFIGS_PIN_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
496 | "PORT251", pin_pullup_conf), | ||
497 | /* SDHI1 (BCM4330) */ | ||
498 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-sh73a0", | ||
499 | "sdhi1_data4", "sdhi1"), | ||
500 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-sh73a0", | ||
501 | "sdhi1_ctrl", "sdhi1"), | ||
502 | PIN_MAP_CONFIGS_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-sh73a0", | ||
503 | "sdhi1_data4", pin_pullup_conf), | ||
504 | PIN_MAP_CONFIGS_PIN_DEFAULT("sh_mobile_sdhi.1", "pfc-sh73a0", | ||
505 | "PORT263", pin_pullup_conf), | ||
506 | /* SMSC911X */ | ||
507 | PIN_MAP_MUX_GROUP_DEFAULT("smsc911x.0", "pfc-sh73a0", | ||
508 | "bsc_data_0_7", "bsc"), | ||
509 | PIN_MAP_MUX_GROUP_DEFAULT("smsc911x.0", "pfc-sh73a0", | ||
510 | "bsc_data_8_15", "bsc"), | ||
511 | PIN_MAP_MUX_GROUP_DEFAULT("smsc911x.0", "pfc-sh73a0", | ||
512 | "bsc_cs5_a", "bsc"), | ||
513 | PIN_MAP_MUX_GROUP_DEFAULT("smsc911x.0", "pfc-sh73a0", | ||
514 | "bsc_we0", "bsc"), | ||
515 | }; | ||
516 | |||
436 | static void __init kota2_init(void) | 517 | static void __init kota2_init(void) |
437 | { | 518 | { |
438 | regulator_register_always_on(0, "fixed-1.8V", fixed1v8_power_consumers, | 519 | regulator_register_always_on(0, "fixed-1.8V", fixed1v8_power_consumers, |
@@ -441,97 +522,16 @@ static void __init kota2_init(void) | |||
441 | ARRAY_SIZE(fixed3v3_power_consumers), 3300000); | 522 | ARRAY_SIZE(fixed3v3_power_consumers), 3300000); |
442 | regulator_register_fixed(2, dummy_supplies, ARRAY_SIZE(dummy_supplies)); | 523 | regulator_register_fixed(2, dummy_supplies, ARRAY_SIZE(dummy_supplies)); |
443 | 524 | ||
525 | pinctrl_register_mappings(kota2_pinctrl_map, | ||
526 | ARRAY_SIZE(kota2_pinctrl_map)); | ||
444 | sh73a0_pinmux_init(); | 527 | sh73a0_pinmux_init(); |
445 | 528 | ||
446 | /* SCIFA2 (UART2) */ | ||
447 | gpio_request(GPIO_FN_SCIFA2_TXD1, NULL); | ||
448 | gpio_request(GPIO_FN_SCIFA2_RXD1, NULL); | ||
449 | gpio_request(GPIO_FN_SCIFA2_RTS1_, NULL); | ||
450 | gpio_request(GPIO_FN_SCIFA2_CTS1_, NULL); | ||
451 | |||
452 | /* SCIFA4 (UART1) */ | ||
453 | gpio_request(GPIO_FN_SCIFA4_TXD, NULL); | ||
454 | gpio_request(GPIO_FN_SCIFA4_RXD, NULL); | ||
455 | gpio_request(GPIO_FN_SCIFA4_RTS_, NULL); | ||
456 | gpio_request(GPIO_FN_SCIFA4_CTS_, NULL); | ||
457 | |||
458 | /* SMSC911X */ | 529 | /* SMSC911X */ |
459 | gpio_request(GPIO_FN_D0_NAF0, NULL); | 530 | gpio_request_one(144, GPIOF_IN, NULL); /* PINTA2 */ |
460 | gpio_request(GPIO_FN_D1_NAF1, NULL); | 531 | gpio_request_one(145, GPIOF_OUT_INIT_HIGH, NULL); /* RESET */ |
461 | gpio_request(GPIO_FN_D2_NAF2, NULL); | ||
462 | gpio_request(GPIO_FN_D3_NAF3, NULL); | ||
463 | gpio_request(GPIO_FN_D4_NAF4, NULL); | ||
464 | gpio_request(GPIO_FN_D5_NAF5, NULL); | ||
465 | gpio_request(GPIO_FN_D6_NAF6, NULL); | ||
466 | gpio_request(GPIO_FN_D7_NAF7, NULL); | ||
467 | gpio_request(GPIO_FN_D8_NAF8, NULL); | ||
468 | gpio_request(GPIO_FN_D9_NAF9, NULL); | ||
469 | gpio_request(GPIO_FN_D10_NAF10, NULL); | ||
470 | gpio_request(GPIO_FN_D11_NAF11, NULL); | ||
471 | gpio_request(GPIO_FN_D12_NAF12, NULL); | ||
472 | gpio_request(GPIO_FN_D13_NAF13, NULL); | ||
473 | gpio_request(GPIO_FN_D14_NAF14, NULL); | ||
474 | gpio_request(GPIO_FN_D15_NAF15, NULL); | ||
475 | gpio_request(GPIO_FN_CS5A_, NULL); | ||
476 | gpio_request(GPIO_FN_WE0__FWE, NULL); | ||
477 | gpio_request_one(GPIO_PORT144, GPIOF_IN, NULL); /* PINTA2 */ | ||
478 | gpio_request_one(GPIO_PORT145, GPIOF_OUT_INIT_HIGH, NULL); /* RESET */ | ||
479 | |||
480 | /* KEYSC */ | ||
481 | gpio_request(GPIO_FN_KEYIN0_PU, NULL); | ||
482 | gpio_request(GPIO_FN_KEYIN1_PU, NULL); | ||
483 | gpio_request(GPIO_FN_KEYIN2_PU, NULL); | ||
484 | gpio_request(GPIO_FN_KEYIN3_PU, NULL); | ||
485 | gpio_request(GPIO_FN_KEYIN4_PU, NULL); | ||
486 | gpio_request(GPIO_FN_KEYIN5_PU, NULL); | ||
487 | gpio_request(GPIO_FN_KEYIN6_PU, NULL); | ||
488 | gpio_request(GPIO_FN_KEYIN7_PU, NULL); | ||
489 | gpio_request(GPIO_FN_KEYOUT0, NULL); | ||
490 | gpio_request(GPIO_FN_KEYOUT1, NULL); | ||
491 | gpio_request(GPIO_FN_KEYOUT2, NULL); | ||
492 | gpio_request(GPIO_FN_KEYOUT3, NULL); | ||
493 | gpio_request(GPIO_FN_KEYOUT4, NULL); | ||
494 | gpio_request(GPIO_FN_KEYOUT5, NULL); | ||
495 | gpio_request(GPIO_FN_PORT59_KEYOUT6, NULL); | ||
496 | gpio_request(GPIO_FN_PORT58_KEYOUT7, NULL); | ||
497 | gpio_request(GPIO_FN_KEYOUT8, NULL); | ||
498 | 532 | ||
499 | /* MMCIF */ | 533 | /* MMCIF */ |
500 | gpio_request(GPIO_FN_MMCCLK0, NULL); | 534 | gpio_request_one(208, GPIOF_OUT_INIT_HIGH, NULL); /* Reset */ |
501 | gpio_request(GPIO_FN_MMCD0_0, NULL); | ||
502 | gpio_request(GPIO_FN_MMCD0_1, NULL); | ||
503 | gpio_request(GPIO_FN_MMCD0_2, NULL); | ||
504 | gpio_request(GPIO_FN_MMCD0_3, NULL); | ||
505 | gpio_request(GPIO_FN_MMCD0_4, NULL); | ||
506 | gpio_request(GPIO_FN_MMCD0_5, NULL); | ||
507 | gpio_request(GPIO_FN_MMCD0_6, NULL); | ||
508 | gpio_request(GPIO_FN_MMCD0_7, NULL); | ||
509 | gpio_request(GPIO_FN_MMCCMD0, NULL); | ||
510 | gpio_request_one(GPIO_PORT208, GPIOF_OUT_INIT_HIGH, NULL); /* Reset */ | ||
511 | |||
512 | /* SDHI0 (microSD) */ | ||
513 | gpio_request(GPIO_FN_SDHICD0_PU, NULL); | ||
514 | gpio_request(GPIO_FN_SDHICMD0_PU, NULL); | ||
515 | gpio_request(GPIO_FN_SDHICLK0, NULL); | ||
516 | gpio_request(GPIO_FN_SDHID0_3_PU, NULL); | ||
517 | gpio_request(GPIO_FN_SDHID0_2_PU, NULL); | ||
518 | gpio_request(GPIO_FN_SDHID0_1_PU, NULL); | ||
519 | gpio_request(GPIO_FN_SDHID0_0_PU, NULL); | ||
520 | |||
521 | /* SCIFB (BT) */ | ||
522 | gpio_request(GPIO_FN_PORT159_SCIFB_SCK, NULL); | ||
523 | gpio_request(GPIO_FN_PORT160_SCIFB_TXD, NULL); | ||
524 | gpio_request(GPIO_FN_PORT161_SCIFB_CTS_, NULL); | ||
525 | gpio_request(GPIO_FN_PORT162_SCIFB_RXD, NULL); | ||
526 | gpio_request(GPIO_FN_PORT163_SCIFB_RTS_, NULL); | ||
527 | |||
528 | /* SDHI1 (BCM4330) */ | ||
529 | gpio_request(GPIO_FN_SDHICLK1, NULL); | ||
530 | gpio_request(GPIO_FN_SDHICMD1_PU, NULL); | ||
531 | gpio_request(GPIO_FN_SDHID1_3_PU, NULL); | ||
532 | gpio_request(GPIO_FN_SDHID1_2_PU, NULL); | ||
533 | gpio_request(GPIO_FN_SDHID1_1_PU, NULL); | ||
534 | gpio_request(GPIO_FN_SDHID1_0_PU, NULL); | ||
535 | 535 | ||
536 | #ifdef CONFIG_CACHE_L2X0 | 536 | #ifdef CONFIG_CACHE_L2X0 |
537 | /* Early BRESP enable, Shared attribute override enable, 64K*8way */ | 537 | /* Early BRESP enable, Shared attribute override enable, 64K*8way */ |
diff --git a/arch/arm/mach-shmobile/board-kzm9g.c b/arch/arm/mach-shmobile/board-kzm9g.c index 7f3a6b7e7b7c..c1c0401ff6a4 100644 --- a/arch/arm/mach-shmobile/board-kzm9g.c +++ b/arch/arm/mach-shmobile/board-kzm9g.c | |||
@@ -30,6 +30,8 @@ | |||
30 | #include <linux/mmc/sh_mmcif.h> | 30 | #include <linux/mmc/sh_mmcif.h> |
31 | #include <linux/mmc/sh_mobile_sdhi.h> | 31 | #include <linux/mmc/sh_mobile_sdhi.h> |
32 | #include <linux/mfd/tmio.h> | 32 | #include <linux/mfd/tmio.h> |
33 | #include <linux/pinctrl/machine.h> | ||
34 | #include <linux/pinctrl/pinconf-generic.h> | ||
33 | #include <linux/platform_device.h> | 35 | #include <linux/platform_device.h> |
34 | #include <linux/regulator/fixed.h> | 36 | #include <linux/regulator/fixed.h> |
35 | #include <linux/regulator/machine.h> | 37 | #include <linux/regulator/machine.h> |
@@ -433,7 +435,7 @@ static struct sh_mobile_sdhi_info sdhi2_info = { | |||
433 | TMIO_MMC_WRPROTECT_DISABLE, | 435 | TMIO_MMC_WRPROTECT_DISABLE, |
434 | .tmio_caps = MMC_CAP_SD_HIGHSPEED, | 436 | .tmio_caps = MMC_CAP_SD_HIGHSPEED, |
435 | .tmio_ocr_mask = MMC_VDD_27_28 | MMC_VDD_28_29, | 437 | .tmio_ocr_mask = MMC_VDD_27_28 | MMC_VDD_28_29, |
436 | .cd_gpio = GPIO_PORT13, | 438 | .cd_gpio = 13, |
437 | }; | 439 | }; |
438 | 440 | ||
439 | static struct resource sdhi2_resources[] = { | 441 | static struct resource sdhi2_resources[] = { |
@@ -599,6 +601,64 @@ static struct platform_device *kzm_devices[] __initdata = { | |||
599 | &fsi_ak4648_device, | 601 | &fsi_ak4648_device, |
600 | }; | 602 | }; |
601 | 603 | ||
604 | static unsigned long pin_pullup_conf[] = { | ||
605 | PIN_CONF_PACKED(PIN_CONFIG_BIAS_PULL_UP, 0), | ||
606 | }; | ||
607 | |||
608 | static const struct pinctrl_map kzm_pinctrl_map[] = { | ||
609 | /* FSIA (AK4648) */ | ||
610 | PIN_MAP_MUX_GROUP_DEFAULT("sh_fsi2.0", "pfc-sh73a0", | ||
611 | "fsia_mclk_in", "fsia"), | ||
612 | PIN_MAP_MUX_GROUP_DEFAULT("sh_fsi2.0", "pfc-sh73a0", | ||
613 | "fsia_sclk_in", "fsia"), | ||
614 | PIN_MAP_MUX_GROUP_DEFAULT("sh_fsi2.0", "pfc-sh73a0", | ||
615 | "fsia_data_in", "fsia"), | ||
616 | PIN_MAP_MUX_GROUP_DEFAULT("sh_fsi2.0", "pfc-sh73a0", | ||
617 | "fsia_data_out", "fsia"), | ||
618 | /* I2C3 */ | ||
619 | PIN_MAP_MUX_GROUP_DEFAULT("i2c-sh_mobile.3", "pfc-sh73a0", | ||
620 | "i2c3_1", "i2c3"), | ||
621 | /* LCD */ | ||
622 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_lcdc_fb.0", "pfc-sh73a0", | ||
623 | "lcd_data24", "lcd"), | ||
624 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_lcdc_fb.0", "pfc-sh73a0", | ||
625 | "lcd_sync", "lcd"), | ||
626 | /* MMCIF */ | ||
627 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh73a0", | ||
628 | "mmc0_data8_0", "mmc0"), | ||
629 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh73a0", | ||
630 | "mmc0_ctrl_0", "mmc0"), | ||
631 | PIN_MAP_CONFIGS_PIN_DEFAULT("sh_mmcif.0", "pfc-sh73a0", | ||
632 | "PORT279", pin_pullup_conf), | ||
633 | PIN_MAP_CONFIGS_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh73a0", | ||
634 | "mmc0_data8_0", pin_pullup_conf), | ||
635 | /* SCIFA4 */ | ||
636 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.4", "pfc-sh73a0", | ||
637 | "scifa4_data", "scifa4"), | ||
638 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.4", "pfc-sh73a0", | ||
639 | "scifa4_ctrl", "scifa4"), | ||
640 | /* SDHI0 */ | ||
641 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
642 | "sdhi0_data4", "sdhi0"), | ||
643 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
644 | "sdhi0_ctrl", "sdhi0"), | ||
645 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
646 | "sdhi0_cd", "sdhi0"), | ||
647 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh73a0", | ||
648 | "sdhi0_wp", "sdhi0"), | ||
649 | /* SDHI2 */ | ||
650 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.2", "pfc-sh73a0", | ||
651 | "sdhi2_data4", "sdhi2"), | ||
652 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.2", "pfc-sh73a0", | ||
653 | "sdhi2_ctrl", "sdhi2"), | ||
654 | /* SMSC */ | ||
655 | PIN_MAP_MUX_GROUP_DEFAULT("smsc911x.0", "pfc-sh73a0", | ||
656 | "bsc_cs4", "bsc"), | ||
657 | /* USB */ | ||
658 | PIN_MAP_MUX_GROUP_DEFAULT("renesas_usbhs", "pfc-sh73a0", | ||
659 | "usb_vbus", "usb"), | ||
660 | }; | ||
661 | |||
602 | /* | 662 | /* |
603 | * FIXME | 663 | * FIXME |
604 | * | 664 | * |
@@ -660,100 +720,26 @@ static void __init kzm_init(void) | |||
660 | ARRAY_SIZE(fixed2v8_power_consumers), 2800000); | 720 | ARRAY_SIZE(fixed2v8_power_consumers), 2800000); |
661 | regulator_register_fixed(2, dummy_supplies, ARRAY_SIZE(dummy_supplies)); | 721 | regulator_register_fixed(2, dummy_supplies, ARRAY_SIZE(dummy_supplies)); |
662 | 722 | ||
663 | sh73a0_pinmux_init(); | 723 | pinctrl_register_mappings(kzm_pinctrl_map, ARRAY_SIZE(kzm_pinctrl_map)); |
664 | |||
665 | /* enable SCIFA4 */ | ||
666 | gpio_request(GPIO_FN_SCIFA4_TXD, NULL); | ||
667 | gpio_request(GPIO_FN_SCIFA4_RXD, NULL); | ||
668 | gpio_request(GPIO_FN_SCIFA4_RTS_, NULL); | ||
669 | gpio_request(GPIO_FN_SCIFA4_CTS_, NULL); | ||
670 | 724 | ||
671 | /* CS4 for SMSC/USB */ | 725 | sh73a0_pinmux_init(); |
672 | gpio_request(GPIO_FN_CS4_, NULL); /* CS4 */ | ||
673 | 726 | ||
674 | /* SMSC */ | 727 | /* SMSC */ |
675 | gpio_request_one(GPIO_PORT224, GPIOF_IN, NULL); /* IRQ3 */ | 728 | gpio_request_one(224, GPIOF_IN, NULL); /* IRQ3 */ |
676 | 729 | ||
677 | /* LCDC */ | 730 | /* LCDC */ |
678 | gpio_request(GPIO_FN_LCDD23, NULL); | 731 | gpio_request_one(222, GPIOF_OUT_INIT_HIGH, NULL); /* LCDCDON */ |
679 | gpio_request(GPIO_FN_LCDD22, NULL); | 732 | gpio_request_one(226, GPIOF_OUT_INIT_HIGH, NULL); /* SC */ |
680 | gpio_request(GPIO_FN_LCDD21, NULL); | ||
681 | gpio_request(GPIO_FN_LCDD20, NULL); | ||
682 | gpio_request(GPIO_FN_LCDD19, NULL); | ||
683 | gpio_request(GPIO_FN_LCDD18, NULL); | ||
684 | gpio_request(GPIO_FN_LCDD17, NULL); | ||
685 | gpio_request(GPIO_FN_LCDD16, NULL); | ||
686 | gpio_request(GPIO_FN_LCDD15, NULL); | ||
687 | gpio_request(GPIO_FN_LCDD14, NULL); | ||
688 | gpio_request(GPIO_FN_LCDD13, NULL); | ||
689 | gpio_request(GPIO_FN_LCDD12, NULL); | ||
690 | gpio_request(GPIO_FN_LCDD11, NULL); | ||
691 | gpio_request(GPIO_FN_LCDD10, NULL); | ||
692 | gpio_request(GPIO_FN_LCDD9, NULL); | ||
693 | gpio_request(GPIO_FN_LCDD8, NULL); | ||
694 | gpio_request(GPIO_FN_LCDD7, NULL); | ||
695 | gpio_request(GPIO_FN_LCDD6, NULL); | ||
696 | gpio_request(GPIO_FN_LCDD5, NULL); | ||
697 | gpio_request(GPIO_FN_LCDD4, NULL); | ||
698 | gpio_request(GPIO_FN_LCDD3, NULL); | ||
699 | gpio_request(GPIO_FN_LCDD2, NULL); | ||
700 | gpio_request(GPIO_FN_LCDD1, NULL); | ||
701 | gpio_request(GPIO_FN_LCDD0, NULL); | ||
702 | gpio_request(GPIO_FN_LCDDISP, NULL); | ||
703 | gpio_request(GPIO_FN_LCDDCK, NULL); | ||
704 | |||
705 | gpio_request_one(GPIO_PORT222, GPIOF_OUT_INIT_HIGH, NULL); /* LCDCDON */ | ||
706 | gpio_request_one(GPIO_PORT226, GPIOF_OUT_INIT_HIGH, NULL); /* SC */ | ||
707 | 733 | ||
708 | /* Touchscreen */ | 734 | /* Touchscreen */ |
709 | gpio_request_one(GPIO_PORT223, GPIOF_IN, NULL); /* IRQ8 */ | 735 | gpio_request_one(223, GPIOF_IN, NULL); /* IRQ8 */ |
710 | |||
711 | /* enable MMCIF */ | ||
712 | gpio_request(GPIO_FN_MMCCLK0, NULL); | ||
713 | gpio_request(GPIO_FN_MMCCMD0_PU, NULL); | ||
714 | gpio_request(GPIO_FN_MMCD0_0_PU, NULL); | ||
715 | gpio_request(GPIO_FN_MMCD0_1_PU, NULL); | ||
716 | gpio_request(GPIO_FN_MMCD0_2_PU, NULL); | ||
717 | gpio_request(GPIO_FN_MMCD0_3_PU, NULL); | ||
718 | gpio_request(GPIO_FN_MMCD0_4_PU, NULL); | ||
719 | gpio_request(GPIO_FN_MMCD0_5_PU, NULL); | ||
720 | gpio_request(GPIO_FN_MMCD0_6_PU, NULL); | ||
721 | gpio_request(GPIO_FN_MMCD0_7_PU, NULL); | ||
722 | 736 | ||
723 | /* enable SD */ | 737 | /* enable SD */ |
724 | gpio_request(GPIO_FN_SDHIWP0, NULL); | ||
725 | gpio_request(GPIO_FN_SDHICD0, NULL); | ||
726 | gpio_request(GPIO_FN_SDHICMD0, NULL); | ||
727 | gpio_request(GPIO_FN_SDHICLK0, NULL); | ||
728 | gpio_request(GPIO_FN_SDHID0_3, NULL); | ||
729 | gpio_request(GPIO_FN_SDHID0_2, NULL); | ||
730 | gpio_request(GPIO_FN_SDHID0_1, NULL); | ||
731 | gpio_request(GPIO_FN_SDHID0_0, NULL); | ||
732 | gpio_request(GPIO_FN_SDHI0_VCCQ_MC0_ON, NULL); | 738 | gpio_request(GPIO_FN_SDHI0_VCCQ_MC0_ON, NULL); |
733 | gpio_request_one(GPIO_PORT15, GPIOF_OUT_INIT_HIGH, NULL); /* power */ | 739 | gpio_request_one(15, GPIOF_OUT_INIT_HIGH, NULL); /* power */ |
734 | 740 | ||
735 | /* enable Micro SD */ | 741 | /* enable Micro SD */ |
736 | gpio_request(GPIO_FN_SDHID2_0, NULL); | 742 | gpio_request_one(14, GPIOF_OUT_INIT_HIGH, NULL); /* power */ |
737 | gpio_request(GPIO_FN_SDHID2_1, NULL); | ||
738 | gpio_request(GPIO_FN_SDHID2_2, NULL); | ||
739 | gpio_request(GPIO_FN_SDHID2_3, NULL); | ||
740 | gpio_request(GPIO_FN_SDHICMD2, NULL); | ||
741 | gpio_request(GPIO_FN_SDHICLK2, NULL); | ||
742 | gpio_request_one(GPIO_PORT14, GPIOF_OUT_INIT_HIGH, NULL); /* power */ | ||
743 | |||
744 | /* I2C 3 */ | ||
745 | gpio_request(GPIO_FN_PORT27_I2C_SCL3, NULL); | ||
746 | gpio_request(GPIO_FN_PORT28_I2C_SDA3, NULL); | ||
747 | |||
748 | /* enable FSI2 port A (ak4648) */ | ||
749 | gpio_request(GPIO_FN_FSIACK, NULL); | ||
750 | gpio_request(GPIO_FN_FSIAILR, NULL); | ||
751 | gpio_request(GPIO_FN_FSIAIBT, NULL); | ||
752 | gpio_request(GPIO_FN_FSIAISLD, NULL); | ||
753 | gpio_request(GPIO_FN_FSIAOSLD, NULL); | ||
754 | |||
755 | /* enable USB */ | ||
756 | gpio_request(GPIO_FN_VBUS_0, NULL); | ||
757 | 743 | ||
758 | #ifdef CONFIG_CACHE_L2X0 | 744 | #ifdef CONFIG_CACHE_L2X0 |
759 | /* Early BRESP enable, Shared attribute override enable, 64K*8way */ | 745 | /* Early BRESP enable, Shared attribute override enable, 64K*8way */ |
diff --git a/arch/arm/mach-shmobile/board-mackerel.c b/arch/arm/mach-shmobile/board-mackerel.c index db968a585ff0..336ccb4a0f2a 100644 --- a/arch/arm/mach-shmobile/board-mackerel.c +++ b/arch/arm/mach-shmobile/board-mackerel.c | |||
@@ -40,6 +40,7 @@ | |||
40 | #include <linux/mtd/partitions.h> | 40 | #include <linux/mtd/partitions.h> |
41 | #include <linux/mtd/physmap.h> | 41 | #include <linux/mtd/physmap.h> |
42 | #include <linux/mtd/sh_flctl.h> | 42 | #include <linux/mtd/sh_flctl.h> |
43 | #include <linux/pinctrl/machine.h> | ||
43 | #include <linux/pm_clock.h> | 44 | #include <linux/pm_clock.h> |
44 | #include <linux/regulator/fixed.h> | 45 | #include <linux/regulator/fixed.h> |
45 | #include <linux/regulator/machine.h> | 46 | #include <linux/regulator/machine.h> |
@@ -363,7 +364,7 @@ static struct fb_videomode mackerel_lcdc_modes[] = { | |||
363 | 364 | ||
364 | static int mackerel_set_brightness(int brightness) | 365 | static int mackerel_set_brightness(int brightness) |
365 | { | 366 | { |
366 | gpio_set_value(GPIO_PORT31, brightness); | 367 | gpio_set_value(31, brightness); |
367 | 368 | ||
368 | return 0; | 369 | return 0; |
369 | } | 370 | } |
@@ -819,22 +820,22 @@ static struct platform_device usbhs1_device = { | |||
819 | static struct gpio_led mackerel_leds[] = { | 820 | static struct gpio_led mackerel_leds[] = { |
820 | { | 821 | { |
821 | .name = "led0", | 822 | .name = "led0", |
822 | .gpio = GPIO_PORT0, | 823 | .gpio = 0, |
823 | .default_state = LEDS_GPIO_DEFSTATE_ON, | 824 | .default_state = LEDS_GPIO_DEFSTATE_ON, |
824 | }, | 825 | }, |
825 | { | 826 | { |
826 | .name = "led1", | 827 | .name = "led1", |
827 | .gpio = GPIO_PORT1, | 828 | .gpio = 1, |
828 | .default_state = LEDS_GPIO_DEFSTATE_ON, | 829 | .default_state = LEDS_GPIO_DEFSTATE_ON, |
829 | }, | 830 | }, |
830 | { | 831 | { |
831 | .name = "led2", | 832 | .name = "led2", |
832 | .gpio = GPIO_PORT2, | 833 | .gpio = 2, |
833 | .default_state = LEDS_GPIO_DEFSTATE_ON, | 834 | .default_state = LEDS_GPIO_DEFSTATE_ON, |
834 | }, | 835 | }, |
835 | { | 836 | { |
836 | .name = "led3", | 837 | .name = "led3", |
837 | .gpio = GPIO_PORT159, | 838 | .gpio = 159, |
838 | .default_state = LEDS_GPIO_DEFSTATE_ON, | 839 | .default_state = LEDS_GPIO_DEFSTATE_ON, |
839 | } | 840 | } |
840 | }; | 841 | }; |
@@ -964,11 +965,11 @@ static struct platform_device nand_flash_device = { | |||
964 | 965 | ||
965 | /* | 966 | /* |
966 | * The card detect pin of the top SD/MMC slot (CN7) is active low and is | 967 | * The card detect pin of the top SD/MMC slot (CN7) is active low and is |
967 | * connected to GPIO A22 of SH7372 (GPIO_PORT41). | 968 | * connected to GPIO A22 of SH7372 (GPIO 41). |
968 | */ | 969 | */ |
969 | static int slot_cn7_get_cd(struct platform_device *pdev) | 970 | static int slot_cn7_get_cd(struct platform_device *pdev) |
970 | { | 971 | { |
971 | return !gpio_get_value(GPIO_PORT41); | 972 | return !gpio_get_value(41); |
972 | } | 973 | } |
973 | 974 | ||
974 | /* SDHI0 */ | 975 | /* SDHI0 */ |
@@ -977,7 +978,7 @@ static struct sh_mobile_sdhi_info sdhi0_info = { | |||
977 | .dma_slave_rx = SHDMA_SLAVE_SDHI0_RX, | 978 | .dma_slave_rx = SHDMA_SLAVE_SDHI0_RX, |
978 | .tmio_flags = TMIO_MMC_USE_GPIO_CD, | 979 | .tmio_flags = TMIO_MMC_USE_GPIO_CD, |
979 | .tmio_caps = MMC_CAP_SD_HIGHSPEED | MMC_CAP_SDIO_IRQ, | 980 | .tmio_caps = MMC_CAP_SD_HIGHSPEED | MMC_CAP_SDIO_IRQ, |
980 | .cd_gpio = GPIO_PORT172, | 981 | .cd_gpio = 172, |
981 | }; | 982 | }; |
982 | 983 | ||
983 | static struct resource sdhi0_resources[] = { | 984 | static struct resource sdhi0_resources[] = { |
@@ -1060,11 +1061,11 @@ static struct platform_device sdhi1_device = { | |||
1060 | 1061 | ||
1061 | /* | 1062 | /* |
1062 | * The card detect pin of the top SD/MMC slot (CN23) is active low and is | 1063 | * The card detect pin of the top SD/MMC slot (CN23) is active low and is |
1063 | * connected to GPIO SCIFB_SCK of SH7372 (GPIO_PORT162). | 1064 | * connected to GPIO SCIFB_SCK of SH7372 (162). |
1064 | */ | 1065 | */ |
1065 | static int slot_cn23_get_cd(struct platform_device *pdev) | 1066 | static int slot_cn23_get_cd(struct platform_device *pdev) |
1066 | { | 1067 | { |
1067 | return !gpio_get_value(GPIO_PORT162); | 1068 | return !gpio_get_value(162); |
1068 | } | 1069 | } |
1069 | 1070 | ||
1070 | /* SDHI2 */ | 1071 | /* SDHI2 */ |
@@ -1328,6 +1329,33 @@ static struct i2c_board_info i2c1_devices[] = { | |||
1328 | }, | 1329 | }, |
1329 | }; | 1330 | }; |
1330 | 1331 | ||
1332 | static const struct pinctrl_map mackerel_pinctrl_map[] = { | ||
1333 | /* MMCIF */ | ||
1334 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh7372", | ||
1335 | "mmc0_data8_0", "mmc0"), | ||
1336 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh7372", | ||
1337 | "mmc0_ctrl_0", "mmc0"), | ||
1338 | /* SDHI0 */ | ||
1339 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh7372", | ||
1340 | "sdhi0_data4", "sdhi0"), | ||
1341 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh7372", | ||
1342 | "sdhi0_ctrl", "sdhi0"), | ||
1343 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh7372", | ||
1344 | "sdhi0_wp", "sdhi0"), | ||
1345 | /* SDHI1 */ | ||
1346 | #if !defined(CONFIG_MMC_SH_MMCIF) && !defined(CONFIG_MMC_SH_MMCIF_MODULE) | ||
1347 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-sh7372", | ||
1348 | "sdhi1_data4", "sdhi1"), | ||
1349 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-sh7372", | ||
1350 | "sdhi1_ctrl", "sdhi1"), | ||
1351 | #endif | ||
1352 | /* SDHI2 */ | ||
1353 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.2", "pfc-sh7372", | ||
1354 | "sdhi2_data4", "sdhi2"), | ||
1355 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.2", "pfc-sh7372", | ||
1356 | "sdhi2_ctrl", "sdhi2"), | ||
1357 | }; | ||
1358 | |||
1331 | #define GPIO_PORT9CR IOMEM(0xE6051009) | 1359 | #define GPIO_PORT9CR IOMEM(0xE6051009) |
1332 | #define GPIO_PORT10CR IOMEM(0xE605100A) | 1360 | #define GPIO_PORT10CR IOMEM(0xE605100A) |
1333 | #define GPIO_PORT167CR IOMEM(0xE60520A7) | 1361 | #define GPIO_PORT167CR IOMEM(0xE60520A7) |
@@ -1364,6 +1392,8 @@ static void __init mackerel_init(void) | |||
1364 | /* External clock source */ | 1392 | /* External clock source */ |
1365 | clk_set_rate(&sh7372_dv_clki_clk, 27000000); | 1393 | clk_set_rate(&sh7372_dv_clki_clk, 27000000); |
1366 | 1394 | ||
1395 | pinctrl_register_mappings(mackerel_pinctrl_map, | ||
1396 | ARRAY_SIZE(mackerel_pinctrl_map)); | ||
1367 | sh7372_pinmux_init(); | 1397 | sh7372_pinmux_init(); |
1368 | 1398 | ||
1369 | /* enable SCIFA0 */ | 1399 | /* enable SCIFA0 */ |
@@ -1403,9 +1433,9 @@ static void __init mackerel_init(void) | |||
1403 | gpio_request(GPIO_FN_LCDDCK, NULL); | 1433 | gpio_request(GPIO_FN_LCDDCK, NULL); |
1404 | 1434 | ||
1405 | /* backlight, off by default */ | 1435 | /* backlight, off by default */ |
1406 | gpio_request_one(GPIO_PORT31, GPIOF_OUT_INIT_LOW, NULL); | 1436 | gpio_request_one(31, GPIOF_OUT_INIT_LOW, NULL); |
1407 | 1437 | ||
1408 | gpio_request_one(GPIO_PORT151, GPIOF_OUT_INIT_HIGH, NULL); /* LCDDON */ | 1438 | gpio_request_one(151, GPIOF_OUT_INIT_HIGH, NULL); /* LCDDON */ |
1409 | 1439 | ||
1410 | /* USBHS0 */ | 1440 | /* USBHS0 */ |
1411 | gpio_request(GPIO_FN_VBUS0_0, NULL); | 1441 | gpio_request(GPIO_FN_VBUS0_0, NULL); |
@@ -1421,10 +1451,10 @@ static void __init mackerel_init(void) | |||
1421 | gpio_request(GPIO_FN_FSIAILR, NULL); | 1451 | gpio_request(GPIO_FN_FSIAILR, NULL); |
1422 | gpio_request(GPIO_FN_FSIAISLD, NULL); | 1452 | gpio_request(GPIO_FN_FSIAISLD, NULL); |
1423 | gpio_request(GPIO_FN_FSIAOSLD, NULL); | 1453 | gpio_request(GPIO_FN_FSIAOSLD, NULL); |
1424 | gpio_request_one(GPIO_PORT161, GPIOF_OUT_INIT_LOW, NULL); /* slave */ | 1454 | gpio_request_one(161, GPIOF_OUT_INIT_LOW, NULL); /* slave */ |
1425 | 1455 | ||
1426 | gpio_request(GPIO_PORT9, NULL); | 1456 | gpio_request(9, NULL); |
1427 | gpio_request(GPIO_PORT10, NULL); | 1457 | gpio_request(10, NULL); |
1428 | gpio_direction_none(GPIO_PORT9CR); /* FSIAOBT needs no direction */ | 1458 | gpio_direction_none(GPIO_PORT9CR); /* FSIAOBT needs no direction */ |
1429 | gpio_direction_none(GPIO_PORT10CR); /* FSIAOLR needs no direction */ | 1459 | gpio_direction_none(GPIO_PORT10CR); /* FSIAOLR needs no direction */ |
1430 | 1460 | ||
@@ -1453,52 +1483,14 @@ static void __init mackerel_init(void) | |||
1453 | gpio_request(GPIO_FN_IRQ21, NULL); | 1483 | gpio_request(GPIO_FN_IRQ21, NULL); |
1454 | irq_set_irq_type(IRQ21, IRQ_TYPE_LEVEL_HIGH); | 1484 | irq_set_irq_type(IRQ21, IRQ_TYPE_LEVEL_HIGH); |
1455 | 1485 | ||
1456 | /* enable SDHI0 */ | ||
1457 | gpio_request(GPIO_FN_SDHIWP0, NULL); | ||
1458 | gpio_request(GPIO_FN_SDHICMD0, NULL); | ||
1459 | gpio_request(GPIO_FN_SDHICLK0, NULL); | ||
1460 | gpio_request(GPIO_FN_SDHID0_3, NULL); | ||
1461 | gpio_request(GPIO_FN_SDHID0_2, NULL); | ||
1462 | gpio_request(GPIO_FN_SDHID0_1, NULL); | ||
1463 | gpio_request(GPIO_FN_SDHID0_0, NULL); | ||
1464 | |||
1465 | /* SDHI0 PORT172 card-detect IRQ26 */ | 1486 | /* SDHI0 PORT172 card-detect IRQ26 */ |
1466 | gpio_request(GPIO_FN_IRQ26_172, NULL); | 1487 | gpio_request(GPIO_FN_IRQ26_172, NULL); |
1467 | 1488 | ||
1468 | #if !defined(CONFIG_MMC_SH_MMCIF) && !defined(CONFIG_MMC_SH_MMCIF_MODULE) | ||
1469 | /* enable SDHI1 */ | ||
1470 | gpio_request(GPIO_FN_SDHICMD1, NULL); | ||
1471 | gpio_request(GPIO_FN_SDHICLK1, NULL); | ||
1472 | gpio_request(GPIO_FN_SDHID1_3, NULL); | ||
1473 | gpio_request(GPIO_FN_SDHID1_2, NULL); | ||
1474 | gpio_request(GPIO_FN_SDHID1_1, NULL); | ||
1475 | gpio_request(GPIO_FN_SDHID1_0, NULL); | ||
1476 | #endif | ||
1477 | /* card detect pin for MMC slot (CN7) */ | 1489 | /* card detect pin for MMC slot (CN7) */ |
1478 | gpio_request_one(GPIO_PORT41, GPIOF_IN, NULL); | 1490 | gpio_request_one(41, GPIOF_IN, NULL); |
1479 | |||
1480 | /* enable SDHI2 */ | ||
1481 | gpio_request(GPIO_FN_SDHICMD2, NULL); | ||
1482 | gpio_request(GPIO_FN_SDHICLK2, NULL); | ||
1483 | gpio_request(GPIO_FN_SDHID2_3, NULL); | ||
1484 | gpio_request(GPIO_FN_SDHID2_2, NULL); | ||
1485 | gpio_request(GPIO_FN_SDHID2_1, NULL); | ||
1486 | gpio_request(GPIO_FN_SDHID2_0, NULL); | ||
1487 | 1491 | ||
1488 | /* card detect pin for microSD slot (CN23) */ | 1492 | /* card detect pin for microSD slot (CN23) */ |
1489 | gpio_request_one(GPIO_PORT162, GPIOF_IN, NULL); | 1493 | gpio_request_one(162, GPIOF_IN, NULL); |
1490 | |||
1491 | /* MMCIF */ | ||
1492 | gpio_request(GPIO_FN_MMCD0_0, NULL); | ||
1493 | gpio_request(GPIO_FN_MMCD0_1, NULL); | ||
1494 | gpio_request(GPIO_FN_MMCD0_2, NULL); | ||
1495 | gpio_request(GPIO_FN_MMCD0_3, NULL); | ||
1496 | gpio_request(GPIO_FN_MMCD0_4, NULL); | ||
1497 | gpio_request(GPIO_FN_MMCD0_5, NULL); | ||
1498 | gpio_request(GPIO_FN_MMCD0_6, NULL); | ||
1499 | gpio_request(GPIO_FN_MMCD0_7, NULL); | ||
1500 | gpio_request(GPIO_FN_MMCCMD0, NULL); | ||
1501 | gpio_request(GPIO_FN_MMCCLK0, NULL); | ||
1502 | 1494 | ||
1503 | /* FLCTL */ | 1495 | /* FLCTL */ |
1504 | gpio_request(GPIO_FN_D0_NAF0, NULL); | 1496 | gpio_request(GPIO_FN_D0_NAF0, NULL); |
diff --git a/arch/arm/mach-shmobile/board-marzen.c b/arch/arm/mach-shmobile/board-marzen.c index cdcb799e802f..5852331743e7 100644 --- a/arch/arm/mach-shmobile/board-marzen.c +++ b/arch/arm/mach-shmobile/board-marzen.c | |||
@@ -25,13 +25,14 @@ | |||
25 | #include <linux/platform_device.h> | 25 | #include <linux/platform_device.h> |
26 | #include <linux/delay.h> | 26 | #include <linux/delay.h> |
27 | #include <linux/io.h> | 27 | #include <linux/io.h> |
28 | #include <linux/gpio.h> | ||
29 | #include <linux/dma-mapping.h> | 28 | #include <linux/dma-mapping.h> |
29 | #include <linux/pinctrl/machine.h> | ||
30 | #include <linux/regulator/fixed.h> | 30 | #include <linux/regulator/fixed.h> |
31 | #include <linux/regulator/machine.h> | 31 | #include <linux/regulator/machine.h> |
32 | #include <linux/smsc911x.h> | 32 | #include <linux/smsc911x.h> |
33 | #include <linux/spi/spi.h> | 33 | #include <linux/spi/spi.h> |
34 | #include <linux/spi/sh_hspi.h> | 34 | #include <linux/spi/sh_hspi.h> |
35 | #include <linux/mmc/host.h> | ||
35 | #include <linux/mmc/sh_mobile_sdhi.h> | 36 | #include <linux/mmc/sh_mobile_sdhi.h> |
36 | #include <linux/mfd/tmio.h> | 37 | #include <linux/mfd/tmio.h> |
37 | #include <linux/usb/otg.h> | 38 | #include <linux/usb/otg.h> |
@@ -326,6 +327,41 @@ void __init marzen_init_late(void) | |||
326 | ARRAY_SIZE(marzen_late_devices)); | 327 | ARRAY_SIZE(marzen_late_devices)); |
327 | } | 328 | } |
328 | 329 | ||
330 | static const struct pinctrl_map marzen_pinctrl_map[] = { | ||
331 | /* HSPI0 */ | ||
332 | PIN_MAP_MUX_GROUP_DEFAULT("sh-hspi.0", "pfc-r8a7779", | ||
333 | "hspi0", "hspi0"), | ||
334 | /* SCIF2 (CN18: DEBUG0) */ | ||
335 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.2", "pfc-r8a7779", | ||
336 | "scif2_data_c", "scif2"), | ||
337 | /* SCIF4 (CN19: DEBUG1) */ | ||
338 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.4", "pfc-r8a7779", | ||
339 | "scif4_data", "scif4"), | ||
340 | /* SDHI0 */ | ||
341 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7779", | ||
342 | "sdhi0_data4", "sdhi0"), | ||
343 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7779", | ||
344 | "sdhi0_ctrl", "sdhi0"), | ||
345 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7779", | ||
346 | "sdhi0_cd", "sdhi0"), | ||
347 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7779", | ||
348 | "sdhi0_wp", "sdhi0"), | ||
349 | /* SMSC */ | ||
350 | PIN_MAP_MUX_GROUP_DEFAULT("smsc911x", "pfc-r8a7779", | ||
351 | "intc_irq1_b", "intc"), | ||
352 | PIN_MAP_MUX_GROUP_DEFAULT("smsc911x", "pfc-r8a7779", | ||
353 | "lbsc_ex_cs0", "lbsc"), | ||
354 | /* USB0 */ | ||
355 | PIN_MAP_MUX_GROUP_DEFAULT("ehci-platform.0", "pfc-r8a7779", | ||
356 | "usb0", "usb0"), | ||
357 | /* USB1 */ | ||
358 | PIN_MAP_MUX_GROUP_DEFAULT("ehci-platform.0", "pfc-r8a7779", | ||
359 | "usb1", "usb1"), | ||
360 | /* USB2 */ | ||
361 | PIN_MAP_MUX_GROUP_DEFAULT("ehci-platform.1", "pfc-r8a7779", | ||
362 | "usb2", "usb2"), | ||
363 | }; | ||
364 | |||
329 | static void __init marzen_init(void) | 365 | static void __init marzen_init(void) |
330 | { | 366 | { |
331 | regulator_register_always_on(0, "fixed-3.3V", fixed3v3_power_consumers, | 367 | regulator_register_always_on(0, "fixed-3.3V", fixed3v3_power_consumers, |
@@ -333,44 +369,10 @@ static void __init marzen_init(void) | |||
333 | regulator_register_fixed(1, dummy_supplies, | 369 | regulator_register_fixed(1, dummy_supplies, |
334 | ARRAY_SIZE(dummy_supplies)); | 370 | ARRAY_SIZE(dummy_supplies)); |
335 | 371 | ||
372 | pinctrl_register_mappings(marzen_pinctrl_map, | ||
373 | ARRAY_SIZE(marzen_pinctrl_map)); | ||
336 | r8a7779_pinmux_init(); | 374 | r8a7779_pinmux_init(); |
337 | 375 | ||
338 | /* SCIF2 (CN18: DEBUG0) */ | ||
339 | gpio_request(GPIO_FN_TX2_C, NULL); | ||
340 | gpio_request(GPIO_FN_RX2_C, NULL); | ||
341 | |||
342 | /* SCIF4 (CN19: DEBUG1) */ | ||
343 | gpio_request(GPIO_FN_TX4, NULL); | ||
344 | gpio_request(GPIO_FN_RX4, NULL); | ||
345 | |||
346 | /* LAN89218 */ | ||
347 | gpio_request(GPIO_FN_EX_CS0, NULL); /* nCS */ | ||
348 | gpio_request(GPIO_FN_IRQ1_B, NULL); /* IRQ + PME */ | ||
349 | |||
350 | /* SD0 (CN20) */ | ||
351 | gpio_request(GPIO_FN_SD0_CLK, NULL); | ||
352 | gpio_request(GPIO_FN_SD0_CMD, NULL); | ||
353 | gpio_request(GPIO_FN_SD0_DAT0, NULL); | ||
354 | gpio_request(GPIO_FN_SD0_DAT1, NULL); | ||
355 | gpio_request(GPIO_FN_SD0_DAT2, NULL); | ||
356 | gpio_request(GPIO_FN_SD0_DAT3, NULL); | ||
357 | gpio_request(GPIO_FN_SD0_CD, NULL); | ||
358 | gpio_request(GPIO_FN_SD0_WP, NULL); | ||
359 | |||
360 | /* HSPI 0 */ | ||
361 | gpio_request(GPIO_FN_HSPI_CLK0, NULL); | ||
362 | gpio_request(GPIO_FN_HSPI_CS0, NULL); | ||
363 | gpio_request(GPIO_FN_HSPI_TX0, NULL); | ||
364 | gpio_request(GPIO_FN_HSPI_RX0, NULL); | ||
365 | |||
366 | /* USB (CN21) */ | ||
367 | gpio_request(GPIO_FN_USB_OVC0, NULL); | ||
368 | gpio_request(GPIO_FN_USB_OVC1, NULL); | ||
369 | gpio_request(GPIO_FN_USB_OVC2, NULL); | ||
370 | |||
371 | /* USB (CN22) */ | ||
372 | gpio_request(GPIO_FN_USB_PENC2, NULL); | ||
373 | |||
374 | r8a7779_add_standard_devices(); | 376 | r8a7779_add_standard_devices(); |
375 | platform_add_devices(marzen_devices, ARRAY_SIZE(marzen_devices)); | 377 | platform_add_devices(marzen_devices, ARRAY_SIZE(marzen_devices)); |
376 | } | 378 | } |
diff --git a/arch/arm/mach-shmobile/include/mach/r8a7740.h b/arch/arm/mach-shmobile/include/mach/r8a7740.h index 59d252f4cf97..c2583610ad36 100644 --- a/arch/arm/mach-shmobile/include/mach/r8a7740.h +++ b/arch/arm/mach-shmobile/include/mach/r8a7740.h | |||
@@ -241,48 +241,9 @@ enum { | |||
241 | 241 | ||
242 | /* LCD0 */ | 242 | /* LCD0 */ |
243 | GPIO_FN_LCDC0_SELECT, | 243 | GPIO_FN_LCDC0_SELECT, |
244 | GPIO_FN_LCD0_D0, GPIO_FN_LCD0_D1, GPIO_FN_LCD0_D2, | ||
245 | GPIO_FN_LCD0_D3, GPIO_FN_LCD0_D4, GPIO_FN_LCD0_D5, | ||
246 | GPIO_FN_LCD0_D6, GPIO_FN_LCD0_D7, GPIO_FN_LCD0_D8, | ||
247 | GPIO_FN_LCD0_D9, GPIO_FN_LCD0_D10, GPIO_FN_LCD0_D11, | ||
248 | GPIO_FN_LCD0_D12, GPIO_FN_LCD0_D13, GPIO_FN_LCD0_D14, | ||
249 | GPIO_FN_LCD0_D15, GPIO_FN_LCD0_D16, GPIO_FN_LCD0_D17, | ||
250 | GPIO_FN_LCD0_DON, GPIO_FN_LCD0_VCPWC, GPIO_FN_LCD0_VEPWC, | ||
251 | |||
252 | GPIO_FN_LCD0_DCK, GPIO_FN_LCD0_VSYN, /* for RGB */ | ||
253 | GPIO_FN_LCD0_HSYN, GPIO_FN_LCD0_DISP, /* for RGB */ | ||
254 | |||
255 | GPIO_FN_LCD0_WR, GPIO_FN_LCD0_RD, /* for SYS */ | ||
256 | GPIO_FN_LCD0_CS, GPIO_FN_LCD0_RS, /* for SYS */ | ||
257 | |||
258 | GPIO_FN_LCD0_D18_PORT163, GPIO_FN_LCD0_D19_PORT162, | ||
259 | GPIO_FN_LCD0_D20_PORT161, GPIO_FN_LCD0_D21_PORT158, | ||
260 | GPIO_FN_LCD0_D22_PORT160, GPIO_FN_LCD0_D23_PORT159, | ||
261 | GPIO_FN_LCD0_LCLK_PORT165, /* MSEL5CR_6_1 */ | ||
262 | |||
263 | GPIO_FN_LCD0_D18_PORT40, GPIO_FN_LCD0_D19_PORT4, | ||
264 | GPIO_FN_LCD0_D20_PORT3, GPIO_FN_LCD0_D21_PORT2, | ||
265 | GPIO_FN_LCD0_D22_PORT0, GPIO_FN_LCD0_D23_PORT1, | ||
266 | GPIO_FN_LCD0_LCLK_PORT102, /* MSEL5CR_6_0 */ | ||
267 | 244 | ||
268 | /* LCD1 */ | 245 | /* LCD1 */ |
269 | GPIO_FN_LCDC1_SELECT, | 246 | GPIO_FN_LCDC1_SELECT, |
270 | GPIO_FN_LCD1_D0, GPIO_FN_LCD1_D1, GPIO_FN_LCD1_D2, | ||
271 | GPIO_FN_LCD1_D3, GPIO_FN_LCD1_D4, GPIO_FN_LCD1_D5, | ||
272 | GPIO_FN_LCD1_D6, GPIO_FN_LCD1_D7, GPIO_FN_LCD1_D8, | ||
273 | GPIO_FN_LCD1_D9, GPIO_FN_LCD1_D10, GPIO_FN_LCD1_D11, | ||
274 | GPIO_FN_LCD1_D12, GPIO_FN_LCD1_D13, GPIO_FN_LCD1_D14, | ||
275 | GPIO_FN_LCD1_D15, GPIO_FN_LCD1_D16, GPIO_FN_LCD1_D17, | ||
276 | GPIO_FN_LCD1_D18, GPIO_FN_LCD1_D19, GPIO_FN_LCD1_D20, | ||
277 | GPIO_FN_LCD1_D21, GPIO_FN_LCD1_D22, GPIO_FN_LCD1_D23, | ||
278 | GPIO_FN_LCD1_DON, GPIO_FN_LCD1_VCPWC, | ||
279 | GPIO_FN_LCD1_LCLK, GPIO_FN_LCD1_VEPWC, | ||
280 | |||
281 | GPIO_FN_LCD1_DCK, GPIO_FN_LCD1_VSYN, /* for RGB */ | ||
282 | GPIO_FN_LCD1_HSYN, GPIO_FN_LCD1_DISP, /* for RGB */ | ||
283 | |||
284 | GPIO_FN_LCD1_WR, GPIO_FN_LCD1_RD, /* for SYS */ | ||
285 | GPIO_FN_LCD1_CS, GPIO_FN_LCD1_RS, /* for SYS */ | ||
286 | 247 | ||
287 | /* RSPI */ | 248 | /* RSPI */ |
288 | GPIO_FN_RSPI_SSL0_A, GPIO_FN_RSPI_SSL1_A, | 249 | GPIO_FN_RSPI_SSL0_A, GPIO_FN_RSPI_SSL1_A, |
@@ -346,26 +307,6 @@ enum { | |||
346 | GPIO_FN_SIM_D_PORT22, /* SIM_D Port 22/199 */ | 307 | GPIO_FN_SIM_D_PORT22, /* SIM_D Port 22/199 */ |
347 | GPIO_FN_SIM_D_PORT199, | 308 | GPIO_FN_SIM_D_PORT199, |
348 | 309 | ||
349 | /* SDHI0 */ | ||
350 | GPIO_FN_SDHI0_D0, GPIO_FN_SDHI0_D1, GPIO_FN_SDHI0_D2, | ||
351 | GPIO_FN_SDHI0_D3, GPIO_FN_SDHI0_CD, GPIO_FN_SDHI0_WP, | ||
352 | GPIO_FN_SDHI0_CMD, GPIO_FN_SDHI0_CLK, | ||
353 | |||
354 | /* SDHI1 */ | ||
355 | GPIO_FN_SDHI1_D0, GPIO_FN_SDHI1_D1, GPIO_FN_SDHI1_D2, | ||
356 | GPIO_FN_SDHI1_D3, GPIO_FN_SDHI1_CD, GPIO_FN_SDHI1_WP, | ||
357 | GPIO_FN_SDHI1_CMD, GPIO_FN_SDHI1_CLK, | ||
358 | |||
359 | /* SDHI2 */ | ||
360 | GPIO_FN_SDHI2_D0, GPIO_FN_SDHI2_D1, GPIO_FN_SDHI2_D2, | ||
361 | GPIO_FN_SDHI2_D3, GPIO_FN_SDHI2_CLK, GPIO_FN_SDHI2_CMD, | ||
362 | |||
363 | GPIO_FN_SDHI2_CD_PORT24, /* MSEL5CR_19_0 */ | ||
364 | GPIO_FN_SDHI2_WP_PORT25, | ||
365 | |||
366 | GPIO_FN_SDHI2_WP_PORT177, /* MSEL5CR_19_1 */ | ||
367 | GPIO_FN_SDHI2_CD_PORT202, | ||
368 | |||
369 | /* MSIOF2 */ | 310 | /* MSIOF2 */ |
370 | GPIO_FN_MSIOF2_TXD, GPIO_FN_MSIOF2_RXD, GPIO_FN_MSIOF2_TSCK, | 311 | GPIO_FN_MSIOF2_TXD, GPIO_FN_MSIOF2_RXD, GPIO_FN_MSIOF2_TSCK, |
371 | GPIO_FN_MSIOF2_SS2, GPIO_FN_MSIOF2_TSYNC, GPIO_FN_MSIOF2_SS1, | 312 | GPIO_FN_MSIOF2_SS2, GPIO_FN_MSIOF2_TSYNC, GPIO_FN_MSIOF2_SS1, |
@@ -417,21 +358,6 @@ enum { | |||
417 | GPIO_FN_MEMC_DREQ1, | 358 | GPIO_FN_MEMC_DREQ1, |
418 | GPIO_FN_MEMC_A0, | 359 | GPIO_FN_MEMC_A0, |
419 | 360 | ||
420 | /* MMC */ | ||
421 | GPIO_FN_MMC0_D0_PORT68, GPIO_FN_MMC0_D1_PORT69, | ||
422 | GPIO_FN_MMC0_D2_PORT70, GPIO_FN_MMC0_D3_PORT71, | ||
423 | GPIO_FN_MMC0_D4_PORT72, GPIO_FN_MMC0_D5_PORT73, | ||
424 | GPIO_FN_MMC0_D6_PORT74, GPIO_FN_MMC0_D7_PORT75, | ||
425 | GPIO_FN_MMC0_CLK_PORT66, | ||
426 | GPIO_FN_MMC0_CMD_PORT67, /* MSEL4CR_15_0 */ | ||
427 | |||
428 | GPIO_FN_MMC1_D0_PORT149, GPIO_FN_MMC1_D1_PORT148, | ||
429 | GPIO_FN_MMC1_D2_PORT147, GPIO_FN_MMC1_D3_PORT146, | ||
430 | GPIO_FN_MMC1_D4_PORT145, GPIO_FN_MMC1_D5_PORT144, | ||
431 | GPIO_FN_MMC1_D6_PORT143, GPIO_FN_MMC1_D7_PORT142, | ||
432 | GPIO_FN_MMC1_CLK_PORT103, | ||
433 | GPIO_FN_MMC1_CMD_PORT104, /* MSEL4CR_15_1 */ | ||
434 | |||
435 | /* MSIOF0 */ | 361 | /* MSIOF0 */ |
436 | GPIO_FN_MSIOF0_SS1, GPIO_FN_MSIOF0_SS2, | 362 | GPIO_FN_MSIOF0_SS1, GPIO_FN_MSIOF0_SS2, |
437 | GPIO_FN_MSIOF0_RXD, GPIO_FN_MSIOF0_TXD, | 363 | GPIO_FN_MSIOF0_RXD, GPIO_FN_MSIOF0_TXD, |
diff --git a/arch/arm/mach-shmobile/include/mach/r8a7779.h b/arch/arm/mach-shmobile/include/mach/r8a7779.h index 8ab0cd6ad6b0..8ea0ad18cdff 100644 --- a/arch/arm/mach-shmobile/include/mach/r8a7779.h +++ b/arch/arm/mach-shmobile/include/mach/r8a7779.h | |||
@@ -71,128 +71,125 @@ enum { | |||
71 | GPIO_FN_A19, | 71 | GPIO_FN_A19, |
72 | 72 | ||
73 | /* IPSR0 */ | 73 | /* IPSR0 */ |
74 | GPIO_FN_USB_PENC2, GPIO_FN_SCK0, GPIO_FN_PWM1, GPIO_FN_PWMFSW0, | 74 | GPIO_FN_PWM1, GPIO_FN_PWMFSW0, |
75 | GPIO_FN_SCIF_CLK, GPIO_FN_TCLK0_C, GPIO_FN_BS, GPIO_FN_SD1_DAT2, | 75 | GPIO_FN_SCIF_CLK, GPIO_FN_TCLK0_C, GPIO_FN_BS, |
76 | GPIO_FN_MMC0_D2, GPIO_FN_FD2, GPIO_FN_ATADIR0, GPIO_FN_SDSELF, | 76 | GPIO_FN_FD2, GPIO_FN_ATADIR0, GPIO_FN_SDSELF, |
77 | GPIO_FN_HCTS1, GPIO_FN_TX4_C, GPIO_FN_A0, GPIO_FN_SD1_DAT3, | 77 | GPIO_FN_HCTS1, GPIO_FN_A0, |
78 | GPIO_FN_MMC0_D3, GPIO_FN_FD3, GPIO_FN_A20, GPIO_FN_TX5_D, | 78 | GPIO_FN_FD3, GPIO_FN_A20, |
79 | GPIO_FN_HSPI_TX2_B, GPIO_FN_A21, GPIO_FN_SCK5_D, GPIO_FN_HSPI_CLK2_B, | 79 | GPIO_FN_A21, |
80 | GPIO_FN_A22, GPIO_FN_RX5_D, GPIO_FN_HSPI_RX2_B, GPIO_FN_VI1_R0, | 80 | GPIO_FN_A22, GPIO_FN_VI1_R0, |
81 | GPIO_FN_A23, GPIO_FN_FCLE, GPIO_FN_HSPI_CLK2, GPIO_FN_VI1_R1, | 81 | GPIO_FN_A23, GPIO_FN_FCLE, GPIO_FN_VI1_R1, |
82 | GPIO_FN_A24, GPIO_FN_SD1_CD, GPIO_FN_MMC0_D4, GPIO_FN_FD4, | 82 | GPIO_FN_A24, GPIO_FN_FD4, |
83 | GPIO_FN_HSPI_CS2, GPIO_FN_VI1_R2, GPIO_FN_SSI_WS78_B, GPIO_FN_A25, | 83 | GPIO_FN_VI1_R2, GPIO_FN_SSI_WS78_B, GPIO_FN_A25, |
84 | GPIO_FN_SD1_WP, GPIO_FN_MMC0_D5, GPIO_FN_FD5, GPIO_FN_HSPI_RX2, | 84 | GPIO_FN_FD5, |
85 | GPIO_FN_VI1_R3, GPIO_FN_TX5_B, GPIO_FN_SSI_SDATA7_B, GPIO_FN_CTS0_B, | 85 | GPIO_FN_VI1_R3, GPIO_FN_SSI_SDATA7_B, |
86 | GPIO_FN_CLKOUT, GPIO_FN_TX3C_IRDA_TX_C, GPIO_FN_PWM0_B, GPIO_FN_CS0, | 86 | GPIO_FN_CLKOUT, GPIO_FN_PWM0_B, |
87 | GPIO_FN_HSPI_CS2_B, GPIO_FN_CS1_A26, GPIO_FN_HSPI_TX2, | ||
88 | GPIO_FN_SDSELF_B, GPIO_FN_RD_WR, GPIO_FN_FWE, GPIO_FN_ATAG0, | 87 | GPIO_FN_SDSELF_B, GPIO_FN_RD_WR, GPIO_FN_FWE, GPIO_FN_ATAG0, |
89 | GPIO_FN_VI1_R7, GPIO_FN_HRTS1, GPIO_FN_RX4_C, | 88 | GPIO_FN_VI1_R7, GPIO_FN_HRTS1, |
90 | 89 | ||
91 | /* IPSR1 */ | 90 | /* IPSR1 */ |
92 | GPIO_FN_EX_CS0, GPIO_FN_RX3_C_IRDA_RX_C, GPIO_FN_MMC0_D6, | 91 | GPIO_FN_FD6, GPIO_FN_FD7, |
93 | GPIO_FN_FD6, GPIO_FN_EX_CS1, GPIO_FN_MMC0_D7, GPIO_FN_FD7, | 92 | GPIO_FN_FALE, |
94 | GPIO_FN_EX_CS2, GPIO_FN_SD1_CLK, GPIO_FN_MMC0_CLK, GPIO_FN_FALE, | 93 | GPIO_FN_ATACS00, |
95 | GPIO_FN_ATACS00, GPIO_FN_EX_CS3, GPIO_FN_SD1_CMD, GPIO_FN_MMC0_CMD, | 94 | GPIO_FN_FRE, GPIO_FN_ATACS10, GPIO_FN_VI1_R4, |
96 | GPIO_FN_FRE, GPIO_FN_ATACS10, GPIO_FN_VI1_R4, GPIO_FN_RX5_B, | 95 | GPIO_FN_HSCK1, GPIO_FN_SSI_SDATA8_B, |
97 | GPIO_FN_HSCK1, GPIO_FN_SSI_SDATA8_B, GPIO_FN_RTS0_B_TANS_B, | 96 | GPIO_FN_SSI_SDATA9, |
98 | GPIO_FN_SSI_SDATA9, GPIO_FN_EX_CS4, GPIO_FN_SD1_DAT0, GPIO_FN_MMC0_D0, | 97 | GPIO_FN_FD0, GPIO_FN_ATARD0, GPIO_FN_VI1_R5, |
99 | GPIO_FN_FD0, GPIO_FN_ATARD0, GPIO_FN_VI1_R5, GPIO_FN_SCK5_B, | 98 | GPIO_FN_HTX1, GPIO_FN_SSI_SCK9, |
100 | GPIO_FN_HTX1, GPIO_FN_TX2_E, GPIO_FN_TX0_B, GPIO_FN_SSI_SCK9, | 99 | GPIO_FN_FD1, |
101 | GPIO_FN_EX_CS5, GPIO_FN_SD1_DAT1, GPIO_FN_MMC0_D1, GPIO_FN_FD1, | 100 | GPIO_FN_ATAWR0, GPIO_FN_VI1_R6, GPIO_FN_HRX1, |
102 | GPIO_FN_ATAWR0, GPIO_FN_VI1_R6, GPIO_FN_HRX1, GPIO_FN_RX2_E, | 101 | GPIO_FN_SSI_WS9, GPIO_FN_MLB_CLK, GPIO_FN_PWM2, |
103 | GPIO_FN_RX0_B, GPIO_FN_SSI_WS9, GPIO_FN_MLB_CLK, GPIO_FN_PWM2, | 102 | GPIO_FN_MLB_SIG, GPIO_FN_PWM3, |
104 | GPIO_FN_SCK4, GPIO_FN_MLB_SIG, GPIO_FN_PWM3, GPIO_FN_TX4, | 103 | GPIO_FN_MLB_DAT, GPIO_FN_PWM4, GPIO_FN_HTX0, |
105 | GPIO_FN_MLB_DAT, GPIO_FN_PWM4, GPIO_FN_RX4, GPIO_FN_HTX0, | 104 | GPIO_FN_SDATA, GPIO_FN_SUB_TCK, |
106 | GPIO_FN_TX1, GPIO_FN_SDATA, GPIO_FN_CTS0_C, GPIO_FN_SUB_TCK, | ||
107 | GPIO_FN_CC5_STATE2, GPIO_FN_CC5_STATE10, GPIO_FN_CC5_STATE18, | 105 | GPIO_FN_CC5_STATE2, GPIO_FN_CC5_STATE10, GPIO_FN_CC5_STATE18, |
108 | GPIO_FN_CC5_STATE26, GPIO_FN_CC5_STATE34, | 106 | GPIO_FN_CC5_STATE26, GPIO_FN_CC5_STATE34, |
109 | 107 | ||
110 | /* IPSR2 */ | 108 | /* IPSR2 */ |
111 | GPIO_FN_HRX0, GPIO_FN_RX1, GPIO_FN_SCKZ, GPIO_FN_RTS0_C_TANS_C, | 109 | GPIO_FN_HRX0, GPIO_FN_SCKZ, |
112 | GPIO_FN_SUB_TDI, GPIO_FN_CC5_STATE3, GPIO_FN_CC5_STATE11, | 110 | GPIO_FN_SUB_TDI, GPIO_FN_CC5_STATE3, GPIO_FN_CC5_STATE11, |
113 | GPIO_FN_CC5_STATE19, GPIO_FN_CC5_STATE27, GPIO_FN_CC5_STATE35, | 111 | GPIO_FN_CC5_STATE19, GPIO_FN_CC5_STATE27, GPIO_FN_CC5_STATE35, |
114 | GPIO_FN_HSCK0, GPIO_FN_SCK1, GPIO_FN_MTS, GPIO_FN_PWM5, | 112 | GPIO_FN_HSCK0, GPIO_FN_MTS, GPIO_FN_PWM5, |
115 | GPIO_FN_SCK0_C, GPIO_FN_SSI_SDATA9_B, GPIO_FN_SUB_TDO, | 113 | GPIO_FN_SSI_SDATA9_B, GPIO_FN_SUB_TDO, |
116 | GPIO_FN_CC5_STATE0, GPIO_FN_CC5_STATE8, GPIO_FN_CC5_STATE16, | 114 | GPIO_FN_CC5_STATE0, GPIO_FN_CC5_STATE8, GPIO_FN_CC5_STATE16, |
117 | GPIO_FN_CC5_STATE24, GPIO_FN_CC5_STATE32, GPIO_FN_HCTS0, GPIO_FN_CTS1, | 115 | GPIO_FN_CC5_STATE24, GPIO_FN_CC5_STATE32, GPIO_FN_HCTS0, |
118 | GPIO_FN_STM, GPIO_FN_PWM0_D, GPIO_FN_RX0_C, GPIO_FN_SCIF_CLK_C, | 116 | GPIO_FN_STM, GPIO_FN_PWM0_D, GPIO_FN_SCIF_CLK_C, |
119 | GPIO_FN_SUB_TRST, GPIO_FN_TCLK1_B, GPIO_FN_CC5_OSCOUT, GPIO_FN_HRTS0, | 117 | GPIO_FN_SUB_TRST, GPIO_FN_TCLK1_B, GPIO_FN_CC5_OSCOUT, GPIO_FN_HRTS0, |
120 | GPIO_FN_RTS1_TANS, GPIO_FN_MDATA, GPIO_FN_TX0_C, GPIO_FN_SUB_TMS, | 118 | GPIO_FN_MDATA, GPIO_FN_SUB_TMS, |
121 | GPIO_FN_CC5_STATE1, GPIO_FN_CC5_STATE9, GPIO_FN_CC5_STATE17, | 119 | GPIO_FN_CC5_STATE1, GPIO_FN_CC5_STATE9, GPIO_FN_CC5_STATE17, |
122 | GPIO_FN_CC5_STATE25, GPIO_FN_CC5_STATE33, GPIO_FN_DU0_DR0, | 120 | GPIO_FN_CC5_STATE25, GPIO_FN_CC5_STATE33, |
123 | GPIO_FN_LCDOUT0, GPIO_FN_DREQ0, GPIO_FN_GPS_CLK_B, GPIO_FN_AUDATA0, | 121 | GPIO_FN_LCDOUT0, GPIO_FN_DREQ0, GPIO_FN_GPS_CLK_B, GPIO_FN_AUDATA0, |
124 | GPIO_FN_TX5_C, GPIO_FN_DU0_DR1, GPIO_FN_LCDOUT1, GPIO_FN_DACK0, | 122 | GPIO_FN_LCDOUT1, GPIO_FN_DACK0, |
125 | GPIO_FN_DRACK0, GPIO_FN_GPS_SIGN_B, GPIO_FN_AUDATA1, GPIO_FN_RX5_C, | 123 | GPIO_FN_DRACK0, GPIO_FN_GPS_SIGN_B, GPIO_FN_AUDATA1, |
126 | GPIO_FN_DU0_DR2, GPIO_FN_LCDOUT2, GPIO_FN_DU0_DR3, GPIO_FN_LCDOUT3, | 124 | GPIO_FN_LCDOUT2, GPIO_FN_LCDOUT3, |
127 | GPIO_FN_DU0_DR4, GPIO_FN_LCDOUT4, GPIO_FN_DU0_DR5, GPIO_FN_LCDOUT5, | 125 | GPIO_FN_LCDOUT4, GPIO_FN_LCDOUT5, |
128 | GPIO_FN_DU0_DR6, GPIO_FN_LCDOUT6, GPIO_FN_DU0_DR7, GPIO_FN_LCDOUT7, | 126 | GPIO_FN_LCDOUT6, GPIO_FN_LCDOUT7, |
129 | GPIO_FN_DU0_DG0, GPIO_FN_LCDOUT8, GPIO_FN_DREQ1, GPIO_FN_SCL2, | 127 | GPIO_FN_LCDOUT8, GPIO_FN_DREQ1, GPIO_FN_SCL2, |
130 | GPIO_FN_AUDATA2, | 128 | GPIO_FN_AUDATA2, |
131 | 129 | ||
132 | /* IPSR3 */ | 130 | /* IPSR3 */ |
133 | GPIO_FN_DU0_DG1, GPIO_FN_LCDOUT9, GPIO_FN_DACK1, GPIO_FN_SDA2, | 131 | GPIO_FN_LCDOUT9, GPIO_FN_DACK1, GPIO_FN_SDA2, |
134 | GPIO_FN_AUDATA3, GPIO_FN_DU0_DG2, GPIO_FN_LCDOUT10, GPIO_FN_DU0_DG3, | 132 | GPIO_FN_AUDATA3, GPIO_FN_LCDOUT10, |
135 | GPIO_FN_LCDOUT11, GPIO_FN_DU0_DG4, GPIO_FN_LCDOUT12, GPIO_FN_DU0_DG5, | 133 | GPIO_FN_LCDOUT11, GPIO_FN_LCDOUT12, |
136 | GPIO_FN_LCDOUT13, GPIO_FN_DU0_DG6, GPIO_FN_LCDOUT14, GPIO_FN_DU0_DG7, | 134 | GPIO_FN_LCDOUT13, GPIO_FN_LCDOUT14, |
137 | GPIO_FN_LCDOUT15, GPIO_FN_DU0_DB0, GPIO_FN_LCDOUT16, GPIO_FN_EX_WAIT1, | 135 | GPIO_FN_LCDOUT15, GPIO_FN_LCDOUT16, GPIO_FN_EX_WAIT1, |
138 | GPIO_FN_SCL1, GPIO_FN_TCLK1, GPIO_FN_AUDATA4, GPIO_FN_DU0_DB1, | 136 | GPIO_FN_SCL1, GPIO_FN_TCLK1, GPIO_FN_AUDATA4, |
139 | GPIO_FN_LCDOUT17, GPIO_FN_EX_WAIT2, GPIO_FN_SDA1, GPIO_FN_GPS_MAG_B, | 137 | GPIO_FN_LCDOUT17, GPIO_FN_EX_WAIT2, GPIO_FN_SDA1, GPIO_FN_GPS_MAG_B, |
140 | GPIO_FN_AUDATA5, GPIO_FN_SCK5_C, GPIO_FN_DU0_DB2, GPIO_FN_LCDOUT18, | 138 | GPIO_FN_AUDATA5, GPIO_FN_LCDOUT18, |
141 | GPIO_FN_DU0_DB3, GPIO_FN_LCDOUT19, GPIO_FN_DU0_DB4, GPIO_FN_LCDOUT20, | 139 | GPIO_FN_LCDOUT19, GPIO_FN_LCDOUT20, |
142 | GPIO_FN_DU0_DB5, GPIO_FN_LCDOUT21, GPIO_FN_DU0_DB6, GPIO_FN_LCDOUT22, | 140 | GPIO_FN_LCDOUT21, GPIO_FN_LCDOUT22, |
143 | GPIO_FN_DU0_DB7, GPIO_FN_LCDOUT23, GPIO_FN_DU0_DOTCLKIN, | 141 | GPIO_FN_LCDOUT23, |
144 | GPIO_FN_QSTVA_QVS, GPIO_FN_TX3_D_IRDA_TX_D, GPIO_FN_SCL3_B, | 142 | GPIO_FN_QSTVA_QVS, GPIO_FN_SCL3_B, |
145 | GPIO_FN_DU0_DOTCLKOUT0, GPIO_FN_QCLK, GPIO_FN_DU0_DOTCLKOUT1, | 143 | GPIO_FN_QCLK, |
146 | GPIO_FN_QSTVB_QVE, GPIO_FN_RX3_D_IRDA_RX_D, GPIO_FN_SDA3_B, | 144 | GPIO_FN_QSTVB_QVE, GPIO_FN_SDA3_B, |
147 | GPIO_FN_SDA2_C, GPIO_FN_DACK0_B, GPIO_FN_DRACK0_B, | 145 | GPIO_FN_SDA2_C, GPIO_FN_DACK0_B, GPIO_FN_DRACK0_B, |
148 | GPIO_FN_DU0_EXHSYNC_DU0_HSYNC, GPIO_FN_QSTH_QHS, | 146 | GPIO_FN_QSTH_QHS, |
149 | GPIO_FN_DU0_EXVSYNC_DU0_VSYNC, GPIO_FN_QSTB_QHE, | 147 | GPIO_FN_QSTB_QHE, |
150 | GPIO_FN_DU0_EXODDF_DU0_ODDF_DISP_CDE, GPIO_FN_QCPV_QDE, | 148 | GPIO_FN_QCPV_QDE, |
151 | GPIO_FN_CAN1_TX, GPIO_FN_TX2_C, GPIO_FN_SCL2_C, GPIO_FN_REMOCON, | 149 | GPIO_FN_CAN1_TX, GPIO_FN_SCL2_C, GPIO_FN_REMOCON, |
152 | 150 | ||
153 | /* IPSR4 */ | 151 | /* IPSR4 */ |
154 | GPIO_FN_DU0_DISP, GPIO_FN_QPOLA, GPIO_FN_CAN_CLK_C, GPIO_FN_SCK2_C, | 152 | GPIO_FN_QPOLA, GPIO_FN_CAN_CLK_C, |
155 | GPIO_FN_DU0_CDE, GPIO_FN_QPOLB, GPIO_FN_CAN1_RX, GPIO_FN_RX2_C, | 153 | GPIO_FN_QPOLB, GPIO_FN_CAN1_RX, |
156 | GPIO_FN_DREQ0_B, GPIO_FN_SSI_SCK78_B, GPIO_FN_SCK0_B, GPIO_FN_DU1_DR0, | 154 | GPIO_FN_DREQ0_B, GPIO_FN_SSI_SCK78_B, |
157 | GPIO_FN_VI2_DATA0_VI2_B0, GPIO_FN_PWM6, GPIO_FN_SD3_CLK, | 155 | GPIO_FN_VI2_DATA0_VI2_B0, GPIO_FN_PWM6, |
158 | GPIO_FN_TX3_E_IRDA_TX_E, GPIO_FN_AUDCK, GPIO_FN_PWMFSW0_B, | 156 | GPIO_FN_AUDCK, GPIO_FN_PWMFSW0_B, |
159 | GPIO_FN_DU1_DR1, GPIO_FN_VI2_DATA1_VI2_B1, GPIO_FN_PWM0, | 157 | GPIO_FN_VI2_DATA1_VI2_B1, GPIO_FN_PWM0, |
160 | GPIO_FN_SD3_CMD, GPIO_FN_RX3_E_IRDA_RX_E, GPIO_FN_AUDSYNC, | 158 | GPIO_FN_AUDSYNC, |
161 | GPIO_FN_CTS0_D, GPIO_FN_DU1_DR2, GPIO_FN_VI2_G0, GPIO_FN_DU1_DR3, | 159 | GPIO_FN_VI2_G0, |
162 | GPIO_FN_VI2_G1, GPIO_FN_DU1_DR4, GPIO_FN_VI2_G2, GPIO_FN_DU1_DR5, | 160 | GPIO_FN_VI2_G1, GPIO_FN_VI2_G2, |
163 | GPIO_FN_VI2_G3, GPIO_FN_DU1_DR6, GPIO_FN_VI2_G4, GPIO_FN_DU1_DR7, | 161 | GPIO_FN_VI2_G3, GPIO_FN_VI2_G4, |
164 | GPIO_FN_VI2_G5, GPIO_FN_DU1_DG0, GPIO_FN_VI2_DATA2_VI2_B2, | 162 | GPIO_FN_VI2_G5, GPIO_FN_VI2_DATA2_VI2_B2, |
165 | GPIO_FN_SCL1_B, GPIO_FN_SD3_DAT2, GPIO_FN_SCK3_E, GPIO_FN_AUDATA6, | 163 | GPIO_FN_SCL1_B, GPIO_FN_AUDATA6, |
166 | GPIO_FN_TX0_D, GPIO_FN_DU1_DG1, GPIO_FN_VI2_DATA3_VI2_B3, | 164 | GPIO_FN_VI2_DATA3_VI2_B3, |
167 | GPIO_FN_SDA1_B, GPIO_FN_SD3_DAT3, GPIO_FN_SCK5, GPIO_FN_AUDATA7, | 165 | GPIO_FN_SDA1_B, GPIO_FN_AUDATA7, |
168 | GPIO_FN_RX0_D, GPIO_FN_DU1_DG2, GPIO_FN_VI2_G6, GPIO_FN_DU1_DG3, | 166 | GPIO_FN_VI2_G6, |
169 | GPIO_FN_VI2_G7, GPIO_FN_DU1_DG4, GPIO_FN_VI2_R0, GPIO_FN_DU1_DG5, | 167 | GPIO_FN_VI2_G7, GPIO_FN_VI2_R0, |
170 | GPIO_FN_VI2_R1, GPIO_FN_DU1_DG6, GPIO_FN_VI2_R2, GPIO_FN_DU1_DG7, | 168 | GPIO_FN_VI2_R1, GPIO_FN_VI2_R2, |
171 | GPIO_FN_VI2_R3, GPIO_FN_DU1_DB0, GPIO_FN_VI2_DATA4_VI2_B4, | 169 | GPIO_FN_VI2_R3, GPIO_FN_VI2_DATA4_VI2_B4, |
172 | GPIO_FN_SCL2_B, GPIO_FN_SD3_DAT0, GPIO_FN_TX5, GPIO_FN_SCK0_D, | 170 | GPIO_FN_SCL2_B, |
173 | 171 | ||
174 | /* IPSR5 */ | 172 | /* IPSR5 */ |
175 | GPIO_FN_DU1_DB1, GPIO_FN_VI2_DATA5_VI2_B5, GPIO_FN_SDA2_B, | 173 | GPIO_FN_VI2_DATA5_VI2_B5, GPIO_FN_SDA2_B, |
176 | GPIO_FN_SD3_DAT1, GPIO_FN_RX5, GPIO_FN_RTS0_D_TANS_D, | 174 | GPIO_FN_VI2_R4, GPIO_FN_VI2_R5, |
177 | GPIO_FN_DU1_DB2, GPIO_FN_VI2_R4, GPIO_FN_DU1_DB3, GPIO_FN_VI2_R5, | 175 | GPIO_FN_VI2_R6, GPIO_FN_VI2_R7, |
178 | GPIO_FN_DU1_DB4, GPIO_FN_VI2_R6, GPIO_FN_DU1_DB5, GPIO_FN_VI2_R7, | 176 | GPIO_FN_SCL2_D, GPIO_FN_SDA2_D, |
179 | GPIO_FN_DU1_DB6, GPIO_FN_SCL2_D, GPIO_FN_DU1_DB7, GPIO_FN_SDA2_D, | 177 | GPIO_FN_VI2_CLKENB, |
180 | GPIO_FN_DU1_DOTCLKIN, GPIO_FN_VI2_CLKENB, GPIO_FN_HSPI_CS1, | 178 | GPIO_FN_SCL1_D, GPIO_FN_VI2_FIELD, |
181 | GPIO_FN_SCL1_D, GPIO_FN_DU1_DOTCLKOUT, GPIO_FN_VI2_FIELD, | 179 | GPIO_FN_SDA1_D, GPIO_FN_VI2_HSYNC, |
182 | GPIO_FN_SDA1_D, GPIO_FN_DU1_EXHSYNC_DU1_HSYNC, GPIO_FN_VI2_HSYNC, | 180 | GPIO_FN_VI3_HSYNC, GPIO_FN_VI2_VSYNC, |
183 | GPIO_FN_VI3_HSYNC, GPIO_FN_DU1_EXVSYNC_DU1_VSYNC, GPIO_FN_VI2_VSYNC, | 181 | GPIO_FN_VI3_VSYNC, |
184 | GPIO_FN_VI3_VSYNC, GPIO_FN_DU1_EXODDF_DU1_ODDF_DISP_CDE, | 182 | GPIO_FN_VI2_CLK, |
185 | GPIO_FN_VI2_CLK, GPIO_FN_TX3_B_IRDA_TX_B, GPIO_FN_SD3_CD, | 183 | GPIO_FN_VI1_CLKENB, GPIO_FN_VI3_CLKENB, |
186 | GPIO_FN_HSPI_TX1, GPIO_FN_VI1_CLKENB, GPIO_FN_VI3_CLKENB, | 184 | GPIO_FN_AUDIO_CLKC, GPIO_FN_SPEEDIN, |
187 | GPIO_FN_AUDIO_CLKC, GPIO_FN_TX2_D, GPIO_FN_SPEEDIN, | 185 | GPIO_FN_GPS_SIGN_D, GPIO_FN_VI2_DATA6_VI2_B6, |
188 | GPIO_FN_GPS_SIGN_D, GPIO_FN_DU1_DISP, GPIO_FN_VI2_DATA6_VI2_B6, | 186 | GPIO_FN_TCLK0, GPIO_FN_QSTVA_B_QVS_B, |
189 | GPIO_FN_TCLK0, GPIO_FN_QSTVA_B_QVS_B, GPIO_FN_HSPI_CLK1, | 187 | GPIO_FN_AUDIO_CLKOUT_B, GPIO_FN_GPS_MAG_D, |
190 | GPIO_FN_SCK2_D, GPIO_FN_AUDIO_CLKOUT_B, GPIO_FN_GPS_MAG_D, | 188 | GPIO_FN_VI2_DATA7_VI2_B7, |
191 | GPIO_FN_DU1_CDE, GPIO_FN_VI2_DATA7_VI2_B7, GPIO_FN_RX3_B_IRDA_RX_B, | 189 | GPIO_FN_VI1_FIELD, GPIO_FN_VI3_FIELD, |
192 | GPIO_FN_SD3_WP, GPIO_FN_HSPI_RX1, GPIO_FN_VI1_FIELD, GPIO_FN_VI3_FIELD, | 190 | GPIO_FN_AUDIO_CLKOUT, GPIO_FN_GPS_CLK_C, |
193 | GPIO_FN_AUDIO_CLKOUT, GPIO_FN_RX2_D, GPIO_FN_GPS_CLK_C, | ||
194 | GPIO_FN_GPS_CLK_D, GPIO_FN_AUDIO_CLKA, GPIO_FN_CAN_TXCLK, | 191 | GPIO_FN_GPS_CLK_D, GPIO_FN_AUDIO_CLKA, GPIO_FN_CAN_TXCLK, |
195 | GPIO_FN_AUDIO_CLKB, GPIO_FN_USB_OVC2, GPIO_FN_CAN_DEBUGOUT0, | 192 | GPIO_FN_AUDIO_CLKB, GPIO_FN_CAN_DEBUGOUT0, |
196 | GPIO_FN_MOUT0, | 193 | GPIO_FN_MOUT0, |
197 | 194 | ||
198 | /* IPSR6 */ | 195 | /* IPSR6 */ |
@@ -208,85 +205,84 @@ enum { | |||
208 | GPIO_FN_CAN_CLK_B, GPIO_FN_IECLK, GPIO_FN_SCIF_CLK_B, GPIO_FN_TCLK0_B, | 205 | GPIO_FN_CAN_CLK_B, GPIO_FN_IECLK, GPIO_FN_SCIF_CLK_B, GPIO_FN_TCLK0_B, |
209 | GPIO_FN_SSI_SDATA4, GPIO_FN_CAN_DEBUGOUT9, GPIO_FN_SSI_SDATA9_C, | 206 | GPIO_FN_SSI_SDATA4, GPIO_FN_CAN_DEBUGOUT9, GPIO_FN_SSI_SDATA9_C, |
210 | GPIO_FN_SSI_SCK5, GPIO_FN_ADICLK, GPIO_FN_CAN_DEBUGOUT10, | 207 | GPIO_FN_SSI_SCK5, GPIO_FN_ADICLK, GPIO_FN_CAN_DEBUGOUT10, |
211 | GPIO_FN_SCK3, GPIO_FN_TCLK0_D, GPIO_FN_SSI_WS5, GPIO_FN_ADICS_SAMP, | 208 | GPIO_FN_TCLK0_D, GPIO_FN_SSI_WS5, GPIO_FN_ADICS_SAMP, |
212 | GPIO_FN_CAN_DEBUGOUT11, GPIO_FN_TX3_IRDA_TX, GPIO_FN_SSI_SDATA5, | 209 | GPIO_FN_CAN_DEBUGOUT11, GPIO_FN_SSI_SDATA5, |
213 | GPIO_FN_ADIDATA, GPIO_FN_CAN_DEBUGOUT12, GPIO_FN_RX3_IRDA_RX, | 210 | GPIO_FN_ADIDATA, GPIO_FN_CAN_DEBUGOUT12, |
214 | GPIO_FN_SSI_SCK6, GPIO_FN_ADICHS0, GPIO_FN_CAN0_TX, GPIO_FN_IERX_B, | 211 | GPIO_FN_SSI_SCK6, GPIO_FN_ADICHS0, GPIO_FN_CAN0_TX, GPIO_FN_IERX_B, |
215 | 212 | ||
216 | /* IPSR7 */ | 213 | /* IPSR7 */ |
217 | GPIO_FN_SSI_WS6, GPIO_FN_ADICHS1, GPIO_FN_CAN0_RX, GPIO_FN_IETX_B, | 214 | GPIO_FN_SSI_WS6, GPIO_FN_ADICHS1, GPIO_FN_CAN0_RX, GPIO_FN_IETX_B, |
218 | GPIO_FN_SSI_SDATA6, GPIO_FN_ADICHS2, GPIO_FN_CAN_CLK, GPIO_FN_IECLK_B, | 215 | GPIO_FN_SSI_SDATA6, GPIO_FN_ADICHS2, GPIO_FN_CAN_CLK, GPIO_FN_IECLK_B, |
219 | GPIO_FN_SSI_SCK78, GPIO_FN_CAN_DEBUGOUT13, GPIO_FN_IRQ0_B, | 216 | GPIO_FN_SSI_SCK78, GPIO_FN_CAN_DEBUGOUT13, |
220 | GPIO_FN_SSI_SCK9_B, GPIO_FN_HSPI_CLK1_C, GPIO_FN_SSI_WS78, | 217 | GPIO_FN_SSI_SCK9_B, GPIO_FN_SSI_WS78, |
221 | GPIO_FN_CAN_DEBUGOUT14, GPIO_FN_IRQ1_B, GPIO_FN_SSI_WS9_B, | 218 | GPIO_FN_CAN_DEBUGOUT14, GPIO_FN_SSI_WS9_B, |
222 | GPIO_FN_HSPI_CS1_C, GPIO_FN_SSI_SDATA7, GPIO_FN_CAN_DEBUGOUT15, | 219 | GPIO_FN_SSI_SDATA7, GPIO_FN_CAN_DEBUGOUT15, |
223 | GPIO_FN_IRQ2_B, GPIO_FN_TCLK1_C, GPIO_FN_HSPI_TX1_C, | 220 | GPIO_FN_TCLK1_C, |
224 | GPIO_FN_SSI_SDATA8, GPIO_FN_VSP, GPIO_FN_IRQ3_B, GPIO_FN_HSPI_RX1_C, | 221 | GPIO_FN_SSI_SDATA8, GPIO_FN_VSP, |
225 | GPIO_FN_SD0_CLK, GPIO_FN_ATACS01, GPIO_FN_SCK1_B, GPIO_FN_SD0_CMD, | 222 | GPIO_FN_ATACS01, |
226 | GPIO_FN_ATACS11, GPIO_FN_TX1_B, GPIO_FN_CC5_TDO, GPIO_FN_SD0_DAT0, | 223 | GPIO_FN_ATACS11, GPIO_FN_CC5_TDO, |
227 | GPIO_FN_ATADIR1, GPIO_FN_RX1_B, GPIO_FN_CC5_TRST, GPIO_FN_SD0_DAT1, | 224 | GPIO_FN_ATADIR1, GPIO_FN_CC5_TRST, |
228 | GPIO_FN_ATAG1, GPIO_FN_SCK2_B, GPIO_FN_CC5_TMS, GPIO_FN_SD0_DAT2, | 225 | GPIO_FN_ATAG1, GPIO_FN_CC5_TMS, |
229 | GPIO_FN_ATARD1, GPIO_FN_TX2_B, GPIO_FN_CC5_TCK, GPIO_FN_SD0_DAT3, | 226 | GPIO_FN_ATARD1, GPIO_FN_CC5_TCK, |
230 | GPIO_FN_ATAWR1, GPIO_FN_RX2_B, GPIO_FN_CC5_TDI, GPIO_FN_SD0_CD, | 227 | GPIO_FN_ATAWR1, GPIO_FN_CC5_TDI, |
231 | GPIO_FN_DREQ2, GPIO_FN_RTS1_B_TANS_B, GPIO_FN_SD0_WP, GPIO_FN_DACK2, | 228 | GPIO_FN_DREQ2, GPIO_FN_DACK2, |
232 | GPIO_FN_CTS1_B, | ||
233 | 229 | ||
234 | /* IPSR8 */ | 230 | /* IPSR8 */ |
235 | GPIO_FN_HSPI_CLK0, GPIO_FN_CTS0, GPIO_FN_USB_OVC0, GPIO_FN_AD_CLK, | 231 | GPIO_FN_AD_CLK, |
236 | GPIO_FN_CC5_STATE4, GPIO_FN_CC5_STATE12, GPIO_FN_CC5_STATE20, | 232 | GPIO_FN_CC5_STATE4, GPIO_FN_CC5_STATE12, GPIO_FN_CC5_STATE20, |
237 | GPIO_FN_CC5_STATE28, GPIO_FN_CC5_STATE36, GPIO_FN_HSPI_CS0, | 233 | GPIO_FN_CC5_STATE28, GPIO_FN_CC5_STATE36, |
238 | GPIO_FN_RTS0_TANS, GPIO_FN_USB_OVC1, GPIO_FN_AD_DI, | 234 | GPIO_FN_AD_DI, |
239 | GPIO_FN_CC5_STATE5, GPIO_FN_CC5_STATE13, GPIO_FN_CC5_STATE21, | 235 | GPIO_FN_CC5_STATE5, GPIO_FN_CC5_STATE13, GPIO_FN_CC5_STATE21, |
240 | GPIO_FN_CC5_STATE29, GPIO_FN_CC5_STATE37, GPIO_FN_HSPI_TX0, | 236 | GPIO_FN_CC5_STATE29, GPIO_FN_CC5_STATE37, |
241 | GPIO_FN_TX0, GPIO_FN_CAN_DEBUG_HW_TRIGGER, GPIO_FN_AD_DO, | 237 | GPIO_FN_CAN_DEBUG_HW_TRIGGER, GPIO_FN_AD_DO, |
242 | GPIO_FN_CC5_STATE6, GPIO_FN_CC5_STATE14, GPIO_FN_CC5_STATE22, | 238 | GPIO_FN_CC5_STATE6, GPIO_FN_CC5_STATE14, GPIO_FN_CC5_STATE22, |
243 | GPIO_FN_CC5_STATE30, GPIO_FN_CC5_STATE38, GPIO_FN_HSPI_RX0, | 239 | GPIO_FN_CC5_STATE30, GPIO_FN_CC5_STATE38, |
244 | GPIO_FN_RX0, GPIO_FN_CAN_STEP0, GPIO_FN_AD_NCS, GPIO_FN_CC5_STATE7, | 240 | GPIO_FN_CAN_STEP0, GPIO_FN_AD_NCS, GPIO_FN_CC5_STATE7, |
245 | GPIO_FN_CC5_STATE15, GPIO_FN_CC5_STATE23, GPIO_FN_CC5_STATE31, | 241 | GPIO_FN_CC5_STATE15, GPIO_FN_CC5_STATE23, GPIO_FN_CC5_STATE31, |
246 | GPIO_FN_CC5_STATE39, GPIO_FN_FMCLK, GPIO_FN_RDS_CLK, GPIO_FN_PCMOE, | 242 | GPIO_FN_CC5_STATE39, GPIO_FN_FMCLK, GPIO_FN_RDS_CLK, GPIO_FN_PCMOE, |
247 | GPIO_FN_BPFCLK, GPIO_FN_PCMWE, GPIO_FN_FMIN, GPIO_FN_RDS_DATA, | 243 | GPIO_FN_BPFCLK, GPIO_FN_PCMWE, GPIO_FN_FMIN, GPIO_FN_RDS_DATA, |
248 | GPIO_FN_VI0_CLK, GPIO_FN_MMC1_CLK, GPIO_FN_VI0_CLKENB, GPIO_FN_TX1_C, | 244 | GPIO_FN_VI0_CLK, GPIO_FN_VI0_CLKENB, |
249 | GPIO_FN_HTX1_B, GPIO_FN_MT1_SYNC, GPIO_FN_VI0_FIELD, GPIO_FN_RX1_C, | 245 | GPIO_FN_HTX1_B, GPIO_FN_MT1_SYNC, GPIO_FN_VI0_FIELD, |
250 | GPIO_FN_HRX1_B, GPIO_FN_VI0_HSYNC, GPIO_FN_VI0_DATA0_B_VI0_B0_B, | 246 | GPIO_FN_HRX1_B, GPIO_FN_VI0_HSYNC, GPIO_FN_VI0_DATA0_B_VI0_B0_B, |
251 | GPIO_FN_CTS1_C, GPIO_FN_TX4_D, GPIO_FN_MMC1_CMD, GPIO_FN_HSCK1_B, | 247 | GPIO_FN_HSCK1_B, |
252 | GPIO_FN_VI0_VSYNC, GPIO_FN_VI0_DATA1_B_VI0_B1_B, | 248 | GPIO_FN_VI0_VSYNC, GPIO_FN_VI0_DATA1_B_VI0_B1_B, |
253 | GPIO_FN_RTS1_C_TANS_C, GPIO_FN_RX4_D, GPIO_FN_PWMFSW0_C, | 249 | GPIO_FN_PWMFSW0_C, |
254 | 250 | ||
255 | /* IPSR9 */ | 251 | /* IPSR9 */ |
256 | GPIO_FN_VI0_DATA0_VI0_B0, GPIO_FN_HRTS1_B, GPIO_FN_MT1_VCXO, | 252 | GPIO_FN_VI0_DATA0_VI0_B0, GPIO_FN_HRTS1_B, GPIO_FN_MT1_VCXO, |
257 | GPIO_FN_VI0_DATA1_VI0_B1, GPIO_FN_HCTS1_B, GPIO_FN_MT1_PWM, | 253 | GPIO_FN_VI0_DATA1_VI0_B1, GPIO_FN_HCTS1_B, GPIO_FN_MT1_PWM, |
258 | GPIO_FN_VI0_DATA2_VI0_B2, GPIO_FN_MMC1_D0, GPIO_FN_VI0_DATA3_VI0_B3, | 254 | GPIO_FN_VI0_DATA2_VI0_B2, GPIO_FN_VI0_DATA3_VI0_B3, |
259 | GPIO_FN_MMC1_D1, GPIO_FN_VI0_DATA4_VI0_B4, GPIO_FN_MMC1_D2, | 255 | GPIO_FN_VI0_DATA4_VI0_B4, |
260 | GPIO_FN_VI0_DATA5_VI0_B5, GPIO_FN_MMC1_D3, GPIO_FN_VI0_DATA6_VI0_B6, | 256 | GPIO_FN_VI0_DATA5_VI0_B5, GPIO_FN_VI0_DATA6_VI0_B6, |
261 | GPIO_FN_MMC1_D4, GPIO_FN_ARM_TRACEDATA_0, GPIO_FN_VI0_DATA7_VI0_B7, | 257 | GPIO_FN_ARM_TRACEDATA_0, GPIO_FN_VI0_DATA7_VI0_B7, |
262 | GPIO_FN_MMC1_D5, GPIO_FN_ARM_TRACEDATA_1, GPIO_FN_VI0_G0, | 258 | GPIO_FN_ARM_TRACEDATA_1, GPIO_FN_VI0_G0, |
263 | GPIO_FN_SSI_SCK78_C, GPIO_FN_IRQ0, GPIO_FN_ARM_TRACEDATA_2, | 259 | GPIO_FN_SSI_SCK78_C, GPIO_FN_ARM_TRACEDATA_2, |
264 | GPIO_FN_VI0_G1, GPIO_FN_SSI_WS78_C, GPIO_FN_IRQ1, | 260 | GPIO_FN_VI0_G1, GPIO_FN_SSI_WS78_C, |
265 | GPIO_FN_ARM_TRACEDATA_3, GPIO_FN_VI0_G2, GPIO_FN_ETH_TXD1, | 261 | GPIO_FN_ARM_TRACEDATA_3, GPIO_FN_VI0_G2, GPIO_FN_ETH_TXD1, |
266 | GPIO_FN_MMC1_D6, GPIO_FN_ARM_TRACEDATA_4, GPIO_FN_TS_SPSYNC0, | 262 | GPIO_FN_ARM_TRACEDATA_4, GPIO_FN_TS_SPSYNC0, |
267 | GPIO_FN_VI0_G3, GPIO_FN_ETH_CRS_DV, GPIO_FN_MMC1_D7, | 263 | GPIO_FN_VI0_G3, GPIO_FN_ETH_CRS_DV, |
268 | GPIO_FN_ARM_TRACEDATA_5, GPIO_FN_TS_SDAT0, GPIO_FN_VI0_G4, | 264 | GPIO_FN_ARM_TRACEDATA_5, GPIO_FN_TS_SDAT0, GPIO_FN_VI0_G4, |
269 | GPIO_FN_ETH_TX_EN, GPIO_FN_SD2_DAT0_B, GPIO_FN_ARM_TRACEDATA_6, | 265 | GPIO_FN_ETH_TX_EN, GPIO_FN_ARM_TRACEDATA_6, |
270 | GPIO_FN_VI0_G5, GPIO_FN_ETH_RX_ER, GPIO_FN_SD2_DAT1_B, | 266 | GPIO_FN_VI0_G5, GPIO_FN_ETH_RX_ER, |
271 | GPIO_FN_ARM_TRACEDATA_7, GPIO_FN_VI0_G6, GPIO_FN_ETH_RXD0, | 267 | GPIO_FN_ARM_TRACEDATA_7, GPIO_FN_VI0_G6, GPIO_FN_ETH_RXD0, |
272 | GPIO_FN_SD2_DAT2_B, GPIO_FN_ARM_TRACEDATA_8, GPIO_FN_VI0_G7, | 268 | GPIO_FN_ARM_TRACEDATA_8, GPIO_FN_VI0_G7, |
273 | GPIO_FN_ETH_RXD1, GPIO_FN_SD2_DAT3_B, GPIO_FN_ARM_TRACEDATA_9, | 269 | GPIO_FN_ETH_RXD1, GPIO_FN_ARM_TRACEDATA_9, |
274 | 270 | ||
275 | /* IPSR10 */ | 271 | /* IPSR10 */ |
276 | GPIO_FN_VI0_R0, GPIO_FN_SSI_SDATA7_C, GPIO_FN_SCK1_C, GPIO_FN_DREQ1_B, | 272 | GPIO_FN_VI0_R0, GPIO_FN_SSI_SDATA7_C, GPIO_FN_DREQ1_B, |
277 | GPIO_FN_ARM_TRACEDATA_10, GPIO_FN_DREQ0_C, GPIO_FN_VI0_R1, | 273 | GPIO_FN_ARM_TRACEDATA_10, GPIO_FN_DREQ0_C, GPIO_FN_VI0_R1, |
278 | GPIO_FN_SSI_SDATA8_C, GPIO_FN_DACK1_B, GPIO_FN_ARM_TRACEDATA_11, | 274 | GPIO_FN_SSI_SDATA8_C, GPIO_FN_DACK1_B, GPIO_FN_ARM_TRACEDATA_11, |
279 | GPIO_FN_DACK0_C, GPIO_FN_DRACK0_C, GPIO_FN_VI0_R2, GPIO_FN_ETH_LINK, | 275 | GPIO_FN_DACK0_C, GPIO_FN_DRACK0_C, GPIO_FN_VI0_R2, GPIO_FN_ETH_LINK, |
280 | GPIO_FN_SD2_CLK_B, GPIO_FN_IRQ2, GPIO_FN_ARM_TRACEDATA_12, | 276 | GPIO_FN_ARM_TRACEDATA_12, |
281 | GPIO_FN_VI0_R3, GPIO_FN_ETH_MAGIC, GPIO_FN_SD2_CMD_B, GPIO_FN_IRQ3, | 277 | GPIO_FN_VI0_R3, GPIO_FN_ETH_MAGIC, |
282 | GPIO_FN_ARM_TRACEDATA_13, GPIO_FN_VI0_R4, GPIO_FN_ETH_REFCLK, | 278 | GPIO_FN_ARM_TRACEDATA_13, GPIO_FN_VI0_R4, GPIO_FN_ETH_REFCLK, |
283 | GPIO_FN_SD2_CD_B, GPIO_FN_HSPI_CLK1_B, GPIO_FN_ARM_TRACEDATA_14, | 279 | GPIO_FN_ARM_TRACEDATA_14, |
284 | GPIO_FN_MT1_CLK, GPIO_FN_TS_SCK0, GPIO_FN_VI0_R5, GPIO_FN_ETH_TXD0, | 280 | GPIO_FN_MT1_CLK, GPIO_FN_TS_SCK0, GPIO_FN_VI0_R5, GPIO_FN_ETH_TXD0, |
285 | GPIO_FN_SD2_WP_B, GPIO_FN_HSPI_CS1_B, GPIO_FN_ARM_TRACEDATA_15, | 281 | GPIO_FN_ARM_TRACEDATA_15, |
286 | GPIO_FN_MT1_D, GPIO_FN_TS_SDEN0, GPIO_FN_VI0_R6, GPIO_FN_ETH_MDC, | 282 | GPIO_FN_MT1_D, GPIO_FN_TS_SDEN0, GPIO_FN_VI0_R6, GPIO_FN_ETH_MDC, |
287 | GPIO_FN_DREQ2_C, GPIO_FN_HSPI_TX1_B, GPIO_FN_TRACECLK, | 283 | GPIO_FN_DREQ2_C, GPIO_FN_TRACECLK, |
288 | GPIO_FN_MT1_BEN, GPIO_FN_PWMFSW0_D, GPIO_FN_VI0_R7, GPIO_FN_ETH_MDIO, | 284 | GPIO_FN_MT1_BEN, GPIO_FN_PWMFSW0_D, GPIO_FN_VI0_R7, GPIO_FN_ETH_MDIO, |
289 | GPIO_FN_DACK2_C, GPIO_FN_HSPI_RX1_B, GPIO_FN_SCIF_CLK_D, | 285 | GPIO_FN_DACK2_C, GPIO_FN_SCIF_CLK_D, |
290 | GPIO_FN_TRACECTL, GPIO_FN_MT1_PEN, GPIO_FN_VI1_CLK, GPIO_FN_SIM_D, | 286 | GPIO_FN_TRACECTL, GPIO_FN_MT1_PEN, GPIO_FN_VI1_CLK, GPIO_FN_SIM_D, |
291 | GPIO_FN_SDA3, GPIO_FN_VI1_HSYNC, GPIO_FN_VI3_CLK, GPIO_FN_SSI_SCK4, | 287 | GPIO_FN_SDA3, GPIO_FN_VI1_HSYNC, GPIO_FN_VI3_CLK, GPIO_FN_SSI_SCK4, |
292 | GPIO_FN_GPS_SIGN_C, GPIO_FN_PWMFSW0_E, GPIO_FN_VI1_VSYNC, | 288 | GPIO_FN_GPS_SIGN_C, GPIO_FN_PWMFSW0_E, GPIO_FN_VI1_VSYNC, |
@@ -294,35 +290,35 @@ enum { | |||
294 | GPIO_FN_GPS_MAG_C, GPIO_FN_SPV_TRST, GPIO_FN_SCL3, | 290 | GPIO_FN_GPS_MAG_C, GPIO_FN_SPV_TRST, GPIO_FN_SCL3, |
295 | 291 | ||
296 | /* IPSR11 */ | 292 | /* IPSR11 */ |
297 | GPIO_FN_VI1_DATA0_VI1_B0, GPIO_FN_SD2_DAT0, GPIO_FN_SIM_RST, | 293 | GPIO_FN_VI1_DATA0_VI1_B0, GPIO_FN_SIM_RST, |
298 | GPIO_FN_SPV_TCK, GPIO_FN_ADICLK_B, GPIO_FN_VI1_DATA1_VI1_B1, | 294 | GPIO_FN_SPV_TCK, GPIO_FN_ADICLK_B, GPIO_FN_VI1_DATA1_VI1_B1, |
299 | GPIO_FN_SD2_DAT1, GPIO_FN_MT0_CLK, GPIO_FN_SPV_TMS, | 295 | GPIO_FN_MT0_CLK, GPIO_FN_SPV_TMS, |
300 | GPIO_FN_ADICS_B_SAMP_B, GPIO_FN_VI1_DATA2_VI1_B2, GPIO_FN_SD2_DAT2, | 296 | GPIO_FN_ADICS_B_SAMP_B, GPIO_FN_VI1_DATA2_VI1_B2, |
301 | GPIO_FN_MT0_D, GPIO_FN_SPVTDI, GPIO_FN_ADIDATA_B, | 297 | GPIO_FN_MT0_D, GPIO_FN_SPVTDI, GPIO_FN_ADIDATA_B, |
302 | GPIO_FN_VI1_DATA3_VI1_B3, GPIO_FN_SD2_DAT3, GPIO_FN_MT0_BEN, | 298 | GPIO_FN_VI1_DATA3_VI1_B3, GPIO_FN_MT0_BEN, |
303 | GPIO_FN_SPV_TDO, GPIO_FN_ADICHS0_B, GPIO_FN_VI1_DATA4_VI1_B4, | 299 | GPIO_FN_SPV_TDO, GPIO_FN_ADICHS0_B, GPIO_FN_VI1_DATA4_VI1_B4, |
304 | GPIO_FN_SD2_CLK, GPIO_FN_MT0_PEN, GPIO_FN_SPA_TRST, | 300 | GPIO_FN_MT0_PEN, GPIO_FN_SPA_TRST, |
305 | GPIO_FN_HSPI_CLK1_D, GPIO_FN_ADICHS1_B, GPIO_FN_VI1_DATA5_VI1_B5, | 301 | GPIO_FN_ADICHS1_B, GPIO_FN_VI1_DATA5_VI1_B5, |
306 | GPIO_FN_SD2_CMD, GPIO_FN_MT0_SYNC, GPIO_FN_SPA_TCK, | 302 | GPIO_FN_MT0_SYNC, GPIO_FN_SPA_TCK, |
307 | GPIO_FN_HSPI_CS1_D, GPIO_FN_ADICHS2_B, GPIO_FN_VI1_DATA6_VI1_B6, | 303 | GPIO_FN_ADICHS2_B, GPIO_FN_VI1_DATA6_VI1_B6, |
308 | GPIO_FN_SD2_CD, GPIO_FN_MT0_VCXO, GPIO_FN_SPA_TMS, GPIO_FN_HSPI_TX1_D, | 304 | GPIO_FN_MT0_VCXO, GPIO_FN_SPA_TMS, |
309 | GPIO_FN_VI1_DATA7_VI1_B7, GPIO_FN_SD2_WP, GPIO_FN_MT0_PWM, | 305 | GPIO_FN_VI1_DATA7_VI1_B7, GPIO_FN_MT0_PWM, |
310 | GPIO_FN_SPA_TDI, GPIO_FN_HSPI_RX1_D, GPIO_FN_VI1_G0, GPIO_FN_VI3_DATA0, | 306 | GPIO_FN_SPA_TDI, GPIO_FN_VI1_G0, GPIO_FN_VI3_DATA0, |
311 | GPIO_FN_DU1_DOTCLKOUT1, GPIO_FN_TS_SCK1, GPIO_FN_DREQ2_B, GPIO_FN_TX2, | 307 | GPIO_FN_TS_SCK1, GPIO_FN_DREQ2_B, |
312 | GPIO_FN_SPA_TDO, GPIO_FN_HCTS0_B, GPIO_FN_VI1_G1, GPIO_FN_VI3_DATA1, | 308 | GPIO_FN_SPA_TDO, GPIO_FN_HCTS0_B, GPIO_FN_VI1_G1, GPIO_FN_VI3_DATA1, |
313 | GPIO_FN_SSI_SCK1, GPIO_FN_TS_SDEN1, GPIO_FN_DACK2_B, GPIO_FN_RX2, | 309 | GPIO_FN_SSI_SCK1, GPIO_FN_TS_SDEN1, GPIO_FN_DACK2_B, |
314 | GPIO_FN_HRTS0_B, | 310 | GPIO_FN_HRTS0_B, |
315 | 311 | ||
316 | /* IPSR12 */ | 312 | /* IPSR12 */ |
317 | GPIO_FN_VI1_G2, GPIO_FN_VI3_DATA2, GPIO_FN_SSI_WS1, GPIO_FN_TS_SPSYNC1, | 313 | GPIO_FN_VI1_G2, GPIO_FN_VI3_DATA2, GPIO_FN_SSI_WS1, GPIO_FN_TS_SPSYNC1, |
318 | GPIO_FN_SCK2, GPIO_FN_HSCK0_B, GPIO_FN_VI1_G3, GPIO_FN_VI3_DATA3, | 314 | GPIO_FN_HSCK0_B, GPIO_FN_VI1_G3, GPIO_FN_VI3_DATA3, |
319 | GPIO_FN_SSI_SCK2, GPIO_FN_TS_SDAT1, GPIO_FN_SCL1_C, GPIO_FN_HTX0_B, | 315 | GPIO_FN_SSI_SCK2, GPIO_FN_TS_SDAT1, GPIO_FN_SCL1_C, GPIO_FN_HTX0_B, |
320 | GPIO_FN_VI1_G4, GPIO_FN_VI3_DATA4, GPIO_FN_SSI_WS2, GPIO_FN_SDA1_C, | 316 | GPIO_FN_VI1_G4, GPIO_FN_VI3_DATA4, GPIO_FN_SSI_WS2, GPIO_FN_SDA1_C, |
321 | GPIO_FN_SIM_RST_B, GPIO_FN_HRX0_B, GPIO_FN_VI1_G5, GPIO_FN_VI3_DATA5, | 317 | GPIO_FN_SIM_RST_B, GPIO_FN_HRX0_B, GPIO_FN_VI1_G5, GPIO_FN_VI3_DATA5, |
322 | GPIO_FN_GPS_CLK, GPIO_FN_FSE, GPIO_FN_TX4_B, GPIO_FN_SIM_D_B, | 318 | GPIO_FN_GPS_CLK, GPIO_FN_FSE, GPIO_FN_SIM_D_B, |
323 | GPIO_FN_VI1_G6, GPIO_FN_VI3_DATA6, GPIO_FN_GPS_SIGN, GPIO_FN_FRB, | 319 | GPIO_FN_VI1_G6, GPIO_FN_VI3_DATA6, GPIO_FN_GPS_SIGN, GPIO_FN_FRB, |
324 | GPIO_FN_RX4_B, GPIO_FN_SIM_CLK_B, GPIO_FN_VI1_G7, GPIO_FN_VI3_DATA7, | 320 | GPIO_FN_SIM_CLK_B, GPIO_FN_VI1_G7, GPIO_FN_VI3_DATA7, |
325 | GPIO_FN_GPS_MAG, GPIO_FN_FCE, GPIO_FN_SCK4_B, | 321 | GPIO_FN_GPS_MAG, GPIO_FN_FCE, |
326 | }; | 322 | }; |
327 | 323 | ||
328 | struct platform_device; | 324 | struct platform_device; |
diff --git a/arch/arm/mach-shmobile/include/mach/sh7372.h b/arch/arm/mach-shmobile/include/mach/sh7372.h index b582facc1cf6..7ded4ebaf5cc 100644 --- a/arch/arm/mach-shmobile/include/mach/sh7372.h +++ b/arch/arm/mach-shmobile/include/mach/sh7372.h | |||
@@ -294,21 +294,6 @@ enum { | |||
294 | GPIO_FN_D12_NAF12, GPIO_FN_D13_NAF13, GPIO_FN_D14_NAF14, | 294 | GPIO_FN_D12_NAF12, GPIO_FN_D13_NAF13, GPIO_FN_D14_NAF14, |
295 | GPIO_FN_D15_NAF15, | 295 | GPIO_FN_D15_NAF15, |
296 | 296 | ||
297 | /* | ||
298 | * MMCIF(1) (PORT 84, 85, 86, 87, 88, 89, | ||
299 | * 90, 91, 92, 99) | ||
300 | */ | ||
301 | GPIO_FN_MMCD0_0, GPIO_FN_MMCD0_1, GPIO_FN_MMCD0_2, | ||
302 | GPIO_FN_MMCD0_3, GPIO_FN_MMCD0_4, GPIO_FN_MMCD0_5, | ||
303 | GPIO_FN_MMCD0_6, GPIO_FN_MMCD0_7, | ||
304 | GPIO_FN_MMCCMD0, GPIO_FN_MMCCLK0, | ||
305 | |||
306 | /* MMCIF(2) (PORT 54, 55, 56, 57, 58, 59, 60, 61, 66, 67) */ | ||
307 | GPIO_FN_MMCD1_0, GPIO_FN_MMCD1_1, GPIO_FN_MMCD1_2, | ||
308 | GPIO_FN_MMCD1_3, GPIO_FN_MMCD1_4, GPIO_FN_MMCD1_5, | ||
309 | GPIO_FN_MMCD1_6, GPIO_FN_MMCD1_7, | ||
310 | GPIO_FN_MMCCLK1, GPIO_FN_MMCCMD1, | ||
311 | |||
312 | /* SPU2 (PORT 65) */ | 297 | /* SPU2 (PORT 65) */ |
313 | GPIO_FN_VINT_I, | 298 | GPIO_FN_VINT_I, |
314 | 299 | ||
@@ -416,20 +401,6 @@ enum { | |||
416 | /* HDMI (PORT 169, 170) */ | 401 | /* HDMI (PORT 169, 170) */ |
417 | GPIO_FN_HDMI_HPD, GPIO_FN_HDMI_CEC, | 402 | GPIO_FN_HDMI_HPD, GPIO_FN_HDMI_CEC, |
418 | 403 | ||
419 | /* SDHI0 (PORT 171, 172, 173, 174, 175, 176, 177, 178) */ | ||
420 | GPIO_FN_SDHICLK0, GPIO_FN_SDHICD0, | ||
421 | GPIO_FN_SDHICMD0, GPIO_FN_SDHIWP0, | ||
422 | GPIO_FN_SDHID0_0, GPIO_FN_SDHID0_1, | ||
423 | GPIO_FN_SDHID0_2, GPIO_FN_SDHID0_3, | ||
424 | |||
425 | /* SDHI1 (PORT 179, 180, 181, 182, 183, 184) */ | ||
426 | GPIO_FN_SDHICLK1, GPIO_FN_SDHICMD1, GPIO_FN_SDHID1_0, | ||
427 | GPIO_FN_SDHID1_1, GPIO_FN_SDHID1_2, GPIO_FN_SDHID1_3, | ||
428 | |||
429 | /* SDHI2 (PORT 185, 186, 187, 188, 189, 190) */ | ||
430 | GPIO_FN_SDHICLK2, GPIO_FN_SDHICMD2, GPIO_FN_SDHID2_0, | ||
431 | GPIO_FN_SDHID2_1, GPIO_FN_SDHID2_2, GPIO_FN_SDHID2_3, | ||
432 | |||
433 | /* SDENC see MSEL4CR 19 */ | 404 | /* SDENC see MSEL4CR 19 */ |
434 | GPIO_FN_SDENC_CPG, | 405 | GPIO_FN_SDENC_CPG, |
435 | GPIO_FN_SDENC_DV_CLKI, | 406 | GPIO_FN_SDENC_DV_CLKI, |
diff --git a/arch/arm/mach-shmobile/include/mach/sh73a0.h b/arch/arm/mach-shmobile/include/mach/sh73a0.h index 606d31d02a4e..fbc1584d6712 100644 --- a/arch/arm/mach-shmobile/include/mach/sh73a0.h +++ b/arch/arm/mach-shmobile/include/mach/sh73a0.h | |||
@@ -94,8 +94,7 @@ enum { | |||
94 | GPIO_PORT305, GPIO_PORT306, GPIO_PORT307, GPIO_PORT308, GPIO_PORT309, | 94 | GPIO_PORT305, GPIO_PORT306, GPIO_PORT307, GPIO_PORT308, GPIO_PORT309, |
95 | 95 | ||
96 | /* Table 25-1 (Function 0-7) */ | 96 | /* Table 25-1 (Function 0-7) */ |
97 | GPIO_FN_VBUS_0, | 97 | GPIO_FN_GPI0 = 310, |
98 | GPIO_FN_GPI0, | ||
99 | GPIO_FN_GPI1, | 98 | GPIO_FN_GPI1, |
100 | GPIO_FN_GPI2, | 99 | GPIO_FN_GPI2, |
101 | GPIO_FN_GPI3, | 100 | GPIO_FN_GPI3, |
@@ -103,15 +102,11 @@ enum { | |||
103 | GPIO_FN_GPI5, | 102 | GPIO_FN_GPI5, |
104 | GPIO_FN_GPI6, | 103 | GPIO_FN_GPI6, |
105 | GPIO_FN_GPI7, | 104 | GPIO_FN_GPI7, |
106 | GPIO_FN_SCIFA7_RXD, | ||
107 | GPIO_FN_SCIFA7_CTS_, | ||
108 | GPIO_FN_GPO7, GPIO_FN_MFG0_OUT2, | 105 | GPIO_FN_GPO7, GPIO_FN_MFG0_OUT2, |
109 | GPIO_FN_GPO6, GPIO_FN_MFG1_OUT2, | 106 | GPIO_FN_GPO6, GPIO_FN_MFG1_OUT2, |
110 | GPIO_FN_GPO5, GPIO_FN_SCIFA0_SCK, GPIO_FN_FSICOSLDT3, \ | 107 | GPIO_FN_GPO5, |
111 | GPIO_FN_PORT16_VIO_CKOR, | 108 | GPIO_FN_PORT16_VIO_CKOR, |
112 | GPIO_FN_SCIFA0_TXD, | 109 | GPIO_FN_PORT19_VIO_CKO2, |
113 | GPIO_FN_SCIFA7_TXD, | ||
114 | GPIO_FN_SCIFA7_RTS_, GPIO_FN_PORT19_VIO_CKO2, | ||
115 | GPIO_FN_GPO0, | 110 | GPIO_FN_GPO0, |
116 | GPIO_FN_GPO1, | 111 | GPIO_FN_GPO1, |
117 | GPIO_FN_GPO2, GPIO_FN_STATUS0, | 112 | GPIO_FN_GPO2, GPIO_FN_STATUS0, |
@@ -119,83 +114,44 @@ enum { | |||
119 | GPIO_FN_GPO4, GPIO_FN_STATUS2, | 114 | GPIO_FN_GPO4, GPIO_FN_STATUS2, |
120 | GPIO_FN_VINT, | 115 | GPIO_FN_VINT, |
121 | GPIO_FN_TCKON, | 116 | GPIO_FN_TCKON, |
122 | GPIO_FN_XDVFS1, GPIO_FN_PORT27_I2C_SCL2, GPIO_FN_PORT27_I2C_SCL3, \ | 117 | GPIO_FN_XDVFS1, |
123 | GPIO_FN_MFG0_OUT1, GPIO_FN_PORT27_IROUT, | 118 | GPIO_FN_MFG0_OUT1, GPIO_FN_PORT27_IROUT, |
124 | GPIO_FN_XDVFS2, GPIO_FN_PORT28_I2C_SDA2, GPIO_FN_PORT28_I2C_SDA3, \ | 119 | GPIO_FN_XDVFS2, |
125 | GPIO_FN_PORT28_TPU1TO1, | 120 | GPIO_FN_PORT28_TPU1TO1, |
126 | GPIO_FN_SIM_RST, GPIO_FN_PORT29_TPU1TO1, | 121 | GPIO_FN_SIM_RST, GPIO_FN_PORT29_TPU1TO1, |
127 | GPIO_FN_SIM_CLK, GPIO_FN_PORT30_VIO_CKOR, | 122 | GPIO_FN_SIM_CLK, GPIO_FN_PORT30_VIO_CKOR, |
128 | GPIO_FN_SIM_D, GPIO_FN_PORT31_IROUT, | 123 | GPIO_FN_SIM_D, GPIO_FN_PORT31_IROUT, |
129 | GPIO_FN_SCIFA4_TXD, | 124 | GPIO_FN_XWUP, |
130 | GPIO_FN_SCIFA4_RXD, GPIO_FN_XWUP, | ||
131 | GPIO_FN_SCIFA4_RTS_, | ||
132 | GPIO_FN_SCIFA4_CTS_, | ||
133 | GPIO_FN_FSIBOBT, GPIO_FN_FSIBIBT, | ||
134 | GPIO_FN_FSIBOLR, GPIO_FN_FSIBILR, | ||
135 | GPIO_FN_FSIBOSLD, | ||
136 | GPIO_FN_FSIBISLD, | ||
137 | GPIO_FN_VACK, | 125 | GPIO_FN_VACK, |
138 | GPIO_FN_XTAL1L, | 126 | GPIO_FN_XTAL1L, |
139 | GPIO_FN_SCIFA0_RTS_, GPIO_FN_FSICOSLDT2, | 127 | GPIO_FN_PORT49_IROUT, |
140 | GPIO_FN_SCIFA0_RXD, | 128 | GPIO_FN_BBIF2_TSYNC2, GPIO_FN_TPU2TO2, |
141 | GPIO_FN_SCIFA0_CTS_, GPIO_FN_FSICOSLDT1, | 129 | |
142 | GPIO_FN_FSICOBT, GPIO_FN_FSICIBT, GPIO_FN_FSIDOBT, GPIO_FN_FSIDIBT, | 130 | GPIO_FN_BBIF2_TSCK2, GPIO_FN_TPU2TO3, |
143 | GPIO_FN_FSICOLR, GPIO_FN_FSICILR, GPIO_FN_FSIDOLR, GPIO_FN_FSIDILR, | 131 | GPIO_FN_BBIF2_TXD2, |
144 | GPIO_FN_FSICOSLD, GPIO_FN_PORT47_FSICSPDIF, | 132 | GPIO_FN_TPU3TO3, |
145 | GPIO_FN_FSICISLD, GPIO_FN_FSIDISLD, | 133 | GPIO_FN_TPU3TO2, |
146 | GPIO_FN_FSIACK, GPIO_FN_PORT49_IRDA_OUT, GPIO_FN_PORT49_IROUT, \ | 134 | GPIO_FN_TPU0TO0, |
147 | GPIO_FN_FSIAOMC, | ||
148 | GPIO_FN_FSIAOLR, GPIO_FN_BBIF2_TSYNC2, GPIO_FN_TPU2TO2, GPIO_FN_FSIAILR, | ||
149 | |||
150 | GPIO_FN_FSIAOBT, GPIO_FN_BBIF2_TSCK2, GPIO_FN_TPU2TO3, GPIO_FN_FSIAIBT, | ||
151 | GPIO_FN_FSIAOSLD, GPIO_FN_BBIF2_TXD2, | ||
152 | GPIO_FN_FSIASPDIF, GPIO_FN_PORT53_IRDA_IN, GPIO_FN_TPU3TO3, \ | ||
153 | GPIO_FN_FSIBSPDIF, GPIO_FN_PORT53_FSICSPDIF, | ||
154 | GPIO_FN_FSIBCK, GPIO_FN_PORT54_IRDA_FIRSEL, GPIO_FN_TPU3TO2, \ | ||
155 | GPIO_FN_FSIBOMC, GPIO_FN_FSICCK, GPIO_FN_FSICOMC, | ||
156 | GPIO_FN_FSIAISLD, GPIO_FN_TPU0TO0, | ||
157 | GPIO_FN_A0, GPIO_FN_BS_, | 135 | GPIO_FN_A0, GPIO_FN_BS_, |
158 | GPIO_FN_A12, GPIO_FN_PORT58_KEYOUT7, GPIO_FN_TPU4TO2, | 136 | GPIO_FN_A12, GPIO_FN_TPU4TO2, |
159 | GPIO_FN_A13, GPIO_FN_PORT59_KEYOUT6, GPIO_FN_TPU0TO1, | 137 | GPIO_FN_A13, GPIO_FN_TPU0TO1, |
160 | GPIO_FN_A14, GPIO_FN_KEYOUT5, | 138 | GPIO_FN_A14, |
161 | GPIO_FN_A15, GPIO_FN_KEYOUT4, | 139 | GPIO_FN_A15, |
162 | GPIO_FN_A16, GPIO_FN_KEYOUT3, GPIO_FN_MSIOF0_SS1, | 140 | GPIO_FN_A16, GPIO_FN_MSIOF0_SS1, |
163 | GPIO_FN_A17, GPIO_FN_KEYOUT2, GPIO_FN_MSIOF0_TSYNC, | 141 | GPIO_FN_A17, GPIO_FN_MSIOF0_TSYNC, |
164 | GPIO_FN_A18, GPIO_FN_KEYOUT1, GPIO_FN_MSIOF0_TSCK, | 142 | GPIO_FN_A18, GPIO_FN_MSIOF0_TSCK, |
165 | GPIO_FN_A19, GPIO_FN_KEYOUT0, GPIO_FN_MSIOF0_TXD, | 143 | GPIO_FN_A19, GPIO_FN_MSIOF0_TXD, |
166 | GPIO_FN_A20, GPIO_FN_KEYIN0, GPIO_FN_MSIOF0_RSCK, | 144 | GPIO_FN_A20, GPIO_FN_MSIOF0_RSCK, |
167 | GPIO_FN_A21, GPIO_FN_KEYIN1, GPIO_FN_MSIOF0_RSYNC, | 145 | GPIO_FN_A21, GPIO_FN_MSIOF0_RSYNC, |
168 | GPIO_FN_A22, GPIO_FN_KEYIN2, GPIO_FN_MSIOF0_MCK0, | 146 | GPIO_FN_A22, GPIO_FN_MSIOF0_MCK0, |
169 | GPIO_FN_A23, GPIO_FN_KEYIN3, GPIO_FN_MSIOF0_MCK1, | 147 | GPIO_FN_A23, GPIO_FN_MSIOF0_MCK1, |
170 | GPIO_FN_A24, GPIO_FN_KEYIN4, GPIO_FN_MSIOF0_RXD, | 148 | GPIO_FN_A24, GPIO_FN_MSIOF0_RXD, |
171 | GPIO_FN_A25, GPIO_FN_KEYIN5, GPIO_FN_MSIOF0_SS2, | 149 | GPIO_FN_A25, GPIO_FN_MSIOF0_SS2, |
172 | GPIO_FN_A26, GPIO_FN_KEYIN6, | 150 | GPIO_FN_A26, |
173 | GPIO_FN_KEYIN7, | 151 | GPIO_FN_FCE1_, |
174 | GPIO_FN_D0_NAF0, | 152 | GPIO_FN_DACK0, |
175 | GPIO_FN_D1_NAF1, | 153 | GPIO_FN_FCE0_, |
176 | GPIO_FN_D2_NAF2, | ||
177 | GPIO_FN_D3_NAF3, | ||
178 | GPIO_FN_D4_NAF4, | ||
179 | GPIO_FN_D5_NAF5, | ||
180 | GPIO_FN_D6_NAF6, | ||
181 | GPIO_FN_D7_NAF7, | ||
182 | GPIO_FN_D8_NAF8, | ||
183 | GPIO_FN_D9_NAF9, | ||
184 | GPIO_FN_D10_NAF10, | ||
185 | GPIO_FN_D11_NAF11, | ||
186 | GPIO_FN_D12_NAF12, | ||
187 | GPIO_FN_D13_NAF13, | ||
188 | GPIO_FN_D14_NAF14, | ||
189 | GPIO_FN_D15_NAF15, | ||
190 | GPIO_FN_CS4_, | ||
191 | GPIO_FN_CS5A_, GPIO_FN_PORT91_RDWR, | ||
192 | GPIO_FN_CS5B_, GPIO_FN_FCE1_, | ||
193 | GPIO_FN_CS6B_, GPIO_FN_DACK0, | ||
194 | GPIO_FN_FCE0_, GPIO_FN_CS6A_, | ||
195 | GPIO_FN_WAIT_, GPIO_FN_DREQ0, | 154 | GPIO_FN_WAIT_, GPIO_FN_DREQ0, |
196 | GPIO_FN_RD__FSC, | ||
197 | GPIO_FN_WE0__FWE, GPIO_FN_RDWR_FWE, | ||
198 | GPIO_FN_WE1_, | ||
199 | GPIO_FN_FRB, | 155 | GPIO_FN_FRB, |
200 | GPIO_FN_CKO, | 156 | GPIO_FN_CKO, |
201 | GPIO_FN_NBRSTOUT_, | 157 | GPIO_FN_NBRSTOUT_, |
@@ -204,145 +160,118 @@ enum { | |||
204 | GPIO_FN_BBIF2_RXD, | 160 | GPIO_FN_BBIF2_RXD, |
205 | GPIO_FN_BBIF2_SYNC, | 161 | GPIO_FN_BBIF2_SYNC, |
206 | GPIO_FN_BBIF2_SCK, | 162 | GPIO_FN_BBIF2_SCK, |
207 | GPIO_FN_SCIFA3_CTS_, GPIO_FN_MFG3_IN2, | 163 | GPIO_FN_MFG3_IN2, |
208 | GPIO_FN_SCIFA3_RXD, GPIO_FN_MFG3_IN1, | 164 | GPIO_FN_MFG3_IN1, |
209 | GPIO_FN_BBIF1_SS2, GPIO_FN_SCIFA3_RTS_, GPIO_FN_MFG3_OUT1, | 165 | GPIO_FN_BBIF1_SS2, GPIO_FN_MFG3_OUT1, |
210 | GPIO_FN_SCIFA3_TXD, | ||
211 | GPIO_FN_HSI_RX_DATA, GPIO_FN_BBIF1_RXD, | 166 | GPIO_FN_HSI_RX_DATA, GPIO_FN_BBIF1_RXD, |
212 | GPIO_FN_HSI_TX_WAKE, GPIO_FN_BBIF1_TSCK, | 167 | GPIO_FN_HSI_TX_WAKE, GPIO_FN_BBIF1_TSCK, |
213 | GPIO_FN_HSI_TX_DATA, GPIO_FN_BBIF1_TSYNC, | 168 | GPIO_FN_HSI_TX_DATA, GPIO_FN_BBIF1_TSYNC, |
214 | GPIO_FN_HSI_TX_READY, GPIO_FN_BBIF1_TXD, | 169 | GPIO_FN_HSI_TX_READY, GPIO_FN_BBIF1_TXD, |
215 | GPIO_FN_HSI_RX_READY, GPIO_FN_BBIF1_RSCK, GPIO_FN_PORT115_I2C_SCL2, \ | 170 | GPIO_FN_HSI_RX_READY, GPIO_FN_BBIF1_RSCK, |
216 | GPIO_FN_PORT115_I2C_SCL3, | 171 | GPIO_FN_HSI_RX_WAKE, GPIO_FN_BBIF1_RSYNC, |
217 | GPIO_FN_HSI_RX_WAKE, GPIO_FN_BBIF1_RSYNC, GPIO_FN_PORT116_I2C_SDA2, \ | ||
218 | GPIO_FN_PORT116_I2C_SDA3, | ||
219 | GPIO_FN_HSI_RX_FLAG, GPIO_FN_BBIF1_SS1, GPIO_FN_BBIF1_FLOW, | 172 | GPIO_FN_HSI_RX_FLAG, GPIO_FN_BBIF1_SS1, GPIO_FN_BBIF1_FLOW, |
220 | GPIO_FN_HSI_TX_FLAG, | 173 | GPIO_FN_HSI_TX_FLAG, |
221 | GPIO_FN_VIO_VD, GPIO_FN_PORT128_LCD2VSYN, GPIO_FN_VIO2_VD, \ | 174 | GPIO_FN_VIO_VD, GPIO_FN_VIO2_VD, |
222 | GPIO_FN_LCD2D0, | 175 | |
223 | 176 | GPIO_FN_VIO_HD, | |
224 | GPIO_FN_VIO_HD, GPIO_FN_PORT129_LCD2HSYN, GPIO_FN_PORT129_LCD2CS_, \ | 177 | GPIO_FN_VIO2_HD, |
225 | GPIO_FN_VIO2_HD, GPIO_FN_LCD2D1, | 178 | GPIO_FN_VIO_D0, GPIO_FN_PORT130_MSIOF2_RXD, |
226 | GPIO_FN_VIO_D0, GPIO_FN_PORT130_MSIOF2_RXD, GPIO_FN_LCD2D10, | 179 | GPIO_FN_VIO_D1, GPIO_FN_PORT131_MSIOF2_SS1, |
227 | GPIO_FN_VIO_D1, GPIO_FN_PORT131_KEYOUT6, GPIO_FN_PORT131_MSIOF2_SS1, \ | 180 | GPIO_FN_VIO_D2, GPIO_FN_PORT132_MSIOF2_SS2, |
228 | GPIO_FN_PORT131_KEYOUT11, GPIO_FN_LCD2D11, | 181 | GPIO_FN_VIO_D3, GPIO_FN_MSIOF2_TSYNC, |
229 | GPIO_FN_VIO_D2, GPIO_FN_PORT132_KEYOUT7, GPIO_FN_PORT132_MSIOF2_SS2, \ | 182 | GPIO_FN_VIO_D4, GPIO_FN_MSIOF2_TXD, |
230 | GPIO_FN_PORT132_KEYOUT10, GPIO_FN_LCD2D12, | 183 | GPIO_FN_VIO_D5, GPIO_FN_MSIOF2_TSCK, |
231 | GPIO_FN_VIO_D3, GPIO_FN_MSIOF2_TSYNC, GPIO_FN_LCD2D13, | 184 | GPIO_FN_VIO_D6, |
232 | GPIO_FN_VIO_D4, GPIO_FN_MSIOF2_TXD, GPIO_FN_LCD2D14, | 185 | GPIO_FN_VIO_D7, |
233 | GPIO_FN_VIO_D5, GPIO_FN_MSIOF2_TSCK, GPIO_FN_LCD2D15, | 186 | GPIO_FN_VIO_D8, GPIO_FN_VIO2_D0, |
234 | GPIO_FN_VIO_D6, GPIO_FN_PORT136_KEYOUT8, GPIO_FN_LCD2D16, | 187 | GPIO_FN_VIO_D9, GPIO_FN_VIO2_D1, |
235 | GPIO_FN_VIO_D7, GPIO_FN_PORT137_KEYOUT9, GPIO_FN_LCD2D17, | 188 | GPIO_FN_VIO_D10, GPIO_FN_TPU0TO2, GPIO_FN_VIO2_D2, |
236 | GPIO_FN_VIO_D8, GPIO_FN_PORT138_KEYOUT8, GPIO_FN_VIO2_D0, \ | 189 | GPIO_FN_VIO_D11, GPIO_FN_TPU0TO3, GPIO_FN_VIO2_D3, |
237 | GPIO_FN_LCD2D6, | 190 | GPIO_FN_VIO_D12, GPIO_FN_VIO2_D4, |
238 | GPIO_FN_VIO_D9, GPIO_FN_PORT139_KEYOUT9, GPIO_FN_VIO2_D1, \ | 191 | GPIO_FN_VIO_D13, |
239 | GPIO_FN_LCD2D7, | 192 | GPIO_FN_VIO2_D5, |
240 | GPIO_FN_VIO_D10, GPIO_FN_TPU0TO2, GPIO_FN_VIO2_D2, GPIO_FN_LCD2D8, | 193 | GPIO_FN_VIO_D14, GPIO_FN_VIO2_D6, |
241 | GPIO_FN_VIO_D11, GPIO_FN_TPU0TO3, GPIO_FN_VIO2_D3, GPIO_FN_LCD2D9, | 194 | GPIO_FN_VIO_D15, GPIO_FN_TPU1TO3, |
242 | GPIO_FN_VIO_D12, GPIO_FN_PORT142_KEYOUT10, GPIO_FN_VIO2_D4, \ | 195 | GPIO_FN_VIO2_D7, |
243 | GPIO_FN_LCD2D2, | 196 | GPIO_FN_VIO_CLK, |
244 | GPIO_FN_VIO_D13, GPIO_FN_PORT143_KEYOUT11, GPIO_FN_PORT143_KEYOUT6, \ | 197 | GPIO_FN_VIO2_CLK, |
245 | GPIO_FN_VIO2_D5, GPIO_FN_LCD2D3, | 198 | GPIO_FN_VIO_FIELD, GPIO_FN_VIO2_FIELD, |
246 | GPIO_FN_VIO_D14, GPIO_FN_PORT144_KEYOUT7, GPIO_FN_VIO2_D6, \ | ||
247 | GPIO_FN_LCD2D4, | ||
248 | GPIO_FN_VIO_D15, GPIO_FN_TPU1TO3, GPIO_FN_PORT145_LCD2DISP, \ | ||
249 | GPIO_FN_PORT145_LCD2RS, GPIO_FN_VIO2_D7, GPIO_FN_LCD2D5, | ||
250 | GPIO_FN_VIO_CLK, GPIO_FN_LCD2DCK, GPIO_FN_PORT146_LCD2WR_, \ | ||
251 | GPIO_FN_VIO2_CLK, GPIO_FN_LCD2D18, | ||
252 | GPIO_FN_VIO_FIELD, GPIO_FN_LCD2RD_, GPIO_FN_VIO2_FIELD, GPIO_FN_LCD2D19, | ||
253 | GPIO_FN_VIO_CKO, | 199 | GPIO_FN_VIO_CKO, |
254 | GPIO_FN_A27, GPIO_FN_PORT149_RDWR, GPIO_FN_MFG0_IN1, \ | 200 | GPIO_FN_A27, GPIO_FN_MFG0_IN1, |
255 | GPIO_FN_PORT149_KEYOUT9, | ||
256 | GPIO_FN_MFG0_IN2, | 201 | GPIO_FN_MFG0_IN2, |
257 | GPIO_FN_TS_SPSYNC3, GPIO_FN_MSIOF2_RSCK, | 202 | GPIO_FN_TS_SPSYNC3, GPIO_FN_MSIOF2_RSCK, |
258 | GPIO_FN_TS_SDAT3, GPIO_FN_MSIOF2_RSYNC, | 203 | GPIO_FN_TS_SDAT3, GPIO_FN_MSIOF2_RSYNC, |
259 | GPIO_FN_TPU1TO2, GPIO_FN_TS_SDEN3, GPIO_FN_PORT153_MSIOF2_SS1, | 204 | GPIO_FN_TPU1TO2, GPIO_FN_TS_SDEN3, GPIO_FN_PORT153_MSIOF2_SS1, |
260 | GPIO_FN_SCIFA2_TXD1, GPIO_FN_MSIOF2_MCK0, | 205 | GPIO_FN_MSIOF2_MCK0, |
261 | GPIO_FN_SCIFA2_RXD1, GPIO_FN_MSIOF2_MCK1, | 206 | GPIO_FN_MSIOF2_MCK1, |
262 | GPIO_FN_SCIFA2_RTS1_, GPIO_FN_PORT156_MSIOF2_SS2, | 207 | GPIO_FN_PORT156_MSIOF2_SS2, |
263 | GPIO_FN_SCIFA2_CTS1_, GPIO_FN_PORT157_MSIOF2_RXD, | 208 | GPIO_FN_PORT157_MSIOF2_RXD, |
264 | GPIO_FN_DINT_, GPIO_FN_SCIFA2_SCK1, GPIO_FN_TS_SCK3, | 209 | GPIO_FN_DINT_, GPIO_FN_TS_SCK3, |
265 | GPIO_FN_PORT159_SCIFB_SCK, GPIO_FN_PORT159_SCIFA5_SCK, GPIO_FN_NMI, | 210 | GPIO_FN_NMI, |
266 | GPIO_FN_PORT160_SCIFB_TXD, GPIO_FN_PORT160_SCIFA5_TXD, | ||
267 | GPIO_FN_PORT161_SCIFB_CTS_, GPIO_FN_PORT161_SCIFA5_CTS_, | ||
268 | GPIO_FN_PORT162_SCIFB_RXD, GPIO_FN_PORT162_SCIFA5_RXD, | ||
269 | GPIO_FN_PORT163_SCIFB_RTS_, GPIO_FN_PORT163_SCIFA5_RTS_, \ | ||
270 | GPIO_FN_TPU3TO0, | 211 | GPIO_FN_TPU3TO0, |
271 | GPIO_FN_LCDD0, | 212 | GPIO_FN_BBIF2_TSYNC1, |
272 | GPIO_FN_LCDD1, GPIO_FN_PORT193_SCIFA5_CTS_, GPIO_FN_BBIF2_TSYNC1, | 213 | GPIO_FN_BBIF2_TSCK1, |
273 | GPIO_FN_LCDD2, GPIO_FN_PORT194_SCIFA5_RTS_, GPIO_FN_BBIF2_TSCK1, | 214 | GPIO_FN_BBIF2_TXD1, |
274 | GPIO_FN_LCDD3, GPIO_FN_PORT195_SCIFA5_RXD, GPIO_FN_BBIF2_TXD1, | 215 | GPIO_FN_MFG2_OUT2, |
275 | GPIO_FN_LCDD4, GPIO_FN_PORT196_SCIFA5_TXD, | ||
276 | GPIO_FN_LCDD5, GPIO_FN_PORT197_SCIFA5_SCK, GPIO_FN_MFG2_OUT2, \ | ||
277 | GPIO_FN_TPU2TO1, | 216 | GPIO_FN_TPU2TO1, |
278 | GPIO_FN_LCDD6, | 217 | GPIO_FN_TPU4TO1, GPIO_FN_MFG4_OUT2, |
279 | GPIO_FN_LCDD7, GPIO_FN_TPU4TO1, GPIO_FN_MFG4_OUT2, | 218 | GPIO_FN_D16, |
280 | GPIO_FN_LCDD8, GPIO_FN_D16, | 219 | GPIO_FN_D17, |
281 | GPIO_FN_LCDD9, GPIO_FN_D17, | 220 | GPIO_FN_D18, |
282 | GPIO_FN_LCDD10, GPIO_FN_D18, | 221 | GPIO_FN_D19, |
283 | GPIO_FN_LCDD11, GPIO_FN_D19, | 222 | GPIO_FN_D20, |
284 | GPIO_FN_LCDD12, GPIO_FN_D20, | 223 | GPIO_FN_D21, |
285 | GPIO_FN_LCDD13, GPIO_FN_D21, | 224 | GPIO_FN_D22, |
286 | GPIO_FN_LCDD14, GPIO_FN_D22, | 225 | GPIO_FN_PORT207_MSIOF0L_SS1, GPIO_FN_D23, |
287 | GPIO_FN_LCDD15, GPIO_FN_PORT207_MSIOF0L_SS1, GPIO_FN_D23, | 226 | GPIO_FN_PORT208_MSIOF0L_SS2, GPIO_FN_D24, |
288 | GPIO_FN_LCDD16, GPIO_FN_PORT208_MSIOF0L_SS2, GPIO_FN_D24, | 227 | GPIO_FN_D25, |
289 | GPIO_FN_LCDD17, GPIO_FN_D25, | 228 | GPIO_FN_DREQ2, GPIO_FN_PORT210_MSIOF0L_SS1, GPIO_FN_D26, |
290 | GPIO_FN_LCDD18, GPIO_FN_DREQ2, GPIO_FN_PORT210_MSIOF0L_SS1, GPIO_FN_D26, | 229 | GPIO_FN_PORT211_MSIOF0L_SS2, GPIO_FN_D27, |
291 | GPIO_FN_LCDD19, GPIO_FN_PORT211_MSIOF0L_SS2, GPIO_FN_D27, | 230 | GPIO_FN_TS_SPSYNC1, GPIO_FN_MSIOF0L_MCK0, GPIO_FN_D28, |
292 | GPIO_FN_LCDD20, GPIO_FN_TS_SPSYNC1, GPIO_FN_MSIOF0L_MCK0, GPIO_FN_D28, | 231 | GPIO_FN_TS_SDAT1, GPIO_FN_MSIOF0L_MCK1, GPIO_FN_D29, |
293 | GPIO_FN_LCDD21, GPIO_FN_TS_SDAT1, GPIO_FN_MSIOF0L_MCK1, GPIO_FN_D29, | 232 | GPIO_FN_TS_SDEN1, GPIO_FN_MSIOF0L_RSCK, GPIO_FN_D30, |
294 | GPIO_FN_LCDD22, GPIO_FN_TS_SDEN1, GPIO_FN_MSIOF0L_RSCK, GPIO_FN_D30, | 233 | GPIO_FN_TS_SCK1, GPIO_FN_MSIOF0L_RSYNC, GPIO_FN_D31, |
295 | GPIO_FN_LCDD23, GPIO_FN_TS_SCK1, GPIO_FN_MSIOF0L_RSYNC, GPIO_FN_D31, | 234 | GPIO_FN_DACK2, |
296 | GPIO_FN_LCDDCK, GPIO_FN_LCDWR_, | 235 | GPIO_FN_MSIOF0L_TSYNC, GPIO_FN_VIO2_FIELD3, |
297 | GPIO_FN_LCDRD_, GPIO_FN_DACK2, GPIO_FN_PORT217_LCD2RS, \ | 236 | GPIO_FN_DACK3, |
298 | GPIO_FN_MSIOF0L_TSYNC, GPIO_FN_VIO2_FIELD3, GPIO_FN_PORT217_LCD2DISP, | ||
299 | GPIO_FN_LCDHSYN, GPIO_FN_LCDCS_, GPIO_FN_LCDCS2_, GPIO_FN_DACK3, \ | ||
300 | GPIO_FN_PORT218_VIO_CKOR, | 237 | GPIO_FN_PORT218_VIO_CKOR, |
301 | GPIO_FN_LCDDISP, GPIO_FN_LCDRS, GPIO_FN_PORT219_LCD2WR_, \ | ||
302 | GPIO_FN_DREQ3, GPIO_FN_MSIOF0L_TSCK, GPIO_FN_VIO2_CLK3, \ | 238 | GPIO_FN_DREQ3, GPIO_FN_MSIOF0L_TSCK, GPIO_FN_VIO2_CLK3, \ |
303 | GPIO_FN_LCD2DCK_2, | 239 | GPIO_FN_DREQ1, |
304 | GPIO_FN_LCDVSYN, GPIO_FN_LCDVSYN2, | ||
305 | GPIO_FN_LCDLCLK, GPIO_FN_DREQ1, GPIO_FN_PORT221_LCD2CS_, \ | ||
306 | GPIO_FN_PWEN, GPIO_FN_MSIOF0L_RXD, GPIO_FN_VIO2_HD3, \ | 240 | GPIO_FN_PWEN, GPIO_FN_MSIOF0L_RXD, GPIO_FN_VIO2_HD3, \ |
307 | GPIO_FN_PORT221_LCD2HSYN, | 241 | GPIO_FN_DACK1, GPIO_FN_OVCN, |
308 | GPIO_FN_LCDDON, GPIO_FN_LCDDON2, GPIO_FN_DACK1, GPIO_FN_OVCN, \ | 242 | GPIO_FN_MSIOF0L_TXD, GPIO_FN_VIO2_VD3, |
309 | GPIO_FN_MSIOF0L_TXD, GPIO_FN_VIO2_VD3, GPIO_FN_PORT222_LCD2VSYN, | 243 | |
310 | 244 | GPIO_FN_OVCN2, | |
311 | GPIO_FN_SCIFA1_TXD, GPIO_FN_OVCN2, | 245 | GPIO_FN_EXTLP, GPIO_FN_PORT226_VIO_CKO2, |
312 | GPIO_FN_EXTLP, GPIO_FN_SCIFA1_SCK, GPIO_FN_PORT226_VIO_CKO2, | 246 | GPIO_FN_IDIN, |
313 | GPIO_FN_SCIFA1_RTS_, GPIO_FN_IDIN, | 247 | GPIO_FN_MFG1_IN1, |
314 | GPIO_FN_SCIFA1_RXD, | 248 | GPIO_FN_MSIOF1_TXD, |
315 | GPIO_FN_SCIFA1_CTS_, GPIO_FN_MFG1_IN1, | 249 | GPIO_FN_MSIOF1_TSYNC, |
316 | GPIO_FN_MSIOF1_TXD, GPIO_FN_SCIFA2_TXD2, | 250 | GPIO_FN_MSIOF1_TSCK, |
317 | GPIO_FN_MSIOF1_TSYNC, GPIO_FN_SCIFA2_CTS2_, | 251 | GPIO_FN_MSIOF1_RXD, |
318 | GPIO_FN_MSIOF1_TSCK, GPIO_FN_SCIFA2_SCK2, | 252 | GPIO_FN_MSIOF1_RSCK, GPIO_FN_VIO2_CLK2, |
319 | GPIO_FN_MSIOF1_RXD, GPIO_FN_SCIFA2_RXD2, | ||
320 | GPIO_FN_MSIOF1_RSCK, GPIO_FN_SCIFA2_RTS2_, GPIO_FN_VIO2_CLK2, \ | ||
321 | GPIO_FN_LCD2D20, | ||
322 | GPIO_FN_MSIOF1_RSYNC, GPIO_FN_MFG1_IN2, GPIO_FN_VIO2_VD2, \ | 253 | GPIO_FN_MSIOF1_RSYNC, GPIO_FN_MFG1_IN2, GPIO_FN_VIO2_VD2, \ |
323 | GPIO_FN_LCD2D21, | 254 | GPIO_FN_MSIOF1_MCK0, |
324 | GPIO_FN_MSIOF1_MCK0, GPIO_FN_PORT236_I2C_SDA2, | 255 | GPIO_FN_MSIOF1_MCK1, |
325 | GPIO_FN_MSIOF1_MCK1, GPIO_FN_PORT237_I2C_SCL2, | 256 | GPIO_FN_MSIOF1_SS1, GPIO_FN_VIO2_FIELD2, |
326 | GPIO_FN_MSIOF1_SS1, GPIO_FN_VIO2_FIELD2, GPIO_FN_LCD2D22, | 257 | GPIO_FN_MSIOF1_SS2, GPIO_FN_VIO2_HD2, |
327 | GPIO_FN_MSIOF1_SS2, GPIO_FN_VIO2_HD2, GPIO_FN_LCD2D23, | 258 | GPIO_FN_PORT241_IROUT, GPIO_FN_MFG4_OUT1, \ |
328 | GPIO_FN_SCIFA6_TXD, | ||
329 | GPIO_FN_PORT241_IRDA_OUT, GPIO_FN_PORT241_IROUT, GPIO_FN_MFG4_OUT1, \ | ||
330 | GPIO_FN_TPU4TO0, | 259 | GPIO_FN_TPU4TO0, |
331 | GPIO_FN_PORT242_IRDA_IN, GPIO_FN_MFG4_IN2, | 260 | GPIO_FN_MFG4_IN2, |
332 | GPIO_FN_PORT243_IRDA_FIRSEL, GPIO_FN_PORT243_VIO_CKO2, | 261 | GPIO_FN_PORT243_VIO_CKO2, |
333 | GPIO_FN_PORT244_SCIFA5_CTS_, GPIO_FN_MFG2_IN1, \ | 262 | GPIO_FN_MFG2_IN1, |
334 | GPIO_FN_PORT244_SCIFB_CTS_, GPIO_FN_MSIOF2R_RXD, | 263 | GPIO_FN_MSIOF2R_RXD, |
335 | GPIO_FN_PORT245_SCIFA5_RTS_, GPIO_FN_MFG2_IN2, \ | 264 | GPIO_FN_MFG2_IN2, |
336 | GPIO_FN_PORT245_SCIFB_RTS_, GPIO_FN_MSIOF2R_TXD, | 265 | GPIO_FN_MSIOF2R_TXD, |
337 | GPIO_FN_PORT246_SCIFA5_RXD, GPIO_FN_MFG1_OUT1, \ | 266 | GPIO_FN_MFG1_OUT1, |
338 | GPIO_FN_PORT246_SCIFB_RXD, GPIO_FN_TPU1TO0, | 267 | GPIO_FN_TPU1TO0, |
339 | GPIO_FN_PORT247_SCIFA5_TXD, GPIO_FN_MFG3_OUT2, \ | 268 | GPIO_FN_MFG3_OUT2, |
340 | GPIO_FN_PORT247_SCIFB_TXD, GPIO_FN_TPU3TO1, | 269 | GPIO_FN_TPU3TO1, |
341 | GPIO_FN_PORT248_SCIFA5_SCK, GPIO_FN_MFG2_OUT1, \ | 270 | GPIO_FN_MFG2_OUT1, |
342 | GPIO_FN_PORT248_SCIFB_SCK, GPIO_FN_TPU2TO0, \ | 271 | GPIO_FN_TPU2TO0, |
343 | GPIO_FN_PORT248_I2C_SCL3, GPIO_FN_MSIOF2R_TSCK, | 272 | GPIO_FN_MSIOF2R_TSCK, |
344 | GPIO_FN_PORT249_IROUT, GPIO_FN_MFG4_IN1, \ | 273 | GPIO_FN_PORT249_IROUT, GPIO_FN_MFG4_IN1, \ |
345 | GPIO_FN_PORT249_I2C_SDA3, GPIO_FN_MSIOF2R_TSYNC, | 274 | GPIO_FN_MSIOF2R_TSYNC, |
346 | GPIO_FN_SDHICLK0, | 275 | GPIO_FN_SDHICLK0, |
347 | GPIO_FN_SDHICD0, | 276 | GPIO_FN_SDHICD0, |
348 | GPIO_FN_SDHID0_0, | 277 | GPIO_FN_SDHID0_0, |
@@ -435,54 +364,12 @@ enum { | |||
435 | GPIO_FN_IRQ9_MEM_INT, | 364 | GPIO_FN_IRQ9_MEM_INT, |
436 | GPIO_FN_IRQ9_MCP_INT, | 365 | GPIO_FN_IRQ9_MCP_INT, |
437 | GPIO_FN_A11, | 366 | GPIO_FN_A11, |
438 | GPIO_FN_KEYOUT8, | ||
439 | GPIO_FN_TPU4TO3, | 367 | GPIO_FN_TPU4TO3, |
440 | GPIO_FN_RESETA_N_PU_ON, | 368 | GPIO_FN_RESETA_N_PU_ON, |
441 | GPIO_FN_RESETA_N_PU_OFF, | 369 | GPIO_FN_RESETA_N_PU_OFF, |
442 | GPIO_FN_EDBGREQ_PD, | 370 | GPIO_FN_EDBGREQ_PD, |
443 | GPIO_FN_EDBGREQ_PU, | 371 | GPIO_FN_EDBGREQ_PU, |
444 | 372 | ||
445 | /* Functions with pull-ups */ | ||
446 | GPIO_FN_KEYIN0_PU, | ||
447 | GPIO_FN_KEYIN1_PU, | ||
448 | GPIO_FN_KEYIN2_PU, | ||
449 | GPIO_FN_KEYIN3_PU, | ||
450 | GPIO_FN_KEYIN4_PU, | ||
451 | GPIO_FN_KEYIN5_PU, | ||
452 | GPIO_FN_KEYIN6_PU, | ||
453 | GPIO_FN_KEYIN7_PU, | ||
454 | GPIO_FN_SDHICD0_PU, | ||
455 | GPIO_FN_SDHID0_0_PU, | ||
456 | GPIO_FN_SDHID0_1_PU, | ||
457 | GPIO_FN_SDHID0_2_PU, | ||
458 | GPIO_FN_SDHID0_3_PU, | ||
459 | GPIO_FN_SDHICMD0_PU, | ||
460 | GPIO_FN_SDHIWP0_PU, | ||
461 | GPIO_FN_SDHID1_0_PU, | ||
462 | GPIO_FN_SDHID1_1_PU, | ||
463 | GPIO_FN_SDHID1_2_PU, | ||
464 | GPIO_FN_SDHID1_3_PU, | ||
465 | GPIO_FN_SDHICMD1_PU, | ||
466 | GPIO_FN_SDHID2_0_PU, | ||
467 | GPIO_FN_SDHID2_1_PU, | ||
468 | GPIO_FN_SDHID2_2_PU, | ||
469 | GPIO_FN_SDHID2_3_PU, | ||
470 | GPIO_FN_SDHICMD2_PU, | ||
471 | GPIO_FN_MMCCMD0_PU, | ||
472 | GPIO_FN_MMCCMD1_PU, | ||
473 | GPIO_FN_MMCD0_0_PU, | ||
474 | GPIO_FN_MMCD0_1_PU, | ||
475 | GPIO_FN_MMCD0_2_PU, | ||
476 | GPIO_FN_MMCD0_3_PU, | ||
477 | GPIO_FN_MMCD0_4_PU, | ||
478 | GPIO_FN_MMCD0_5_PU, | ||
479 | GPIO_FN_MMCD0_6_PU, | ||
480 | GPIO_FN_MMCD0_7_PU, | ||
481 | GPIO_FN_FSIACK_PU, | ||
482 | GPIO_FN_FSIAILR_PU, | ||
483 | GPIO_FN_FSIAIBT_PU, | ||
484 | GPIO_FN_FSIAISLD_PU, | ||
485 | |||
486 | /* end of GPIO */ | 373 | /* end of GPIO */ |
487 | GPIO_NR, | 374 | GPIO_NR, |
488 | }; | 375 | }; |
diff --git a/arch/sh/kernel/cpu/sh2a/pinmux-sh7203.c b/arch/sh/kernel/cpu/sh2a/pinmux-sh7203.c index 96c6c2634cb4..eef17dcc3a41 100644 --- a/arch/sh/kernel/cpu/sh2a/pinmux-sh7203.c +++ b/arch/sh/kernel/cpu/sh2a/pinmux-sh7203.c | |||
@@ -8,12 +8,23 @@ | |||
8 | * for more details. | 8 | * for more details. |
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include <linux/bug.h> | ||
11 | #include <linux/init.h> | 12 | #include <linux/init.h> |
12 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
14 | #include <linux/ioport.h> | ||
13 | #include <cpu/pfc.h> | 15 | #include <cpu/pfc.h> |
14 | 16 | ||
17 | static struct resource sh7203_pfc_resources[] = { | ||
18 | [0] = { | ||
19 | .start = 0xfffe3800, | ||
20 | .end = 0xfffe3a9f, | ||
21 | .flags = IORESOURCE_MEM, | ||
22 | }, | ||
23 | }; | ||
24 | |||
15 | static int __init plat_pinmux_setup(void) | 25 | static int __init plat_pinmux_setup(void) |
16 | { | 26 | { |
17 | return sh_pfc_register("pfc-sh7203", NULL, 0); | 27 | return sh_pfc_register("pfc-sh7203", sh7203_pfc_resources, |
28 | ARRAY_SIZE(sh7203_pfc_resources)); | ||
18 | } | 29 | } |
19 | arch_initcall(plat_pinmux_setup); | 30 | arch_initcall(plat_pinmux_setup); |
diff --git a/arch/sh/kernel/cpu/sh2a/pinmux-sh7264.c b/arch/sh/kernel/cpu/sh2a/pinmux-sh7264.c index b1b7c1bae127..569decbd6d93 100644 --- a/arch/sh/kernel/cpu/sh2a/pinmux-sh7264.c +++ b/arch/sh/kernel/cpu/sh2a/pinmux-sh7264.c | |||
@@ -8,12 +8,23 @@ | |||
8 | * for more details. | 8 | * for more details. |
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include <linux/bug.h> | ||
11 | #include <linux/init.h> | 12 | #include <linux/init.h> |
12 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
14 | #include <linux/ioport.h> | ||
13 | #include <cpu/pfc.h> | 15 | #include <cpu/pfc.h> |
14 | 16 | ||
17 | static struct resource sh7264_pfc_resources[] = { | ||
18 | [0] = { | ||
19 | .start = 0xfffe3800, | ||
20 | .end = 0xfffe393f, | ||
21 | .flags = IORESOURCE_MEM, | ||
22 | }, | ||
23 | }; | ||
24 | |||
15 | static int __init plat_pinmux_setup(void) | 25 | static int __init plat_pinmux_setup(void) |
16 | { | 26 | { |
17 | return sh_pfc_register("pfc-sh7264", NULL, 0); | 27 | return sh_pfc_register("pfc-sh7264", sh7264_pfc_resources, |
28 | ARRAY_SIZE(sh7264_pfc_resources)); | ||
18 | } | 29 | } |
19 | arch_initcall(plat_pinmux_setup); | 30 | arch_initcall(plat_pinmux_setup); |
diff --git a/arch/sh/kernel/cpu/sh2a/pinmux-sh7269.c b/arch/sh/kernel/cpu/sh2a/pinmux-sh7269.c index dc2a86830456..1825b0bd523d 100644 --- a/arch/sh/kernel/cpu/sh2a/pinmux-sh7269.c +++ b/arch/sh/kernel/cpu/sh2a/pinmux-sh7269.c | |||
@@ -13,8 +13,17 @@ | |||
13 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
14 | #include <cpu/pfc.h> | 14 | #include <cpu/pfc.h> |
15 | 15 | ||
16 | static struct resource sh7269_pfc_resources[] = { | ||
17 | [0] = { | ||
18 | .start = 0xfffe3800, | ||
19 | .end = 0xfffe391f, | ||
20 | .flags = IORESOURCE_MEM, | ||
21 | }, | ||
22 | }; | ||
23 | |||
16 | static int __init plat_pinmux_setup(void) | 24 | static int __init plat_pinmux_setup(void) |
17 | { | 25 | { |
18 | return sh_pfc_register("pfc-sh7269", NULL, 0); | 26 | return sh_pfc_register("pfc-sh7269", sh7269_pfc_resources, |
27 | ARRAY_SIZE(sh7269_pfc_resources)); | ||
19 | } | 28 | } |
20 | arch_initcall(plat_pinmux_setup); | 29 | arch_initcall(plat_pinmux_setup); |
diff --git a/arch/sh/kernel/cpu/sh3/pinmux-sh7720.c b/arch/sh/kernel/cpu/sh3/pinmux-sh7720.c index 7d3744ac7b08..26e90a66ebb7 100644 --- a/arch/sh/kernel/cpu/sh3/pinmux-sh7720.c +++ b/arch/sh/kernel/cpu/sh3/pinmux-sh7720.c | |||
@@ -8,13 +8,23 @@ | |||
8 | * for more details. | 8 | * for more details. |
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include <linux/bug.h> | ||
11 | #include <linux/init.h> | 12 | #include <linux/init.h> |
12 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
14 | #include <linux/ioport.h> | ||
13 | #include <cpu/pfc.h> | 15 | #include <cpu/pfc.h> |
14 | 16 | ||
17 | static struct resource sh7720_pfc_resources[] = { | ||
18 | [0] = { | ||
19 | .start = 0xa4050100, | ||
20 | .end = 0xa405016f, | ||
21 | .flags = IORESOURCE_MEM, | ||
22 | }, | ||
23 | }; | ||
24 | |||
15 | static int __init plat_pinmux_setup(void) | 25 | static int __init plat_pinmux_setup(void) |
16 | { | 26 | { |
17 | return sh_pfc_register("pfc-sh7720", NULL, 0); | 27 | return sh_pfc_register("pfc-sh7720", sh7720_pfc_resources, |
28 | ARRAY_SIZE(sh7720_pfc_resources)); | ||
18 | } | 29 | } |
19 | |||
20 | arch_initcall(plat_pinmux_setup); | 30 | arch_initcall(plat_pinmux_setup); |
diff --git a/arch/sh/kernel/cpu/sh4a/pinmux-sh7722.c b/arch/sh/kernel/cpu/sh4a/pinmux-sh7722.c index d9bcc4290997..271bbc864929 100644 --- a/arch/sh/kernel/cpu/sh4a/pinmux-sh7722.c +++ b/arch/sh/kernel/cpu/sh4a/pinmux-sh7722.c | |||
@@ -1,10 +1,20 @@ | |||
1 | #include <linux/bug.h> | ||
1 | #include <linux/init.h> | 2 | #include <linux/init.h> |
2 | #include <linux/kernel.h> | 3 | #include <linux/kernel.h> |
4 | #include <linux/ioport.h> | ||
3 | #include <cpu/pfc.h> | 5 | #include <cpu/pfc.h> |
4 | 6 | ||
7 | static struct resource sh7722_pfc_resources[] = { | ||
8 | [0] = { | ||
9 | .start = 0xa4050100, | ||
10 | .end = 0xa405018f, | ||
11 | .flags = IORESOURCE_MEM, | ||
12 | }, | ||
13 | }; | ||
14 | |||
5 | static int __init plat_pinmux_setup(void) | 15 | static int __init plat_pinmux_setup(void) |
6 | { | 16 | { |
7 | return sh_pfc_register("pfc-sh7722", NULL, 0); | 17 | return sh_pfc_register("pfc-sh7722", sh7722_pfc_resources, |
18 | ARRAY_SIZE(sh7722_pfc_resources)); | ||
8 | } | 19 | } |
9 | |||
10 | arch_initcall(plat_pinmux_setup); | 20 | arch_initcall(plat_pinmux_setup); |
diff --git a/arch/sh/kernel/cpu/sh4a/pinmux-sh7723.c b/arch/sh/kernel/cpu/sh4a/pinmux-sh7723.c index bcec7ad7f783..99c637d5bf7a 100644 --- a/arch/sh/kernel/cpu/sh4a/pinmux-sh7723.c +++ b/arch/sh/kernel/cpu/sh4a/pinmux-sh7723.c | |||
@@ -8,13 +8,23 @@ | |||
8 | * for more details. | 8 | * for more details. |
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include <linux/bug.h> | ||
11 | #include <linux/init.h> | 12 | #include <linux/init.h> |
12 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
14 | #include <linux/ioport.h> | ||
13 | #include <cpu/pfc.h> | 15 | #include <cpu/pfc.h> |
14 | 16 | ||
17 | static struct resource sh7723_pfc_resources[] = { | ||
18 | [0] = { | ||
19 | .start = 0xa4050100, | ||
20 | .end = 0xa405016f, | ||
21 | .flags = IORESOURCE_MEM, | ||
22 | }, | ||
23 | }; | ||
24 | |||
15 | static int __init plat_pinmux_setup(void) | 25 | static int __init plat_pinmux_setup(void) |
16 | { | 26 | { |
17 | return sh_pfc_register("pfc-sh7723", NULL, 0); | 27 | return sh_pfc_register("pfc-sh7723", sh7723_pfc_resources, |
28 | ARRAY_SIZE(sh7723_pfc_resources)); | ||
18 | } | 29 | } |
19 | |||
20 | arch_initcall(plat_pinmux_setup); | 30 | arch_initcall(plat_pinmux_setup); |
diff --git a/arch/sh/kernel/cpu/sh4a/pinmux-sh7724.c b/arch/sh/kernel/cpu/sh4a/pinmux-sh7724.c index 5c3541d6aed8..63be4749e341 100644 --- a/arch/sh/kernel/cpu/sh4a/pinmux-sh7724.c +++ b/arch/sh/kernel/cpu/sh4a/pinmux-sh7724.c | |||
@@ -13,12 +13,23 @@ | |||
13 | * for more details. | 13 | * for more details. |
14 | */ | 14 | */ |
15 | 15 | ||
16 | #include <linux/bug.h> | ||
16 | #include <linux/init.h> | 17 | #include <linux/init.h> |
17 | #include <linux/kernel.h> | 18 | #include <linux/kernel.h> |
19 | #include <linux/ioport.h> | ||
18 | #include <cpu/pfc.h> | 20 | #include <cpu/pfc.h> |
19 | 21 | ||
22 | static struct resource sh7724_pfc_resources[] = { | ||
23 | [0] = { | ||
24 | .start = 0xa4050100, | ||
25 | .end = 0xa405016f, | ||
26 | .flags = IORESOURCE_MEM, | ||
27 | }, | ||
28 | }; | ||
29 | |||
20 | static int __init plat_pinmux_setup(void) | 30 | static int __init plat_pinmux_setup(void) |
21 | { | 31 | { |
22 | return sh_pfc_register("pfc-sh7724", NULL, 0); | 32 | return sh_pfc_register("pfc-sh7724", sh7724_pfc_resources, |
33 | ARRAY_SIZE(sh7724_pfc_resources)); | ||
23 | } | 34 | } |
24 | arch_initcall(plat_pinmux_setup); | 35 | arch_initcall(plat_pinmux_setup); |
diff --git a/arch/sh/kernel/cpu/sh4a/pinmux-sh7757.c b/arch/sh/kernel/cpu/sh4a/pinmux-sh7757.c index cda6bd177b8c..567745d44221 100644 --- a/arch/sh/kernel/cpu/sh4a/pinmux-sh7757.c +++ b/arch/sh/kernel/cpu/sh4a/pinmux-sh7757.c | |||
@@ -13,12 +13,23 @@ | |||
13 | * for more details. | 13 | * for more details. |
14 | */ | 14 | */ |
15 | 15 | ||
16 | #include <linux/bug.h> | ||
16 | #include <linux/init.h> | 17 | #include <linux/init.h> |
17 | #include <linux/kernel.h> | 18 | #include <linux/kernel.h> |
19 | #include <linux/ioport.h> | ||
18 | #include <cpu/pfc.h> | 20 | #include <cpu/pfc.h> |
19 | 21 | ||
22 | static struct resource sh7757_pfc_resources[] = { | ||
23 | [0] = { | ||
24 | .start = 0xffec0000, | ||
25 | .end = 0xffec008f, | ||
26 | .flags = IORESOURCE_MEM, | ||
27 | }, | ||
28 | }; | ||
29 | |||
20 | static int __init plat_pinmux_setup(void) | 30 | static int __init plat_pinmux_setup(void) |
21 | { | 31 | { |
22 | return sh_pfc_register("pfc-sh7757", NULL, 0); | 32 | return sh_pfc_register("pfc-sh7757", sh7757_pfc_resources, |
33 | ARRAY_SIZE(sh7757_pfc_resources)); | ||
23 | } | 34 | } |
24 | arch_initcall(plat_pinmux_setup); | 35 | arch_initcall(plat_pinmux_setup); |
diff --git a/arch/sh/kernel/cpu/sh4a/pinmux-sh7785.c b/arch/sh/kernel/cpu/sh4a/pinmux-sh7785.c index 01055b809f64..e336ab8b5125 100644 --- a/arch/sh/kernel/cpu/sh4a/pinmux-sh7785.c +++ b/arch/sh/kernel/cpu/sh4a/pinmux-sh7785.c | |||
@@ -8,13 +8,23 @@ | |||
8 | * for more details. | 8 | * for more details. |
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include <linux/bug.h> | ||
11 | #include <linux/init.h> | 12 | #include <linux/init.h> |
12 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
14 | #include <linux/ioport.h> | ||
13 | #include <cpu/pfc.h> | 15 | #include <cpu/pfc.h> |
14 | 16 | ||
17 | static struct resource sh7785_pfc_resources[] = { | ||
18 | [0] = { | ||
19 | .start = 0xffe70000, | ||
20 | .end = 0xffe7008f, | ||
21 | .flags = IORESOURCE_MEM, | ||
22 | }, | ||
23 | }; | ||
24 | |||
15 | static int __init plat_pinmux_setup(void) | 25 | static int __init plat_pinmux_setup(void) |
16 | { | 26 | { |
17 | return sh_pfc_register("pfc-sh7785", NULL, 0); | 27 | return sh_pfc_register("pfc-sh7785", sh7785_pfc_resources, |
28 | ARRAY_SIZE(sh7785_pfc_resources)); | ||
18 | } | 29 | } |
19 | |||
20 | arch_initcall(plat_pinmux_setup); | 30 | arch_initcall(plat_pinmux_setup); |
diff --git a/arch/sh/kernel/cpu/sh4a/pinmux-sh7786.c b/arch/sh/kernel/cpu/sh4a/pinmux-sh7786.c index 3061778d55da..9a459556a2f7 100644 --- a/arch/sh/kernel/cpu/sh4a/pinmux-sh7786.c +++ b/arch/sh/kernel/cpu/sh4a/pinmux-sh7786.c | |||
@@ -13,13 +13,23 @@ | |||
13 | * for more details. | 13 | * for more details. |
14 | */ | 14 | */ |
15 | 15 | ||
16 | #include <linux/bug.h> | ||
16 | #include <linux/init.h> | 17 | #include <linux/init.h> |
17 | #include <linux/kernel.h> | 18 | #include <linux/kernel.h> |
19 | #include <linux/ioport.h> | ||
18 | #include <cpu/pfc.h> | 20 | #include <cpu/pfc.h> |
19 | 21 | ||
22 | static struct resource sh7786_pfc_resources[] = { | ||
23 | [0] = { | ||
24 | .start = 0xffcc0000, | ||
25 | .end = 0xffcc008f, | ||
26 | .flags = IORESOURCE_MEM, | ||
27 | }, | ||
28 | }; | ||
29 | |||
20 | static int __init plat_pinmux_setup(void) | 30 | static int __init plat_pinmux_setup(void) |
21 | { | 31 | { |
22 | return sh_pfc_register("pfc-sh7786", NULL, 0); | 32 | return sh_pfc_register("pfc-sh7786", sh7786_pfc_resources, |
33 | ARRAY_SIZE(sh7786_pfc_resources)); | ||
23 | } | 34 | } |
24 | |||
25 | arch_initcall(plat_pinmux_setup); | 35 | arch_initcall(plat_pinmux_setup); |
diff --git a/arch/sh/kernel/cpu/sh4a/pinmux-shx3.c b/arch/sh/kernel/cpu/sh4a/pinmux-shx3.c index ace84acc55ea..444bf25c60fa 100644 --- a/arch/sh/kernel/cpu/sh4a/pinmux-shx3.c +++ b/arch/sh/kernel/cpu/sh4a/pinmux-shx3.c | |||
@@ -7,12 +7,23 @@ | |||
7 | * License. See the file "COPYING" in the main directory of this archive | 7 | * License. See the file "COPYING" in the main directory of this archive |
8 | * for more details. | 8 | * for more details. |
9 | */ | 9 | */ |
10 | #include <linux/bug.h> | ||
10 | #include <linux/init.h> | 11 | #include <linux/init.h> |
11 | #include <linux/kernel.h> | 12 | #include <linux/kernel.h> |
13 | #include <linux/ioport.h> | ||
12 | #include <cpu/pfc.h> | 14 | #include <cpu/pfc.h> |
13 | 15 | ||
14 | static int __init shx3_pinmux_setup(void) | 16 | static struct resource shx3_pfc_resources[] = { |
17 | [0] = { | ||
18 | .start = 0xffc70000, | ||
19 | .end = 0xffc7001f, | ||
20 | .flags = IORESOURCE_MEM, | ||
21 | }, | ||
22 | }; | ||
23 | |||
24 | static int __init plat_pinmux_setup(void) | ||
15 | { | 25 | { |
16 | return sh_pfc_register("pfc-shx3", NULL, 0); | 26 | return sh_pfc_register("pfc-shx3", shx3_pfc_resources, |
27 | ARRAY_SIZE(shx3_pfc_resources)); | ||
17 | } | 28 | } |
18 | arch_initcall(shx3_pinmux_setup); | 29 | arch_initcall(plat_pinmux_setup); |