From f2bc07562748c23609743ded0630ec965f9e4fec Mon Sep 17 00:00:00 2001 From: Geert Uytterhoeven Date: Mon, 30 Dec 2019 09:31:56 +0100 Subject: pinctrl: sh-pfc: Split R-Car H3 support in two independent drivers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 Reviewed-by: Yoshihiro Shimoda Reviewed-by: Niklas Söderlund Tested-by: Yoshihiro Shimoda Link: https://lore.kernel.org/r/20191230083156.19191-1-geert+renesas@glider.be --- drivers/pinctrl/sh-pfc/Kconfig | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'drivers/pinctrl/sh-pfc/Kconfig') diff --git a/drivers/pinctrl/sh-pfc/Kconfig b/drivers/pinctrl/sh-pfc/Kconfig index ecf3b045bf75..cf0e0dc42b84 100644 --- a/drivers/pinctrl/sh-pfc/Kconfig +++ b/drivers/pinctrl/sh-pfc/Kconfig @@ -26,7 +26,8 @@ config PINCTRL_SH_PFC select PINCTRL_PFC_R8A7792 if ARCH_R8A7792 select PINCTRL_PFC_R8A7793 if ARCH_R8A7793 select PINCTRL_PFC_R8A7794 if ARCH_R8A7794 - select PINCTRL_PFC_R8A7795 if ARCH_R8A7795 + 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 @@ -115,8 +116,11 @@ config PINCTRL_PFC_R8A7793 config PINCTRL_PFC_R8A7794 bool "R-Car E2 pin control support" if COMPILE_TEST -config PINCTRL_PFC_R8A7795 - bool "R-Car H3 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 -- cgit v1.2.3-59-g8ed1b