]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blame - drivers/pinctrl/Kconfig
ceph: quota: add counter for snaprealms with quota
[mirror_ubuntu-bionic-kernel.git] / drivers / pinctrl / Kconfig
CommitLineData
2744e8af
LW
1#
2# PINCTRL infrastructure and drivers
3#
4
d219b924
PR
5menuconfig PINCTRL
6 bool "Pin controllers"
2744e8af 7
d219b924 8if PINCTRL
45f034ef 9
c033a718 10config GENERIC_PINCTRL_GROUPS
c7059c5a
TL
11 bool
12
2744e8af 13config PINMUX
244e95a7 14 bool "Support pin multiplexing controllers" if COMPILE_TEST
ae6b4d85 15
a76edc89
TL
16config GENERIC_PINMUX_FUNCTIONS
17 bool
18 select PINMUX
19
ae6b4d85 20config PINCONF
244e95a7 21 bool "Support pin configuration controllers" if COMPILE_TEST
2744e8af 22
394349f7
LW
23config GENERIC_PINCONF
24 bool
25 select PINCONF
26
2744e8af
LW
27config 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
e9a03add
SZ
33config PINCTRL_ADI2
34 bool "ADI pin controller driver"
1c363531
LW
35 depends on (BF54x || BF60x)
36 depends on !GPIO_ADI
e9a03add
SZ
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
00df0582
JN
44config 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
c8ce8782 55config PINCTRL_AS3722
9385f35d 56 tristate "Pinctrl and GPIO driver for ams AS3722 PMIC"
c8ce8782
LD
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
e9a03add
SZ
66config PINCTRL_BF54x
67 def_bool y if BF54x
68 select PINCTRL_ADI2
69
70config PINCTRL_BF60x
71 def_bool y if BF60x
72 select PINCTRL_ADI2
73
6732ae5c
JCPV
74config PINCTRL_AT91
75 bool "AT91 pinctrl driver"
76 depends on OF
77 depends on ARCH_AT91
78 select PINMUX
79 select PINCONF
80cc3732
AS
80 select GPIOLIB
81 select OF_GPIO
82 select GPIOLIB_IRQCHIP
6732ae5c
JCPV
83 help
84 Say Y here to enable the at91 pinctrl driver
85
77618084
LD
86config 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
dbad75dd 99config PINCTRL_AMD
337ea0fb 100 tristate "AMD GPIO pin control"
fd35b202 101 depends on HAS_IOMEM
e2a021d4 102 select GPIOLIB
dbad75dd 103 select GPIOLIB_IRQCHIP
83b31c2a 104 select PINMUX
dbad75dd
KX
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
1ff91f0a
DL
116config 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
38b0e507
BS
125config PINCTRL_DIGICOLOR
126 bool
127 depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST)
128 select PINMUX
129 select GENERIC_PINCONF
130
3f8c50c9
JC
131config PINCTRL_LANTIQ
132 bool
133 depends on LANTIQ
134 select PINMUX
135 select PINCONF
136
2f77ac93
JE
137config 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
e316cb2b
JC
146config PINCTRL_FALCON
147 bool
148 depends on SOC_FALCON
149 depends on PINCTRL_LANTIQ
150
06351d13
LW
151config PINCTRL_GEMINI
152 bool
153 depends on ARCH_GEMINI
154 default ARCH_GEMINI
155 select PINMUX
1c5b7f3c 156 select GENERIC_PINCONF
06351d13
LW
157 select MFD_SYSCON
158
64ac43e6
SR
159config PINCTRL_MCP23S08
160 tristate "Microchip MCP23xxx I/O expander"
64ac43e6 161 depends on SPI_MASTER || I2C
adeac775 162 depends on I2C || I2C=n
e2a021d4 163 select GPIOLIB
64ac43e6
SR
164 select GPIOLIB_IRQCHIP
165 select REGMAP_I2C if I2C
166 select REGMAP_SPI if SPI_MASTER
82039d24 167 select GENERIC_PINCONF
64ac43e6
SR
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
611dac1e
NA
174config 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
d3e51161
HS
185config PINCTRL_ROCKCHIP
186 bool
187 select PINMUX
188 select GENERIC_PINCONF
189 select GENERIC_IRQ_CHIP
751a99ab 190 select MFD_SYSCON
d3e51161 191
5a49b644
JM
192config 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
8b8b091b
TL
203config PINCTRL_SINGLE
204 tristate "One-register-per-pin type device tree based pinctrl driver"
205 depends on OF
fd35b202 206 depends on HAS_IOMEM
caeb774e 207 select GENERIC_PINCTRL_GROUPS
571aec4d 208 select GENERIC_PINMUX_FUNCTIONS
9dddb4df 209 select GENERIC_PINCONF
8b8b091b
TL
210 help
211 This selects the device tree based generic pinctrl driver.
212
3bece55a 213config PINCTRL_SIRF
a17272a4 214 bool "CSR SiRFprimaII pin controller driver"
d3e26f2f 215 depends on ARCH_SIRF
393daa81 216 select PINMUX
f9367793
WC
217 select PINCONF
218 select GENERIC_PINCONF
7420d2d0 219 select GPIOLIB_IRQCHIP
393daa81 220
9e80f906
NA
221config PINCTRL_SX150X
222 bool "Semtech SX150x I2C GPIO expander pinctrl driver"
e2a021d4 223 depends on I2C=y
9e80f906
NA
224 select PINMUX
225 select PINCONF
226 select GENERIC_PINCONF
e2a021d4 227 select GPIOLIB
9e80f906 228 select GPIOLIB_IRQCHIP
0db0f26c 229 select REGMAP
9e80f906
NA
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
cefc03e5
AB
237config 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
701016c0
SK
245config PINCTRL_ST
246 bool
247 depends on OF
248 select PINMUX
249 select PINCONF
130cbe30 250 select GPIOLIB_IRQCHIP
701016c0 251
d5025f9f
JH
252config PINCTRL_TZ1090
253 bool "Toumaz Xenif TZ1090 pin control driver"
254 depends on SOC_TZ1090
255 select PINMUX
256 select GENERIC_PINCONF
257
b58f0273
JH
258config PINCTRL_TZ1090_PDC
259 bool "Toumaz Xenif TZ1090 PDC pin control driver"
260 depends on SOC_TZ1090
261 select PINMUX
262 select PINCONF
263
3bece55a
LW
264config PINCTRL_U300
265 bool "U300 pin controller driver"
98da3529
LW
266 depends on ARCH_U300
267 select PINMUX
dc0b1aa3 268 select GENERIC_PINCONF
45f034ef 269
ca402d37
LW
270config PINCTRL_COH901
271 bool "ST-Ericsson U300 COH 901 335/571 GPIO"
3c94d1bb 272 depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
523dcce7 273 select GPIOLIB_IRQCHIP
ca402d37
LW
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
2df723d4
LD
280config PINCTRL_MAX77620
281 tristate "MAX77620/MAX20024 Pincontrol support"
24d6a91c 282 depends on MFD_MAX77620 && OF
79f28b9f 283 select PINMUX
2df723d4
LD
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
0a8d3e24 291config PINCTRL_PALMAS
767b8ce3 292 tristate "Pinctrl driver for the PALMAS Series MFD devices"
0a8d3e24 293 depends on OF && MFD_PALMAS
63ca8db7 294 select PINMUX
0a8d3e24
LD
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
2ba384e6
JH
302config 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
315config PINCTRL_PIC32MZDA
316 def_bool y if PIC32MZDA
317 select PINCTRL_PIC32
318
add958ce
SB
319config PINCTRL_ZYNQ
320 bool "Pinctrl driver for Xilinx Zynq"
321 depends on ARCH_ZYNQ
322 select PINMUX
323 select GENERIC_PINCONF
324 help
485dba27 325 This selects the pinctrl driver for Xilinx Zynq.
add958ce 326
b5c23aa4
PC
327config PINCTRL_INGENIC
328 bool "Pinctrl driver for the Ingenic JZ47xx SoCs"
329 default y
c504985e 330 depends on OF
b5c23aa4
PC
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
ea479996
JC
337config 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
4d3d0e42 346source "drivers/pinctrl/aspeed/Kconfig"
b17f2f9b 347source "drivers/pinctrl/bcm/Kconfig"
3de68d33 348source "drivers/pinctrl/berlin/Kconfig"
edad3b2a 349source "drivers/pinctrl/freescale/Kconfig"
5fae8b86 350source "drivers/pinctrl/intel/Kconfig"
06763c74 351source "drivers/pinctrl/mvebu/Kconfig"
3a198059 352source "drivers/pinctrl/nomadik/Kconfig"
4b15ec9d 353source "drivers/pinctrl/pxa/Kconfig"
69b78b8d 354source "drivers/pinctrl/qcom/Kconfig"
ebe629a3 355source "drivers/pinctrl/samsung/Kconfig"
6e54d8d2 356source "drivers/pinctrl/sh-pfc/Kconfig"
deda8287 357source "drivers/pinctrl/spear/Kconfig"
41d32cfc 358source "drivers/pinctrl/sprd/Kconfig"
aceb16dc 359source "drivers/pinctrl/stm32/Kconfig"
5f910777 360source "drivers/pinctrl/sunxi/Kconfig"
25cbac77 361source "drivers/pinctrl/tegra/Kconfig"
003910eb 362source "drivers/pinctrl/ti/Kconfig"
6e908892 363source "drivers/pinctrl/uniphier/Kconfig"
170c6152 364source "drivers/pinctrl/vt8500/Kconfig"
a6df410d 365source "drivers/pinctrl/mediatek/Kconfig"
cbff0c4d 366source "drivers/pinctrl/zte/Kconfig"
277d14eb 367source "drivers/pinctrl/meson/Kconfig"
deda8287 368
3f8c50c9
JC
369config PINCTRL_XWAY
370 bool
371 depends on SOC_TYPE_XWAY
372 depends on PINCTRL_LANTIQ
373
5aad0db1
CR
374config PINCTRL_TB10X
375 bool
b99e6fb8
LW
376 depends on OF && ARC_PLAT_TB10X
377 select GPIOLIB
5aad0db1 378
d219b924 379endif