# SPDX-License-Identifier: GPL-2.0
#
# Renesas SH and SH Mobile PINCTRL drivers
#

menu "Renesas pinctrl drivers"

config PINCTRL_RENESAS
	bool "Renesas SoC pin control support" if COMPILE_TEST && !(ARCH_RENESAS || SUPERH)
	default y if ARCH_RENESAS || SUPERH
	select PINCTRL_PFC_EMEV2 if ARCH_EMEV2
	select PINCTRL_PFC_R8A73A4 if ARCH_R8A73A4
	select PINCTRL_PFC_R8A7740 if ARCH_R8A7740
	select PINCTRL_PFC_R8A7742 if ARCH_R8A7742
	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_R8A774E1 if ARCH_R8A774E1
	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_R8A77951 if ARCH_R8A77951
	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_R8A779A0 if ARCH_R8A779A0
	select PINCTRL_PFC_R8A779F0 if ARCH_R8A779F0
	select PINCTRL_PFC_R8A779G0 if ARCH_R8A779G0
	select PINCTRL_RZG2L if ARCH_RZG2L
	select PINCTRL_RZV2M if ARCH_R9A09G011
	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
	bool
	select GENERIC_PINCONF
	select PINMUX
	select PINCONF
	help
	  This enables common pin control functionality for EMMA Mobile, R-Car,
	  R-Mobile, RZ/G, SH, and SH-Mobile platforms.

config PINCTRL_SH_PFC_GPIO
	bool
	select GPIOLIB
	select PINCTRL_SH_PFC
	help
	  This enables pin control and GPIO drivers for SH/SH Mobile platforms

config PINCTRL_SH_FUNC_GPIO
	bool
	select PINCTRL_SH_PFC_GPIO
	help
	  This enables legacy function GPIOs for SH platforms

config PINCTRL_PFC_EMEV2
	bool "pin control support for Emma Mobile EV2" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A77995
	bool "pin control support for R-Car D3" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A7794
	bool "pin control support for R-Car E2" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A77990
	bool "pin control support for R-Car E3" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A7779
	bool "pin control support for R-Car H1" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A7790
	bool "pin control support for R-Car H2" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A77951
	bool "pin control support for R-Car H3 ES2.0+" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A7778
	bool "pin control support for R-Car M1A" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A7793
	bool "pin control support for R-Car M2-N" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A7791
	bool "pin control support for R-Car M2-W" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A77965
	bool "pin control support for R-Car M3-N" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A77960
	bool "pin control support for R-Car M3-W" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A77961
	bool "pin control support for R-Car M3-W+" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A779F0
	bool "pin control support for R-Car S4-8" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A7792
	bool "pin control support for R-Car V2H" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A77980
	bool "pin control support for R-Car V3H" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A77970
	bool "pin control support for R-Car V3M" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A779A0
	bool "pin control support for R-Car V3U" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A779G0
	bool "pin control support for R-Car V4H" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A7740
	bool "pin control support for R-Mobile A1" if COMPILE_TEST
	select PINCTRL_SH_PFC_GPIO

config PINCTRL_PFC_R8A73A4
	bool "pin control support for R-Mobile APE6" if COMPILE_TEST
	select PINCTRL_SH_PFC_GPIO

config PINCTRL_RZA1
	bool "pin control support for RZ/A1"
	depends on OF
	depends on ARCH_R7S72100 || COMPILE_TEST
	select GENERIC_PINCONF
	select GENERIC_PINCTRL_GROUPS
	select GENERIC_PINMUX_FUNCTIONS
	select GPIOLIB
	help
	  This selects pinctrl driver for Renesas RZ/A1 platforms.

config PINCTRL_RZA2
	bool "pin control support for RZ/A2"
	depends on OF
	depends on ARCH_R7S9210 || COMPILE_TEST
	select GENERIC_PINCTRL_GROUPS
	select GENERIC_PINMUX_FUNCTIONS
	select GPIOLIB
	help
	  This selects GPIO and pinctrl driver for Renesas RZ/A2 platforms.

