0e37f88d9a
The Allwinner SoCs have an IP module that handle both the muxing and the GPIOs. This IP has 8 banks of 32 bits, with a number of pins actually useful for each of these banks varying from one to another, and depending on the SoC used on the board. This driver only implements the pinctrl part, the gpio part will come eventually. Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Olof Johansson <olof@lixom.net> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
215 lines
3.9 KiB
Plaintext
215 lines
3.9 KiB
Plaintext
#
|
|
# 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_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 pinctrl driver"
|
|
depends on OF
|
|
depends on SOC_IMX6Q
|
|
select PINCTRL_IMX
|
|
help
|
|
Say Y here to enable the imx6q pinctrl driver
|
|
|
|
config PINCTRL_LANTIQ
|
|
bool
|
|
depends on LANTIQ
|
|
select PINMUX
|
|
select PINCONF
|
|
|
|
config PINCTRL_PXA3xx
|
|
bool
|
|
select PINMUX
|
|
|
|
config PINCTRL_FALCON
|
|
bool
|
|
depends on SOC_FALCON
|
|
depends on PINCTRL_LANTIQ
|
|
|
|
config PINCTRL_MMP2
|
|
bool "MMP2 pin controller driver"
|
|
depends on ARCH_MMP
|
|
select PINCTRL_PXA3xx
|
|
|
|
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_PXA168
|
|
bool "PXA168 pin controller driver"
|
|
depends on ARCH_MMP
|
|
select PINCTRL_PXA3xx
|
|
|
|
config PINCTRL_PXA910
|
|
bool "PXA910 pin controller driver"
|
|
depends on ARCH_MMP
|
|
select PINCTRL_PXA3xx
|
|
|
|
config PINCTRL_SINGLE
|
|
tristate "One-register-per-pin type device tree based pinctrl driver"
|
|
depends on OF
|
|
select PINMUX
|
|
select 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_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
|
|
depends on OF && GPIOLIB
|
|
select PINMUX
|
|
select PINCONF
|
|
|
|
config PINCTRL_EXYNOS4
|
|
bool "Pinctrl driver data for Exynos4 SoC"
|
|
depends on OF && GPIOLIB
|
|
select PINCTRL_SAMSUNG
|
|
|
|
config PINCTRL_EXYNOS5440
|
|
bool "Samsung EXYNOS5440 SoC pinctrl driver"
|
|
select PINMUX
|
|
select PINCONF
|
|
|
|
source "drivers/pinctrl/mvebu/Kconfig"
|
|
|
|
source "drivers/pinctrl/spear/Kconfig"
|
|
|
|
config PINCTRL_XWAY
|
|
bool
|
|
depends on SOC_TYPE_XWAY
|
|
depends on PINCTRL_LANTIQ
|
|
|
|
endmenu
|
|
|
|
endif
|