menu "MediaTek pinctrl drivers"
	depends on ARCH_MEDIATEK || COMPILE_TEST

config EINT_MTK
	bool "MediaTek External Interrupt Support"
	depends on PINCTRL_LEOPARD || COMPILE_TEST
	depends on OF
	select IRQ_DOMAIN

config PINCTRL_MTK_COMMON
	bool
	depends on OF
	select PINMUX
	select GENERIC_PINCONF
	select GPIOLIB
	select OF_GPIO

# For ARMv7 SoCs
config PINCTRL_MT2701
	bool "Mediatek MT2701 pin control"
	depends on OF
	default MACH_MT2701 || MACH_MT8521P || MACH_MT7623
	select PINCTRL_MTK_COMMON

config PINCTRL_LEOPARD
	bool "MediaTek LEOPARD pin control"
	depends on MACH_LEOPARD || COMPILE_TEST
	depends on OF
	default MACH_LEOPARD
	select PINMUX
	select GENERIC_PINCONF
	select GENERIC_PINCTRL_GROUPS
	select GENERIC_PINMUX_FUNCTIONS
	select GPIOLIB
	select OF_GPIO
	select EINT_MTK

config PINCTRL_MT8135
	bool "Mediatek MT8135 pin control"
	depends on OF
	default MACH_MT8135
	select PINCTRL_MTK_COMMON

config PINCTRL_MT8127
	bool "Mediatek MT8127 pin control"
	depends on OF
	default MACH_MT8127
	select PINCTRL_MTK_COMMON

# For ARMv8 SoCs
config PINCTRL_MT2712
	bool "Mediatek MT2712 pin control"
	depends on OF
	depends on ARM64 || COMPILE_TEST
	default ARM64 && ARCH_MEDIATEK
	select PINCTRL_MTK_COMMON

config PINCTRL_MT7622
	bool "Mediatek MT7622 pin control"
	depends on OF
	depends on ARM64 || COMPILE_TEST || MACH_MT7622
	default ARM64 && ARCH_MEDIATEK || MACH_MT7622
	select PINCTRL_MTK_COMMON

config PINCTRL_MT8173
	bool "Mediatek MT8173 pin control"
	depends on OF
	depends on ARM64 || COMPILE_TEST
	default ARM64 && ARCH_MEDIATEK
	select PINCTRL_MTK_COMMON

# For PMIC
config PINCTRL_MT6397
	bool "Mediatek MT6397 pin control" if COMPILE_TEST && !MFD_MT6397
	depends on OF
	default MFD_MT6397
	select PINCTRL_MTK_COMMON

endmenu
