# SPDX-License-Identifier: GPL-2.0-only
#
# VIA/Wondermedia PINCTRL drivers
#

if ARCH_VT8500 || COMPILE_TEST

config PINCTRL_WMT
	bool
	select PINMUX
	select GENERIC_PINCONF
	select GPIOLIB

config PINCTRL_VT8500
	bool "VIA VT8500 pin controller driver"
	depends on ARCH_WM8505 || COMPILE_TEST
	select PINCTRL_WMT
	help
	  Say yes here to support the gpio/pin control module on
	  VIA VT8500 SoCs.

config PINCTRL_WM8505
	bool "Wondermedia WM8505 pin controller driver"
	depends on ARCH_WM8505 || COMPILE_TEST
	select PINCTRL_WMT
	help
	  Say yes here to support the gpio/pin control module on
	  Wondermedia WM8505 SoCs.

config PINCTRL_WM8650
	bool "Wondermedia WM8650 pin controller driver"
	depends on ARCH_WM8505 || COMPILE_TEST
	select PINCTRL_WMT
	help
	  Say yes here to support the gpio/pin control module on
	  Wondermedia WM8650 SoCs.

config PINCTRL_WM8750
	bool "Wondermedia WM8750 pin controller driver"
	depends on ARCH_WM8750 || COMPILE_TEST
	select PINCTRL_WMT
	help
	  Say yes here to support the gpio/pin control module on
	  Wondermedia WM8750 SoCs.

config PINCTRL_WM8850
	bool "Wondermedia WM8850 pin controller driver"
	depends on ARCH_WM8850 || COMPILE_TEST
	select PINCTRL_WMT
	help
	  Say yes here to support the gpio/pin control module on
	  Wondermedia WM8850 SoCs.

endif
