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.
71 bool "AT91 pinctrl driver"
77 Say Y here to enable the at91 pinctrl driver
79 config PINCTRL_BAYTRAIL
80 bool "Intel Baytrail GPIO pin control"
81 depends on GPIOLIB && ACPI && X86
84 driver for memory mapped GPIO functionality on Intel Baytrail
85 platforms. Supports 3 banks with 102, 28 and 44 gpios.
86 Most pins are usually muxed to some other functionality by firmware,
87 so only a small amount is available for gpio use.
89 Requires ACPI device enumeration code to set up a platform device.
91 config PINCTRL_BCM2835
102 bool "IMX35 pinctrl driver"
107 Say Y here to enable the imx35 pinctrl driver
110 bool "IMX51 pinctrl driver"
115 Say Y here to enable the imx51 pinctrl driver
118 bool "IMX53 pinctrl driver"
123 Say Y here to enable the imx53 pinctrl driver
126 bool "IMX6Q/DL pinctrl driver"
131 Say Y here to enable the imx6q/dl pinctrl driver
133 config PINCTRL_IMX6SL
134 bool "IMX6SL pinctrl driver"
136 depends on SOC_IMX6SL
139 Say Y here to enable the imx6sl pinctrl driver
142 bool "Freescale Vybrid VF610 pinctrl driver"
147 Say Y here to enable the Freescale Vybrid VF610 pinctrl driver
149 config PINCTRL_LANTIQ
155 config PINCTRL_FALCON
157 depends on SOC_FALCON
158 depends on PINCTRL_LANTIQ
173 config PINCTRL_NOMADIK
174 bool "Nomadik pin controller driver"
175 depends on ARCH_U8500 || ARCH_NOMADIK
179 config PINCTRL_STN8815
180 bool "STN8815 pin controller driver"
181 depends on PINCTRL_NOMADIK && ARCH_NOMADIK
183 config PINCTRL_DB8500
184 bool "DB8500 pin controller driver"
185 depends on PINCTRL_NOMADIK && ARCH_U8500
187 config PINCTRL_DB8540
188 bool "DB8540 pin controller driver"
189 depends on PINCTRL_NOMADIK && ARCH_U8500
191 config PINCTRL_ROCKCHIP
194 select GENERIC_PINCONF
195 select GENERIC_IRQ_CHIP
197 config PINCTRL_SINGLE
198 tristate "One-register-per-pin type device tree based pinctrl driver"
202 select GENERIC_PINCONF
204 This selects the device tree based generic pinctrl driver.
207 bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
214 select GENERIC_PINCONF
227 config PINCTRL_TEGRA20
231 config PINCTRL_TEGRA30
235 config PINCTRL_TEGRA114
239 config PINCTRL_TZ1090
240 bool "Toumaz Xenif TZ1090 pin control driver"
241 depends on SOC_TZ1090
243 select GENERIC_PINCONF
245 config PINCTRL_TZ1090_PDC
246 bool "Toumaz Xenif TZ1090 PDC pin control driver"
247 depends on SOC_TZ1090
252 bool "U300 pin controller driver"
255 select GENERIC_PINCONF
257 config PINCTRL_COH901
258 bool "ST-Ericsson U300 COH 901 335/571 GPIO"
259 depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
261 Say yes here to support GPIO interface on ST-Ericsson U300.
262 The names of the two IP block variants supported are
263 COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
264 ports of 8 GPIO pins each.
266 config PINCTRL_SAMSUNG
271 config PINCTRL_EXYNOS
272 bool "Pinctrl driver data for Samsung EXYNOS SoCs other than 5440"
273 depends on OF && GPIOLIB && (ARCH_EXYNOS || ARCH_S5PV210)
274 select PINCTRL_SAMSUNG
276 config PINCTRL_EXYNOS5440
277 bool "Samsung EXYNOS5440 SoC pinctrl driver"
278 depends on SOC_EXYNOS5440
282 config PINCTRL_PALMAS
283 bool "Pinctrl driver for the PALMAS Series MFD devices"
284 depends on OF && MFD_PALMAS
286 select GENERIC_PINCONF
288 Palmas device supports the configuration of pins for different
289 functionality. This driver supports the pinmux, push-pull and
290 open drain configuration for the Palmas series devices like
291 TPS65913, TPS80036 etc.
293 config PINCTRL_S3C24XX
294 bool "Samsung S3C24XX SoC pinctrl driver"
295 depends on ARCH_S3C24XX
296 select PINCTRL_SAMSUNG
298 config PINCTRL_S3C64XX
299 bool "Samsung S3C64XX SoC pinctrl driver"
300 depends on ARCH_S3C64XX
301 select PINCTRL_SAMSUNG
303 source "drivers/pinctrl/mvebu/Kconfig"
304 source "drivers/pinctrl/sh-pfc/Kconfig"
305 source "drivers/pinctrl/spear/Kconfig"
306 source "drivers/pinctrl/vt8500/Kconfig"
310 depends on SOC_TYPE_XWAY
311 depends on PINCTRL_LANTIQ