diff options
| author | Olof Johansson <olof@lixom.net> | 2013-06-11 03:21:46 -0400 |
|---|---|---|
| committer | Olof Johansson <olof@lixom.net> | 2013-06-11 03:21:46 -0400 |
| commit | 620fa619a9aace41c21330d38fa045576ce3caff (patch) | |
| tree | 100fd9e4a39aaa6378ef948f8dd063ab1e4240c4 | |
| parent | ed3d27feccacf38299c244e9c0912e884a752b1d (diff) | |
| parent | 5fcf4a3c3a5bc08bf72a50ef1332501a3c1b96bb (diff) | |
Merge tag 'renesas-pinmux-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc
From Simon Horman:
Renesas ARM based SoC pinmux and GPIO update for v3.11
SH-PFC:
* Entries for INTC external IRQs
* Remove dependency on GPIOLIB
* PFC support for r8a7790 SoC
* Pinmux support for r8a7778 SoC
* Increase pin group and function coverage for sh7372, r8a7740,
r8a7778, r8a7779 and r8a7790 SoCs
* Use pinctrl mapping on mackerel, ap4evb, armadillo800eva,
bonito, bockw, lager boards
* Use RCAR_GP_PIN macro in marzen board
* Remove unused GPIOs for sh7372, sh73a0, r8a7740 and r8a7790 SoCs
* Add bias (pull-up/down) pinconf support for r8a7740 SoC
* Add VCCQ support for sh73a0
GPIO car:
* Add RCAR_GP_PIN macro
* Add support for IRQ_TYPE_EDGE_BOTH
* Make the platform data gpio_base field signed
The GPIO changes have been included as the RCAR_GP_PIN and
IRQ_TYPE_EDGE_BOTH changes are depended on by SH-PFC changes.
* tag 'renesas-pinmux-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: (132 commits)
ARM: shmobile: marzen: Use RCAR_GP_PIN macro
ARM: shmobile: lager: Initialize pinmux
ARM: shmobile: bockw: add pinctrl support
ARM: shmobile: kzm9g: tidyup FSI pinctrl
ARM: shmobile: r8a7740 pinmux platform device cleanup
ARM: shmobile: r8a7790: Configure R-Car GPIO for IRQ_TYPE_EDGE_BOTH
pinctrl: sh-pfc: r8a7779: Fix missing MOD_SEL2 entry
Revert "ARM: shmobile: Disallow PINCTRL without GPIOLIB"
pinctrl: r8a7790: add pinmux data for MMCIF and SDHI interfaces
sh-pfc: r8a7778: add MMCIF pin groups
sh-pfc: r8a7778: add HSPI pin groups
sh-pfc: r8a7778: add I2C pin groups
pinctrl: sh-pfc: fix a typo in pfc-r8a7790
pinctrl: sh-pfc: fix r8a7790 Function Select register tables
sh-pfc: r8a7778: fixup IRQ1A settings
sh-pfc: r8a7779: add Ether pin groups
sh-pfc: r8a7778: add Ether pin groups
sh-pfc: r8a7778: add VIN pin groups
sh-pfc: sh73a0: Remove function GPIOs
sh-pfc: r8a7790: Add TPU pin groups and functions
...
33 files changed, 10335 insertions, 2731 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 20bb83fca873..0435a6aaad1c 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig | |||
| @@ -646,7 +646,7 @@ config ARCH_SHMOBILE | |||
| 646 | select MULTI_IRQ_HANDLER | 646 | select MULTI_IRQ_HANDLER |
| 647 | select NEED_MACH_MEMORY_H | 647 | select NEED_MACH_MEMORY_H |
| 648 | select NO_IOPORT | 648 | select NO_IOPORT |
| 649 | select PINCTRL if ARCH_WANT_OPTIONAL_GPIOLIB | 649 | select PINCTRL |
| 650 | select PM_GENERIC_DOMAINS if PM | 650 | select PM_GENERIC_DOMAINS if PM |
| 651 | select SPARSE_IRQ | 651 | select SPARSE_IRQ |
| 652 | help | 652 | help |
diff --git a/arch/arm/mach-shmobile/Kconfig b/arch/arm/mach-shmobile/Kconfig index 1a517e2fe449..06da4d36bc7c 100644 --- a/arch/arm/mach-shmobile/Kconfig +++ b/arch/arm/mach-shmobile/Kconfig | |||
| @@ -37,6 +37,7 @@ config ARCH_R8A7740 | |||
| 37 | 37 | ||
| 38 | config ARCH_R8A7778 | 38 | config ARCH_R8A7778 |
| 39 | bool "R-Car M1 (R8A77780)" | 39 | bool "R-Car M1 (R8A77780)" |
| 40 | select ARCH_WANT_OPTIONAL_GPIOLIB | ||
| 40 | select CPU_V7 | 41 | select CPU_V7 |
| 41 | select SH_CLK_CPG | 42 | select SH_CLK_CPG |
| 42 | select ARM_GIC | 43 | select ARM_GIC |
diff --git a/arch/arm/mach-shmobile/board-ap4evb.c b/arch/arm/mach-shmobile/board-ap4evb.c index 45f78cadec1d..297bf5eec5ab 100644 --- a/arch/arm/mach-shmobile/board-ap4evb.c +++ b/arch/arm/mach-shmobile/board-ap4evb.c | |||
| @@ -1026,10 +1026,8 @@ out: | |||
| 1026 | 1026 | ||
| 1027 | /* TouchScreen */ | 1027 | /* TouchScreen */ |
| 1028 | #ifdef CONFIG_AP4EVB_QHD | 1028 | #ifdef CONFIG_AP4EVB_QHD |
| 1029 | # define GPIO_TSC_IRQ GPIO_FN_IRQ28_123 | ||
| 1030 | # define GPIO_TSC_PORT 123 | 1029 | # define GPIO_TSC_PORT 123 |
| 1031 | #else /* WVGA */ | 1030 | #else /* WVGA */ |
| 1032 | # define GPIO_TSC_IRQ GPIO_FN_IRQ7_40 | ||
| 1033 | # define GPIO_TSC_PORT 40 | 1031 | # define GPIO_TSC_PORT 40 |
| 1034 | #endif | 1032 | #endif |
| 1035 | 1033 | ||
| @@ -1037,22 +1035,12 @@ out: | |||
| 1037 | #define IRQ7 evt2irq(0x02e0) /* IRQ7A */ | 1035 | #define IRQ7 evt2irq(0x02e0) /* IRQ7A */ |
| 1038 | static int ts_get_pendown_state(void) | 1036 | static int ts_get_pendown_state(void) |
| 1039 | { | 1037 | { |
| 1040 | int val; | 1038 | return !gpio_get_value(GPIO_TSC_PORT); |
| 1041 | |||
| 1042 | gpio_free(GPIO_TSC_IRQ); | ||
| 1043 | |||
| 1044 | gpio_request_one(GPIO_TSC_PORT, GPIOF_IN, NULL); | ||
| 1045 | |||
| 1046 | val = gpio_get_value(GPIO_TSC_PORT); | ||
| 1047 | |||
| 1048 | gpio_request(GPIO_TSC_IRQ, NULL); | ||
| 1049 | |||
| 1050 | return !val; | ||
| 1051 | } | 1039 | } |
| 1052 | 1040 | ||
| 1053 | static int ts_init(void) | 1041 | static int ts_init(void) |
| 1054 | { | 1042 | { |
| 1055 | gpio_request(GPIO_TSC_IRQ, NULL); | 1043 | gpio_request_one(GPIO_TSC_PORT, GPIOF_IN, NULL); |
| 1056 | 1044 | ||
| 1057 | return 0; | 1045 | return 0; |
| 1058 | } | 1046 | } |
| @@ -1086,11 +1074,42 @@ static struct i2c_board_info i2c1_devices[] = { | |||
| 1086 | 1074 | ||
| 1087 | 1075 | ||
| 1088 | static const struct pinctrl_map ap4evb_pinctrl_map[] = { | 1076 | static const struct pinctrl_map ap4evb_pinctrl_map[] = { |
| 1077 | /* CEU */ | ||
| 1078 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_ceu.0", "pfc-sh7372", | ||
| 1079 | "ceu_clk_0", "ceu"), | ||
| 1080 | /* FSIA (AK4643) */ | ||
| 1081 | PIN_MAP_MUX_GROUP_DEFAULT("asoc-simple-card.0", "pfc-sh7372", | ||
| 1082 | "fsia_sclk_in", "fsia"), | ||
| 1083 | PIN_MAP_MUX_GROUP_DEFAULT("asoc-simple-card.0", "pfc-sh7372", | ||
| 1084 | "fsia_data_in", "fsia"), | ||
| 1085 | PIN_MAP_MUX_GROUP_DEFAULT("asoc-simple-card.0", "pfc-sh7372", | ||
| 1086 | "fsia_data_out", "fsia"), | ||
| 1087 | /* FSIB (HDMI) */ | ||
| 1088 | PIN_MAP_MUX_GROUP_DEFAULT("asoc-simple-card.1", "pfc-sh7372", | ||
| 1089 | "fsib_mclk_in", "fsib"), | ||
| 1090 | /* HDMI */ | ||
| 1091 | PIN_MAP_MUX_GROUP_DEFAULT("sh-mobile-hdmi", "pfc-sh7372", | ||
| 1092 | "hdmi", "hdmi"), | ||
| 1093 | /* KEYSC */ | ||
| 1094 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc", "pfc-sh7372", | ||
| 1095 | "keysc_in04_0", "keysc"), | ||
| 1096 | PIN_MAP_MUX_GROUP_DEFAULT("sh_keysc", "pfc-sh7372", | ||
| 1097 | "keysc_out5", "keysc"), | ||
| 1098 | #ifndef CONFIG_AP4EVB_QHD | ||
| 1099 | /* LCDC */ | ||
| 1100 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_lcdc_fb.0", "pfc-sh7372", | ||
| 1101 | "lcd_data18", "lcd"), | ||
| 1102 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_lcdc_fb.0", "pfc-sh7372", | ||
| 1103 | "lcd_sync", "lcd"), | ||
| 1104 | #endif | ||
| 1089 | /* MMCIF */ | 1105 | /* MMCIF */ |
| 1090 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh7372", | 1106 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh7372", |
| 1091 | "mmc0_data8_0", "mmc0"), | 1107 | "mmc0_data8_0", "mmc0"), |
| 1092 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh7372", | 1108 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mmcif.0", "pfc-sh7372", |
| 1093 | "mmc0_ctrl_0", "mmc0"), | 1109 | "mmc0_ctrl_0", "mmc0"), |
| 1110 | /* SCIFA0 */ | ||
| 1111 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.0", "pfc-sh7372", | ||
| 1112 | "scifa0_data", "scifa0"), | ||
| 1094 | /* SDHI0 */ | 1113 | /* SDHI0 */ |
| 1095 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh7372", | 1114 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-sh7372", |
| 1096 | "sdhi0_data4", "sdhi0"), | 1115 | "sdhi0_data4", "sdhi0"), |
| @@ -1105,6 +1124,26 @@ static const struct pinctrl_map ap4evb_pinctrl_map[] = { | |||
| 1105 | "sdhi1_data4", "sdhi1"), | 1124 | "sdhi1_data4", "sdhi1"), |
| 1106 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-sh7372", | 1125 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.1", "pfc-sh7372", |
| 1107 | "sdhi1_ctrl", "sdhi1"), | 1126 | "sdhi1_ctrl", "sdhi1"), |
| 1127 | /* SMSC911X */ | ||
| 1128 | PIN_MAP_MUX_GROUP_DEFAULT("smsc911x", "pfc-sh7372", | ||
| 1129 | "bsc_cs5a", "bsc"), | ||
| 1130 | PIN_MAP_MUX_GROUP_DEFAULT("smsc911x", "pfc-sh7372", | ||
