![Geert Uytterhoeven](/assets/img/avatar_default.png)
Despite using the same compatible values ("r8a7795"-based) because of historical reasons, R-Car H3 ES1.x (R8A77950) and R-Car H3 ES2.0+ (R8A77951) are really different SoCs, with different part numbers, and with different Pin Function Controller blocks. Reflect this in the pinctrl configuration, by replacing the existing CONFIG_PINCTRL_PFC_R8A7795 symbol by two new config symbols: CONFIG_PINCTRL_PFC_R8A77950 and CONFIG_PINCTRL_PFC_R8A77951. The latter are selected automatically, depending on the soon-to-be-introduced corresponding SoC-specific config options, and on the current common config option, to relax dependencies. Rename the individual pin control driver source files from pfc-r8a7795-es1.c to pfc-r8a77950.c, and from pfc-r8a7795.c to pfc-r8a77951.c, and make them truly independent. As both SoCs share the same compatible value, special care must be taken to match them to the correct pin control driver, if support for it is included in the running kernel. This will allow making support for early R-Car H3 revisions optional, the largest share of which is taken by the pin control driver. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> Tested-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Link: https://lore.kernel.org/r/20191230083156.19191-1-geert+renesas@glider.be
198 lines
5.9 KiB
Plaintext
198 lines
5.9 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0
|
|
#
|
|
# Renesas SH and SH Mobile PINCTRL drivers
|
|
#
|
|
|
|
config PINCTRL_SH_PFC
|
|
bool "Renesas SoC pin control support" if COMPILE_TEST && !(ARCH_RENESAS || SUPERH)
|
|
default y if ARCH_RENESAS || SUPERH
|
|
select PINMUX
|
|
select PINCONF
|
|
select GENERIC_PINCONF
|
|
select PINCTRL_PFC_EMEV2 if ARCH_EMEV2
|
|
select PINCTRL_PFC_R8A73A4 if ARCH_R8A73A4
|
|
select PINCTRL_PFC_R8A7740 if ARCH_R8A7740
|
|
select PINCTRL_PFC_R8A7743 if ARCH_R8A7743
|
|
select PINCTRL_PFC_R8A7744 if ARCH_R8A7744
|
|
select PINCTRL_PFC_R8A7745 if ARCH_R8A7745
|
|
select PINCTRL_PFC_R8A77470 if ARCH_R8A77470
|
|
select PINCTRL_PFC_R8A774A1 if ARCH_R8A774A1
|
|
select PINCTRL_PFC_R8A774B1 if ARCH_R8A774B1
|
|
select PINCTRL_PFC_R8A774C0 if ARCH_R8A774C0
|
|
select PINCTRL_PFC_R8A7778 if ARCH_R8A7778
|
|
select PINCTRL_PFC_R8A7779 if ARCH_R8A7779
|
|
select PINCTRL_PFC_R8A7790 if ARCH_R8A7790
|
|
select PINCTRL_PFC_R8A7791 if ARCH_R8A7791
|
|
select PINCTRL_PFC_R8A7792 if ARCH_R8A7792
|
|
select PINCTRL_PFC_R8A7793 if ARCH_R8A7793
|
|
select PINCTRL_PFC_R8A7794 if ARCH_R8A7794
|
|
select PINCTRL_PFC_R8A77950 if ARCH_R8A77950 || ARCH_R8A7795
|
|
select PINCTRL_PFC_R8A77951 if ARCH_R8A77951 || ARCH_R8A7795
|
|
select PINCTRL_PFC_R8A77960 if ARCH_R8A77960
|
|
select PINCTRL_PFC_R8A77961 if ARCH_R8A77961
|
|
select PINCTRL_PFC_R8A77965 if ARCH_R8A77965
|
|
select PINCTRL_PFC_R8A77970 if ARCH_R8A77970
|
|
select PINCTRL_PFC_R8A77980 if ARCH_R8A77980
|
|
select PINCTRL_PFC_R8A77990 if ARCH_R8A77990
|
|
select PINCTRL_PFC_R8A77995 if ARCH_R8A77995
|
|
select PINCTRL_PFC_SH7203 if CPU_SUBTYPE_SH7203
|
|
select PINCTRL_PFC_SH7264 if CPU_SUBTYPE_SH7264
|
|
select PINCTRL_PFC_SH7269 if CPU_SUBTYPE_SH7269
|
|
select PINCTRL_PFC_SH73A0 if ARCH_SH73A0
|
|
select PINCTRL_PFC_SH7720 if CPU_SUBTYPE_SH7720
|
|
select PINCTRL_PFC_SH7722 if CPU_SUBTYPE_SH7722
|
|
select PINCTRL_PFC_SH7723 if CPU_SUBTYPE_SH7723
|
|
select PINCTRL_PFC_SH7724 if CPU_SUBTYPE_SH7724
|
|
select PINCTRL_PFC_SH7734 if CPU_SUBTYPE_SH7734
|
|
select PINCTRL_PFC_SH7757 if CPU_SUBTYPE_SH7757
|
|
select PINCTRL_PFC_SH7785 if CPU_SUBTYPE_SH7785
|
|
select PINCTRL_PFC_SH7786 if CPU_SUBTYPE_SH7786
|
|
select PINCTRL_PFC_SHX3 if CPU_SUBTYPE_SHX3
|
|
help
|
|
This enables pin control drivers for Renesas SuperH and ARM platforms
|
|
|
|
config PINCTRL_SH_PFC_GPIO
|
|
select GPIOLIB
|
|
bool
|
|
help
|
|
This enables pin control and GPIO drivers for SH/SH Mobile platforms
|
|
|
|
config PINCTRL_SH_FUNC_GPIO
|
|
select PINCTRL_SH_PFC_GPIO
|
|
bool
|
|
help
|
|
This enables legacy function GPIOs for SH platforms
|
|
|
|
config PINCTRL_PFC_EMEV2
|
|
bool "Emma Mobile AV2 pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A73A4
|
|
bool "R-Mobile APE6 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_PFC_GPIO
|
|
|
|
config PINCTRL_PFC_R8A7740
|
|
bool "R-Mobile A1 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_PFC_GPIO
|
|
|
|
config PINCTRL_PFC_R8A7743
|
|
bool "RZ/G1M pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A7744
|
|
bool "RZ/G1N pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A7745
|
|
bool "RZ/G1E pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A77470
|
|
bool "RZ/G1C pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A774A1
|
|
bool "RZ/G2M pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A774B1
|
|
bool "RZ/G2N pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A774C0
|
|
bool "RZ/G2E pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A7778
|
|
bool "R-Car M1A pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A7779
|
|
bool "R-Car H1 pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A7790
|
|
bool "R-Car H2 pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A7791
|
|
bool "R-Car M2-W pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A7792
|
|
bool "R-Car V2H pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A7793
|
|
bool "R-Car M2-N pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A7794
|
|
bool "R-Car E2 pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A77950
|
|
bool "R-Car H3 ES1.x pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A77951
|
|
bool "R-Car H3 ES2.0+ pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A77960
|
|
bool "R-Car M3-W pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A77961
|
|
bool "R-Car M3-W+ pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A77965
|
|
bool "R-Car M3-N pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A77970
|
|
bool "R-Car V3M pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A77980
|
|
bool "R-Car V3H pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A77990
|
|
bool "R-Car E3 pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_R8A77995
|
|
bool "R-Car D3 pin control support" if COMPILE_TEST
|
|
|
|
config PINCTRL_PFC_SH7203
|
|
bool "SH7203 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_FUNC_GPIO
|
|
|
|
config PINCTRL_PFC_SH7264
|
|
bool "SH7264 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_FUNC_GPIO
|
|
|
|
config PINCTRL_PFC_SH7269
|
|
bool "SH7269 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_FUNC_GPIO
|
|
|
|
config PINCTRL_PFC_SH73A0
|
|
bool "SH-Mobile AG5 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_PFC_GPIO
|
|
select REGULATOR
|
|
|
|
config PINCTRL_PFC_SH7720
|
|
bool "SH7720 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_FUNC_GPIO
|
|
|
|
config PINCTRL_PFC_SH7722
|
|
bool "SH7722 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_FUNC_GPIO
|
|
|
|
config PINCTRL_PFC_SH7723
|
|
bool "SH-Mobile R2 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_FUNC_GPIO
|
|
|
|
config PINCTRL_PFC_SH7724
|
|
bool "SH-Mobile R2R pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_FUNC_GPIO
|
|
|
|
config PINCTRL_PFC_SH7734
|
|
bool "SH7734 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_FUNC_GPIO
|
|
|
|
config PINCTRL_PFC_SH7757
|
|
bool "SH7757 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_FUNC_GPIO
|
|
|
|
config PINCTRL_PFC_SH7785
|
|
bool "SH7785 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_FUNC_GPIO
|
|
|
|
config PINCTRL_PFC_SH7786
|
|
bool "SH7786 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_FUNC_GPIO
|
|
|
|
config PINCTRL_PFC_SHX3
|
|
bool "SH-X3 pin control support" if COMPILE_TEST
|
|
select PINCTRL_SH_FUNC_GPIO
|