#
# PINCTRL infrastructure and drivers
#

config PINCTRL
	bool

if PINCTRL

menu "Pin controllers"
	depends on PINCTRL

config PINMUX
	bool "Support pin multiplexing controllers"

config PINCONF
	bool "Support pin configuration controllers"

config GENERIC_PINCONF
	bool
	select PINCONF

config DEBUG_PINCTRL
	bool "Debug PINCTRL calls"
	depends on DEBUG_KERNEL
	help
	  Say Y here to add some extra checks and diagnostics to PINCTRL calls.

config PINCTRL_ABX500
	bool "ST-Ericsson ABx500 family Mixed Signal Circuit gpio functions"
	depends on AB8500_CORE
	select GENERIC_PINCONF
	help
	  Select this to enable the ABx500 family IC GPIO driver

config PINCTRL_AB8500
	bool "AB8500 pin controller driver"
	depends on PINCTRL_ABX500 && ARCH_U8500

config PINCTRL_AB8540
	bool "AB8540 pin controller driver"
	depends on PINCTRL_ABX500 && ARCH_U8500

config PINCTRL_AB9540
	bool "AB9540 pin controller driver"
	depends on PINCTRL_ABX500 && ARCH_U8500

config PINCTRL_AB8505
	bool "AB8505 pin controller driver"
	depends on PINCTRL_ABX500 && ARCH_U8500

config PINCTRL_AT91
	bool "AT91 pinctrl driver"
	depends on OF
	depends on ARCH_AT91
	select PINMUX
	select PINCONF
	help
	  Say Y here to enable the at91 pinctrl driver

config PINCTRL_BCM2835
	bool
	select PINMUX
	select PINCONF

config PINCTRL_IMX
	bool
	select PINMUX
	select PINCONF

config PINCTRL_IMX35
	bool "IMX35 pinctrl driver"
	depends on OF
	depends on SOC_IMX35
	select PINCTRL_IMX
	help
	  Say Y here to enable the imx35 pinctrl driver

config PINCTRL_IMX51
	bool "IMX51 pinctrl driver"
	depends on OF
	depends on SOC_IMX51
	select PINCTRL_IMX
	help
	  Say Y here to enable the imx51 pinctrl driver

config PINCTRL_IMX53
	bool "IMX53 pinctrl driver"
	depends on OF
	depends on SOC_IMX53
	select PINCTRL_IMX
	help
	  Say Y here to enable the imx53 pinctrl driver

config PINCTRL_IMX6Q
	bool "IMX6Q/DL pinctrl driver"
	depends on OF
	depends on SOC_IMX6Q
	select PINCTRL_IMX
	help
	  Say Y here to enable the imx6q/dl pinctrl driver

config PINCTRL_IMX6SL
	bool "IMX6SL pinctrl driver"
	depends on OF
	depends on SOC_IMX6SL
	select PINCTRL_IMX
	help
	  Say Y here to enable the imx6sl pinctrl driver

config PINCTRL_LANTIQ
	bool
	depends on LANTIQ
	select PINMUX
	select PINCONF

config PINCTRL_FALCON
	bool
	depends on SOC_FALCON
	depends on PINCTRL_LANTIQ

config PINCTRL_MXS
	bool
	select PINMUX
	select PINCONF

config PINCTRL_IMX23
	bool
	select PINCTRL_MXS

config PINCTRL_IMX28
	bool
	select PINCTRL_MXS

config PINCTRL_NOMADIK
	bool "Nomadik pin controller driver"
	depends on ARCH_U8500 || ARCH_NOMADIK
	select PINMUX
	select PINCONF

config PINCTRL_STN8815
	bool "STN8815 pin controller driver"
	depends on PINCTRL_NOMADIK && ARCH_NOMADIK

config PINCTRL_DB8500
	bool "DB8500 pin controller driver"
	depends on PINCTRL_NOMADIK && ARCH_U8500

config PINCTRL_DB8540
	bool "DB8540 pin controller driver"
	depends on PINCTRL_NOMADIK && ARCH_U8500

config PINCTRL_SINGLE
	tristate "One-register-per-pin type device tree based pinctrl driver"
	depends on OF
	select PINMUX
	select PINCONF
	select GENERIC_PINCONF
	help
	  This selects the device tree based generic pinctrl driver.

config PINCTRL_SIRF
	bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
	depends on ARCH_SIRF
	select PINMUX

config PINCTRL_SUNXI
	bool
	select PINMUX
	select GENERIC_PINCONF

config PINCTRL_TEGRA
	bool
	select PINMUX
	select PINCONF

config PINCTRL_TEGRA20
	bool
	select PINCTRL_TEGRA

config PINCTRL_TEGRA30
	bool
	select PINCTRL_TEGRA

config PINCTRL_TEGRA114
	bool
	select PINCTRL_TEGRA

config PINCTRL_U300
	bool "U300 pin controller driver"
	depends on ARCH_U300
	select PINMUX
	select GENERIC_PINCONF

config PINCTRL_COH901
	bool "ST-Ericsson U300 COH 901 335/571 GPIO"
	depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
	help
	  Say yes here to support GPIO interface on ST-Ericsson U300.
	  The names of the two IP block variants supported are
	  COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
	  ports of 8 GPIO pins each.

config PINCTRL_SAMSUNG
	bool
	select PINMUX
	select PINCONF

config PINCTRL_EXYNOS
	bool "Pinctrl driver data for Samsung EXYNOS SoCs"
	depends on OF && GPIOLIB
	select PINCTRL_SAMSUNG

config PINCTRL_EXYNOS5440
	bool "Samsung EXYNOS5440 SoC pinctrl driver"
	select PINMUX
	select PINCONF

config PINCTRL_S3C64XX
	bool "Samsung S3C64XX SoC pinctrl driver"
	depends on ARCH_S3C64XX
	select PINCTRL_SAMSUNG

source "drivers/pinctrl/mvebu/Kconfig"
source "drivers/pinctrl/sh-pfc/Kconfig"
source "drivers/pinctrl/spear/Kconfig"
source "drivers/pinctrl/vt8500/Kconfig"

config PINCTRL_XWAY
	bool
	depends on SOC_TYPE_XWAY
	depends on PINCTRL_LANTIQ

endmenu

endif