1
linux/drivers/pinctrl/sh-pfc
Geert Uytterhoeven f2bc075627 pinctrl: sh-pfc: Split R-Car H3 support in two independent drivers
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
2020-01-08 09:56:28 +01:00
..
core.c pinctrl: sh-pfc: Split R-Car H3 support in two independent drivers 2020-01-08 09:56:28 +01:00
core.h pinctrl: sh-pfc: Convert to SPDX identifiers 2018-09-11 12:25:32 +02:00
gpio.c pinctrl: sh-pfc: Make legacy function GPIO handling less fragile 2019-12-09 09:43:02 +01:00
Kconfig pinctrl: sh-pfc: Split R-Car H3 support in two independent drivers 2020-01-08 09:56:28 +01:00
Makefile pinctrl: sh-pfc: Split R-Car H3 support in two independent drivers 2020-01-08 09:56:28 +01:00
pfc-emev2.c pinctrl: sh-pfc: emev2: Use new macros for non-GPIO pins 2019-06-04 11:19:04 +02:00
pfc-r8a73a4.c pinctrl: sh-pfc: Add SH_PFC_PIN_CFG_PULL_UP_DOWN shorthand 2019-05-21 11:07:29 +02:00
pfc-r8a7740.c pinctrl: sh-pfc: Add SH_PFC_PIN_CFG_PULL_UP_DOWN shorthand 2019-05-21 11:07:29 +02:00
pfc-r8a7778.c pinctrl: sh-pfc: r8a7778: Fix duplicate SDSELF_B and SD1_CLK_B 2019-12-31 09:57:40 +01:00
pfc-r8a7779.c pinctrl: sh-pfc: Rename 2-parameter CPU_ALL_PORT() variant 2019-05-21 11:07:29 +02:00
pfc-r8a7790.c pinctrl: sh-pfc: r8a7790: Use new macros for non-GPIO pins 2019-06-04 11:19:08 +02:00
pfc-r8a7791.c pinctrl: sh-pfc: Rename 2-parameter CPU_ALL_PORT() variant 2019-05-21 11:07:29 +02:00
pfc-r8a7792.c pinctrl: sh-pfc: Rename 2-parameter CPU_ALL_PORT() variant 2019-05-21 11:07:29 +02:00
pfc-r8a7794.c pinctrl: sh-pfc: Rename 2-parameter CPU_ALL_PORT() variant 2019-05-21 11:07:29 +02:00
pfc-r8a7796.c pinctrl: sh-pfc: r8a7796: Add R8A77961 PFC support 2019-11-01 13:42:52 +01:00
pfc-r8a77470.c pinctrl: sh-pfc: Rename 2-parameter CPU_ALL_PORT() variant 2019-05-21 11:07:29 +02:00
pfc-r8a77950.c pinctrl: sh-pfc: Split R-Car H3 support in two independent drivers 2020-01-08 09:56:28 +01:00
pfc-r8a77951.c pinctrl: sh-pfc: Split R-Car H3 support in two independent drivers 2020-01-08 09:56:28 +01:00
pfc-r8a77965.c pinctrl: sh-pfc: r8a77965: Fix DU_DOTCLKIN3 drive/bias control 2019-12-20 15:47:38 +01:00
pfc-r8a77970.c pinctrl: sh-pfc: r8a77970: Remove MMC_{CD,WP} 2019-05-21 11:07:29 +02:00
pfc-r8a77980.c This is the bulk of pin control changes for the v5.3 kernel 2019-07-13 15:02:27 -07:00
pfc-r8a77990.c Revert "pinctrl: sh-pfc: r8a77990: Fix MOD_SEL1 bit31 when using SIM0_D" 2019-10-01 09:52:52 +02:00
pfc-r8a77995.c pinctrl: sh-pfc: Rename 2-parameter CPU_ALL_PORT() variant 2019-05-21 11:07:29 +02:00
pfc-sh73a0.c pinctrl: sh-pfc: sh73a0: Use new macros for non-GPIO pins 2019-06-04 11:19:22 +02:00
pfc-sh7203.c pinctrl: sh-pfc: Absorb enum IDs in PINMUX_DATA_REG() macro 2019-04-02 09:58:01 +02:00
pfc-sh7264.c pinctrl: sh-pfc: sh7264: Fix CAN function GPIOs 2019-12-31 09:57:40 +01:00
pfc-sh7269.c pinctrl: sh-pfc: sh7269: Fix CAN function GPIOs 2019-12-31 09:57:40 +01:00
pfc-sh7720.c pinctrl: sh-pfc: Absorb enum IDs in PINMUX_DATA_REG() macro 2019-04-02 09:58:01 +02:00
pfc-sh7722.c pinctrl: sh-pfc: Absorb enum IDs in PINMUX_DATA_REG() macro 2019-04-02 09:58:01 +02:00
pfc-sh7723.c pinctrl: sh-pfc: Absorb enum IDs in PINMUX_DATA_REG() macro 2019-04-02 09:58:01 +02:00
pfc-sh7724.c pinctrl: sh-pfc: Absorb enum IDs in PINMUX_DATA_REG() macro 2019-04-02 09:58:01 +02:00
pfc-sh7734.c pinctrl: sh-pfc: sh7734: Fix duplicate TCLK1_B 2019-11-01 13:42:52 +01:00
pfc-sh7757.c pinctrl: sh-pfc: Absorb enum IDs in PINMUX_DATA_REG() macro 2019-04-02 09:58:01 +02:00
pfc-sh7785.c pinctrl: sh-pfc: Absorb enum IDs in PINMUX_DATA_REG() macro 2019-04-02 09:58:01 +02:00
pfc-sh7786.c pinctrl: sh-pfc: Absorb enum IDs in PINMUX_DATA_REG() macro 2019-04-02 09:58:01 +02:00
pfc-shx3.c pinctrl: sh-pfc: Absorb enum IDs in PINMUX_DATA_REG() macro 2019-04-02 09:58:01 +02:00
pinctrl.c pinctrl: sh-pfc: Unlock on error in sh_pfc_func_set_mux() 2019-09-12 12:59:43 +01:00
sh_pfc.h pinctrl: sh-pfc: Split R-Car H3 support in two independent drivers 2020-01-08 09:56:28 +01:00