config PINCTRL_RZG2L
	bool "pin control support for RZ/{G2L,G2UL,V2L}" if COMPILE_TEST
	depends on OF
	select GPIOLIB
	select GENERIC_PINCTRL_GROUPS
	select GENERIC_PINMUX_FUNCTIONS
	select GENERIC_PINCONF
	help
	  This selects GPIO and pinctrl driver for Renesas RZ/{G2L,G2UL,V2L}
	  platforms.

config PINCTRL_PFC_R8A77470
	bool "pin control support for RZ/G1C" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A7745
	bool "pin control support for RZ/G1E" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A7742
	bool "pin control support for RZ/G1H" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A7743
	bool "pin control support for RZ/G1M" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A7744
	bool "pin control support for RZ/G1N" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A774C0
	bool "pin control support for RZ/G2E" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A774E1
	bool "pin control support for RZ/G2H" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A774A1
	bool "pin control support for RZ/G2M" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_PFC_R8A774B1
	bool "pin control support for RZ/G2N" if COMPILE_TEST
	select PINCTRL_SH_PFC

config PINCTRL_RZN1
	bool "pin control support for RZ/N1"
	depends on OF
	depends on ARCH_RZN1 || COMPILE_TEST
	select GENERIC_PINCONF
	select PINMUX
	help
	  This selects pinctrl driver for Renesas RZ/N1 devices.

config PINCTRL_RZV2M
	bool "pin control support for RZ/V2M"
	depends on OF
	depends on ARCH_R9A09G011 || COMPILE_TEST
	select GPIOLIB
	select GENERIC_PINCTRL_GROUPS
	select GENERIC_PINMUX_FUNCTIONS
	select GENERIC_PINCONF
	help
	  This selects GPIO and pinctrl driver for Renesas RZ/V2M
	  platforms.

config PINCTRL_PFC_SH7203
	bool "pin control support for SH7203" if COMPILE_TEST
	select PINCTRL_SH_FUNC_GPIO

config PINCTRL_PFC_SH7264
	bool "pin control support for SH7264" if COMPILE_TEST
	select PINCTRL_SH_FUNC_GPIO

config PINCTRL_PFC_SH7269
	bool "pin control support for SH7269" if COMPILE_TEST
	select PINCTRL_SH_FUNC_GPIO

config PINCTRL_PFC_SH7720
	bool "pin control support for SH7720" if COMPILE_TEST
	select PINCTRL_SH_FUNC_GPIO

config PINCTRL_PFC_SH7722
	bool "pin control support for SH7722" if COMPILE_TEST
	select PINCTRL_SH_FUNC_GPIO

config PINCTRL_PFC_SH7734
	bool "pin control support for SH7734" if COMPILE_TEST
	select PINCTRL_SH_FUNC_GPIO

config PINCTRL_PFC_SH7757
	bool "pin control support for SH7757" if COMPILE_TEST
	select PINCTRL_SH_FUNC_GPIO

config PINCTRL_PFC_SH7785
	bool "pin control support for SH7785" if COMPILE_TEST
	select PINCTRL_SH_FUNC_GPIO

config PINCTRL_PFC_SH7786
	bool "pin control support for SH7786" if COMPILE_TEST
	select PINCTRL_SH_FUNC_GPIO

config PINCTRL_PFC_SH73A0
	bool "pin control support for SH-Mobile AG5" if COMPILE_TEST
	select PINCTRL_SH_PFC_GPIO
	select REGULATOR

config PINCTRL_PFC_SH7723
	bool "pin control support for SH-Mobile R2" if COMPILE_TEST
	select PINCTRL_SH_FUNC_GPIO

config PINCTRL_PFC_SH7724
	bool "pin control support for SH-Mobile R2R" if COMPILE_TEST
	select PINCTRL_SH_FUNC_GPIO

config PINCTRL_PFC_SHX3
	bool "pin control support for SH-X3" if COMPILE_TEST
	select PINCTRL_SH_FUNC_GPIO

endmenu