2 # PINCTRL infrastructure and drivers
10 menu "Pin controllers"
14 bool "Support pin multiplexing controllers"
17 bool "Support pin configuration controllers"
19 config GENERIC_PINCONF
24 bool "Debug PINCTRL calls"
25 depends on DEBUG_KERNEL
27 Say Y here to add some extra checks and diagnostics to PINCTRL calls.
30 bool "ST-Ericsson ABx500 family Mixed Signal Circuit gpio functions"
31 depends on AB8500_CORE
32 select GENERIC_PINCONF
34 Select this to enable the ABx500 family IC GPIO driver
37 bool "AB8500 pin controller driver"
38 depends on PINCTRL_ABX500 && ARCH_U8500
41 bool "AB8540 pin controller driver"
42 depends on PINCTRL_ABX500 && ARCH_U8500
45 bool "AB9540 pin controller driver"
46 depends on PINCTRL_ABX500 && ARCH_U8500
49 bool "AB8505 pin controller driver"
50 depends on PINCTRL_ABX500 && ARCH_U8500
53 bool "ADI pin controller driver"
58 This is the pin controller and gpio driver for ADI BF54x, BF60x and
59 future processors. This option is selected automatically when specific
60 machine and arch are selected to build.
63 bool "Pinctrl and GPIO driver for ams AS3722 PMIC"
64 depends on MFD_AS3722 && GPIOLIB
66 select GENERIC_PINCONF
68 AS3722 device supports the configuration of GPIO pins for different
69 functionality. This driver supports the pinmux, push-pull and
70 open drain configuration for the GPIO pins of AS3722 devices. It also
71 supports the GPIO functionality through gpiolib.
82 bool "AT91 pinctrl driver"
88 Say Y here to enable the at91 pinctrl driver
90 config PINCTRL_BAYTRAIL
91 bool "Intel Baytrail GPIO pin control"
92 depends on GPIOLIB && ACPI && X86
95 driver for memory mapped GPIO functionality on Intel Baytrail
96 platforms. Supports 3 banks with 102, 28 and 44 gpios.
97 Most pins are usually muxed to some other functionality by firmware,
98 so only a small amount is available for gpio use.
100 Requires ACPI device enumeration code to set up a platform device.
102 config PINCTRL_BCM2835
113 bool "IMX35 pinctrl driver"
118 Say Y here to enable the imx35 pinctrl driver
121 bool "IMX51 pinctrl driver"
126 Say Y here to enable the imx51 pinctrl driver
129 bool "IMX53 pinctrl driver"
134 Say Y here to enable the imx53 pinctrl driver
137 bool "IMX6Q/DL pinctrl driver"
142 Say Y here to enable the imx6q/dl pinctrl driver
144 config PINCTRL_IMX6SL
145 bool "IMX6SL pinctrl driver"
147 depends on SOC_IMX6SL
150 Say Y here to enable the imx6sl pinctrl driver
153 bool "Freescale Vybrid VF610 pinctrl driver"
158 Say Y here to enable the Freescale Vybrid VF610 pinctrl driver
160 config PINCTRL_LANTIQ
166 config PINCTRL_FALCON
168 depends on SOC_FALCON
169 depends on PINCTRL_LANTIQ
184 config PINCTRL_NOMADIK
185 bool "Nomadik pin controller driver"
186 depends on ARCH_U8500 || ARCH_NOMADIK
190 config PINCTRL_STN8815
191 bool "STN8815 pin controller driver"
192 depends on PINCTRL_NOMADIK && ARCH_NOMADIK
194 config PINCTRL_DB8500
195 bool "DB8500 pin controller driver"
196 depends on PINCTRL_NOMADIK && ARCH_U8500
198 config PINCTRL_DB8540
199 bool "DB8540 pin controller driver"
200 depends on PINCTRL_NOMADIK && ARCH_U8500
202 config PINCTRL_ROCKCHIP
205 select GENERIC_PINCONF
206 select GENERIC_IRQ_CHIP
208 config PINCTRL_SINGLE
209 tristate "One-register-per-pin type device tree based pinctrl driver"
213 select GENERIC_PINCONF
215 This selects the device tree based generic pinctrl driver.
218 bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
225 select GENERIC_PINCONF
238 config PINCTRL_TEGRA20
242 config PINCTRL_TEGRA30
246 config PINCTRL_TEGRA114
250 config PINCTRL_TZ1090
251 bool "Toumaz Xenif TZ1090 pin control driver"
252 depends on SOC_TZ1090
254 select GENERIC_PINCONF
256 config PINCTRL_TZ1090_PDC
257 bool "Toumaz Xenif TZ1090 PDC pin control driver"
258 depends on SOC_TZ1090
263 bool "U300 pin controller driver"
266 select GENERIC_PINCONF
268 config PINCTRL_COH901
269 bool "ST-Ericsson U300 COH 901 335/571 GPIO"
270 depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
272 Say yes here to support GPIO interface on ST-Ericsson U300.
273 The names of the two IP block variants supported are
274 COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
275 ports of 8 GPIO pins each.
277 config PINCTRL_SAMSUNG
282 config PINCTRL_EXYNOS
283 bool "Pinctrl driver data for Samsung EXYNOS SoCs other than 5440"
284 depends on OF && GPIOLIB && (ARCH_EXYNOS || ARCH_S5PV210)
285 select PINCTRL_SAMSUNG
287 config PINCTRL_EXYNOS5440
288 bool "Samsung EXYNOS5440 SoC pinctrl driver"
289 depends on SOC_EXYNOS5440
293 config PINCTRL_PALMAS
294 bool "Pinctrl driver for the PALMAS Series MFD devices"
295 depends on OF && MFD_PALMAS
297 select GENERIC_PINCONF
299 Palmas device supports the configuration of pins for different
300 functionality. This driver supports the pinmux, push-pull and
301 open drain configuration for the Palmas series devices like
302 TPS65913, TPS80036 etc.
304 config PINCTRL_S3C24XX
305 bool "Samsung S3C24XX SoC pinctrl driver"
306 depends on ARCH_S3C24XX
307 select PINCTRL_SAMSUNG
309 config PINCTRL_S3C64XX
310 bool "Samsung S3C64XX SoC pinctrl driver"
311 depends on ARCH_S3C64XX
312 select PINCTRL_SAMSUNG
314 source "drivers/pinctrl/mvebu/Kconfig"
315 source "drivers/pinctrl/sh-pfc/Kconfig"
316 source "drivers/pinctrl/spear/Kconfig"
317 source "drivers/pinctrl/vt8500/Kconfig"
321 depends on SOC_TYPE_XWAY
322 depends on PINCTRL_LANTIQ
326 depends on ARC_PLAT_TB10X