dbfe8ca259
Implements basic pinmux for the Nomadik pin controller. The plan is to split the existing singular pin config interface nmk_config_pin(), nmk_config_pins(), that will configure muxing and other settings at the same time, into two interfaces by splitting the code in pinmux and pinctrl and eventually deleting the old interface and its helper functions when all users are gone. nmk_gpio_set_mode() and nmk_gpio_get_mode() are two older interfaces for just configuring muxing/altfunctions that will also be replaced in the end. We take some extra care to handle the glitch-avoidance here, but it is simpler now since there is only one altsetting per pingroup so we know immediately if we need to avoid altfunc C glitches for a certain group. As part of the makeover implement the .request() and .free() calls on the GPIO chips and have them call back into the pinctrl layer to reserve GPIOs. ChangeLog v1->v2: - Rebased on pinctrl-mergebase-20120418 so we get the latest driver infrastructure where function count is done by a fixed value and we can drop a few range checks since this is now handled by the core. - Include a GPIO muxing hunk erroneously part of the pin config patch. Acked-by: Stephen Warren <swarren@wwwdotorg.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
97 lines
1.8 KiB
Text
97 lines
1.8 KiB
Text
#
|
|
# 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_PXA3xx
|
|
bool
|
|
select PINMUX
|
|
|
|
config PINCTRL_MMP2
|
|
bool "MMP2 pin controller driver"
|
|
depends on ARCH_MMP
|
|
select PINCTRL_PXA3xx
|
|
select PINCONF
|
|
|
|
config PINCTRL_NOMADIK
|
|
bool "Nomadik pin controller driver"
|
|
depends on ARCH_U8500
|
|
select PINMUX
|
|
|
|
config PINCTRL_DB8500
|
|
bool "DB8500 pin controller driver"
|
|
depends on PINCTRL_NOMADIK && ARCH_U8500
|
|
|
|
config PINCTRL_PXA168
|
|
bool "PXA168 pin controller driver"
|
|
depends on ARCH_MMP
|
|
select PINCTRL_PXA3xx
|
|
select PINCONF
|
|
|
|
config PINCTRL_PXA910
|
|
bool "PXA910 pin controller driver"
|
|
depends on ARCH_MMP
|
|
select PINCTRL_PXA3xx
|
|
select PINCONF
|
|
|
|
config PINCTRL_SIRF
|
|
bool "CSR SiRFprimaII pin controller driver"
|
|
depends on ARCH_PRIMA2
|
|
select PINMUX
|
|
|
|
config PINCTRL_TEGRA
|
|
bool
|
|
|
|
config PINCTRL_TEGRA20
|
|
bool
|
|
select PINMUX
|
|
select PINCONF
|
|
select PINCTRL_TEGRA
|
|
|
|
config PINCTRL_TEGRA30
|
|
bool
|
|
select PINMUX
|
|
select PINCONF
|
|
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 && PINMUX_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.
|
|
|
|
endmenu
|
|
|
|
endif
|