]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - drivers/pinctrl/Kconfig
ceph: quota: add counter for snaprealms with quota
[mirror_ubuntu-bionic-kernel.git] / drivers / pinctrl / Kconfig
1 #
2 # PINCTRL infrastructure and drivers
3 #
4
5 menuconfig PINCTRL
6 bool "Pin controllers"
7
8 if PINCTRL
9
10 config GENERIC_PINCTRL_GROUPS
11 bool
12
13 config PINMUX
14 bool "Support pin multiplexing controllers" if COMPILE_TEST
15
16 config GENERIC_PINMUX_FUNCTIONS
17 bool
18 select PINMUX
19
20 config PINCONF
21 bool "Support pin configuration controllers" if COMPILE_TEST
22
23 config GENERIC_PINCONF
24 bool
25 select PINCONF
26
27 config DEBUG_PINCTRL
28 bool "Debug PINCTRL calls"
29 depends on DEBUG_KERNEL
30 help
31 Say Y here to add some extra checks and diagnostics to PINCTRL calls.
32
33 config PINCTRL_ADI2
34 bool "ADI pin controller driver"
35 depends on (BF54x || BF60x)
36 depends on !GPIO_ADI
37 select PINMUX
38 select IRQ_DOMAIN
39 help
40 This is the pin controller and gpio driver for ADI BF54x, BF60x and
41 future processors. This option is selected automatically when specific
42 machine and arch are selected to build.
43
44 config PINCTRL_ARTPEC6
45 bool "Axis ARTPEC-6 pin controller driver"
46 depends on MACH_ARTPEC6
47 select PINMUX
48 select GENERIC_PINCONF
49 help
50 This is the driver for the Axis ARTPEC-6 pin controller. This driver
51 supports pin function multiplexing as well as pin bias and drive
52 strength configuration. Device tree integration instructions can be
53 found in Documentation/devicetree/bindings/pinctrl/axis,artpec6-pinctrl.txt
54
55 config PINCTRL_AS3722
56 tristate "Pinctrl and GPIO driver for ams AS3722 PMIC"
57 depends on MFD_AS3722 && GPIOLIB
58 select PINMUX
59 select GENERIC_PINCONF
60 help
61 AS3722 device supports the configuration of GPIO pins for different
62 functionality. This driver supports the pinmux, push-pull and
63 open drain configuration for the GPIO pins of AS3722 devices. It also
64 supports the GPIO functionality through gpiolib.
65
66 config PINCTRL_BF54x
67 def_bool y if BF54x
68 select PINCTRL_ADI2
69
70 config PINCTRL_BF60x
71 def_bool y if BF60x
72 select PINCTRL_ADI2
73
74 config PINCTRL_AT91
75 bool "AT91 pinctrl driver"
76 depends on OF
77 depends on ARCH_AT91
78 select PINMUX
79 select PINCONF
80 select GPIOLIB
81 select OF_GPIO
82 select GPIOLIB_IRQCHIP
83 help
84 Say Y here to enable the at91 pinctrl driver
85
86 config PINCTRL_AT91PIO4
87 bool "AT91 PIO4 pinctrl driver"
88 depends on OF
89 depends on ARCH_AT91
90 select PINMUX
91 select GENERIC_PINCONF
92 select GPIOLIB
93 select GPIOLIB_IRQCHIP
94 select OF_GPIO
95 help
96 Say Y here to enable the at91 pinctrl/gpio driver for Atmel PIO4
97 controller available on sama5d2 SoC.
98
99 config PINCTRL_AMD
100 tristate "AMD GPIO pin control"
101 depends on HAS_IOMEM
102 select GPIOLIB
103 select GPIOLIB_IRQCHIP
104 select PINMUX
105 select PINCONF
106 select GENERIC_PINCONF
107 help
108 driver for memory mapped GPIO functionality on AMD platforms
109 (x86 or arm).Most pins are usually muxed to some other
110 functionality by firmware,so only a small amount is available
111 for gpio use.
112
113 Requires ACPI/FDT device enumeration code to set up a platform
114 device.
115
116 config PINCTRL_DA850_PUPD
117 tristate "TI DA850/OMAP-L138/AM18XX pullup/pulldown groups"
118 depends on OF && (ARCH_DAVINCI_DA850 || COMPILE_TEST)
119 select PINCONF
120 select GENERIC_PINCONF
121 help
122 Driver for TI DA850/OMAP-L138/AM18XX pinconf. Used to control
123 pullup/pulldown pin groups.
124
125 config PINCTRL_DIGICOLOR
126 bool
127 depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST)
128 select PINMUX
129 select GENERIC_PINCONF
130
131 config PINCTRL_LANTIQ
132 bool
133 depends on LANTIQ
134 select PINMUX
135 select PINCONF
136
137 config PINCTRL_LPC18XX
138 bool "NXP LPC18XX/43XX SCU pinctrl driver"
139 depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
140 default ARCH_LPC18XX
141 select PINMUX
142 select GENERIC_PINCONF
143 help
144 Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU).
145
146 config PINCTRL_FALCON
147 bool
148 depends on SOC_FALCON
149 depends on PINCTRL_LANTIQ
150
151 config PINCTRL_GEMINI
152 bool
153 depends on ARCH_GEMINI
154 default ARCH_GEMINI
155 select PINMUX
156 select GENERIC_PINCONF
157 select MFD_SYSCON
158
159 config PINCTRL_MCP23S08
160 tristate "Microchip MCP23xxx I/O expander"
161 depends on SPI_MASTER || I2C
162 depends on I2C || I2C=n
163 select GPIOLIB
164 select GPIOLIB_IRQCHIP
165 select REGMAP_I2C if I2C
166 select REGMAP_SPI if SPI_MASTER
167 select GENERIC_PINCONF
168 help
169 SPI/I2C driver for Microchip MCP23S08/MCP23S17/MCP23008/MCP23017
170 I/O expanders.
171 This provides a GPIO interface supporting inputs and outputs.
172 The I2C versions of the chips can be used as interrupt-controller.
173
174 config PINCTRL_OXNAS
175 bool
176 depends on OF
177 select PINMUX
178 select PINCONF
179 select GENERIC_PINCONF
180 select GPIOLIB
181 select OF_GPIO
182 select GPIOLIB_IRQCHIP
183 select MFD_SYSCON
184
185 config PINCTRL_ROCKCHIP
186 bool
187 select PINMUX
188 select GENERIC_PINCONF
189 select GENERIC_IRQ_CHIP
190 select MFD_SYSCON
191
192 config PINCTRL_RZA1
193 bool "Renesas RZ/A1 gpio and pinctrl driver"
194 depends on OF
195 depends on ARCH_R7S72100 || COMPILE_TEST
196 select GPIOLIB
197 select GENERIC_PINCTRL_GROUPS
198 select GENERIC_PINMUX_FUNCTIONS
199 select GENERIC_PINCONF
200 help
201 This selects pinctrl driver for Renesas RZ/A1 platforms.
202
203 config PINCTRL_SINGLE
204 tristate "One-register-per-pin type device tree based pinctrl driver"
205 depends on OF
206 depends on HAS_IOMEM
207 select GENERIC_PINCTRL_GROUPS
208 select GENERIC_PINMUX_FUNCTIONS
209 select GENERIC_PINCONF
210 help
211 This selects the device tree based generic pinctrl driver.
212
213 config PINCTRL_SIRF
214 bool "CSR SiRFprimaII pin controller driver"
215 depends on ARCH_SIRF
216 select PINMUX
217 select PINCONF
218 select GENERIC_PINCONF
219 select GPIOLIB_IRQCHIP
220
221 config PINCTRL_SX150X
222 bool "Semtech SX150x I2C GPIO expander pinctrl driver"
223 depends on I2C=y
224 select PINMUX
225 select PINCONF
226 select GENERIC_PINCONF
227 select GPIOLIB
228 select GPIOLIB_IRQCHIP
229 select REGMAP
230 help
231 Say yes here to provide support for Semtech SX150x-series I2C
232 GPIO expanders as pinctrl module.
233 Compatible models include:
234 - 8 bits: sx1508q, sx1502q
235 - 16 bits: sx1509q, sx1506q
236
237 config PINCTRL_PISTACHIO
238 def_bool y if MACH_PISTACHIO
239 depends on GPIOLIB
240 select PINMUX
241 select GENERIC_PINCONF
242 select GPIOLIB_IRQCHIP
243 select OF_GPIO
244
245 config PINCTRL_ST
246 bool
247 depends on OF
248 select PINMUX
249 select PINCONF
250 select GPIOLIB_IRQCHIP
251
252 config PINCTRL_TZ1090
253 bool "Toumaz Xenif TZ1090 pin control driver"
254 depends on SOC_TZ1090
255 select PINMUX
256 select GENERIC_PINCONF
257
258 config PINCTRL_TZ1090_PDC
259 bool "Toumaz Xenif TZ1090 PDC pin control driver"
260 depends on SOC_TZ1090
261 select PINMUX
262 select PINCONF
263
264 config PINCTRL_U300
265 bool "U300 pin controller driver"
266 depends on ARCH_U300
267 select PINMUX
268 select GENERIC_PINCONF
269
270 config PINCTRL_COH901
271 bool "ST-Ericsson U300 COH 901 335/571 GPIO"
272 depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
273 select GPIOLIB_IRQCHIP
274 help
275 Say yes here to support GPIO interface on ST-Ericsson U300.
276 The names of the two IP block variants supported are
277 COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
278 ports of 8 GPIO pins each.
279
280 config PINCTRL_MAX77620
281 tristate "MAX77620/MAX20024 Pincontrol support"
282 depends on MFD_MAX77620 && OF
283 select PINMUX
284 select GENERIC_PINCONF
285 help
286 Say Yes here to enable Pin control support for Maxim PMIC MAX77620.
287 This PMIC has 8 GPIO pins that work as GPIO as well as special
288 function in alternate mode. This driver also configure push-pull,
289 open drain, FPS slots etc.
290
291 config PINCTRL_PALMAS
292 tristate "Pinctrl driver for the PALMAS Series MFD devices"
293 depends on OF && MFD_PALMAS
294 select PINMUX
295 select GENERIC_PINCONF
296 help
297 Palmas device supports the configuration of pins for different
298 functionality. This driver supports the pinmux, push-pull and
299 open drain configuration for the Palmas series devices like
300 TPS65913, TPS80036 etc.
301
302 config PINCTRL_PIC32
303 bool "Microchip PIC32 pin controller driver"
304 depends on OF
305 depends on MACH_PIC32
306 select PINMUX
307 select GENERIC_PINCONF
308 select GPIOLIB_IRQCHIP
309 select OF_GPIO
310 help
311 This is the pin controller and gpio driver for Microchip PIC32
312 microcontrollers. This option is selected automatically when specific
313 machine and arch are selected to build.
314
315 config PINCTRL_PIC32MZDA
316 def_bool y if PIC32MZDA
317 select PINCTRL_PIC32
318
319 config PINCTRL_ZYNQ
320 bool "Pinctrl driver for Xilinx Zynq"
321 depends on ARCH_ZYNQ
322 select PINMUX
323 select GENERIC_PINCONF
324 help
325 This selects the pinctrl driver for Xilinx Zynq.
326
327 config PINCTRL_INGENIC
328 bool "Pinctrl driver for the Ingenic JZ47xx SoCs"
329 default y
330 depends on OF
331 depends on MACH_INGENIC || COMPILE_TEST
332 select GENERIC_PINCONF
333 select GENERIC_PINCTRL_GROUPS
334 select GENERIC_PINMUX_FUNCTIONS
335 select REGMAP_MMIO
336
337 config PINCTRL_RK805
338 tristate "Pinctrl and GPIO driver for RK805 PMIC"
339 depends on MFD_RK808
340 select GPIOLIB
341 select PINMUX
342 select GENERIC_PINCONF
343 help
344 This selects the pinctrl driver for RK805.
345
346 source "drivers/pinctrl/aspeed/Kconfig"
347 source "drivers/pinctrl/bcm/Kconfig"
348 source "drivers/pinctrl/berlin/Kconfig"
349 source "drivers/pinctrl/freescale/Kconfig"
350 source "drivers/pinctrl/intel/Kconfig"
351 source "drivers/pinctrl/mvebu/Kconfig"
352 source "drivers/pinctrl/nomadik/Kconfig"
353 source "drivers/pinctrl/pxa/Kconfig"
354 source "drivers/pinctrl/qcom/Kconfig"
355 source "drivers/pinctrl/samsung/Kconfig"
356 source "drivers/pinctrl/sh-pfc/Kconfig"
357 source "drivers/pinctrl/spear/Kconfig"
358 source "drivers/pinctrl/sprd/Kconfig"
359 source "drivers/pinctrl/stm32/Kconfig"
360 source "drivers/pinctrl/sunxi/Kconfig"
361 source "drivers/pinctrl/tegra/Kconfig"
362 source "drivers/pinctrl/ti/Kconfig"
363 source "drivers/pinctrl/uniphier/Kconfig"
364 source "drivers/pinctrl/vt8500/Kconfig"
365 source "drivers/pinctrl/mediatek/Kconfig"
366 source "drivers/pinctrl/zte/Kconfig"
367 source "drivers/pinctrl/meson/Kconfig"
368
369 config PINCTRL_XWAY
370 bool
371 depends on SOC_TYPE_XWAY
372 depends on PINCTRL_LANTIQ
373
374 config PINCTRL_TB10X
375 bool
376 depends on OF && ARC_PLAT_TB10X
377 select GPIOLIB
378
379 endif