]> asedeno.scripts.mit.edu Git - linux.git/blob - drivers/pinctrl/Kconfig
pinctrl: Renesas RZ/A1 pin and gpio controller
[linux.git] / drivers / pinctrl / Kconfig
1 #
2 # PINCTRL infrastructure and drivers
3 #
4
5 config PINCTRL
6         bool
7
8 menu "Pin controllers"
9         depends on PINCTRL
10
11 config GENERIC_PINCTRL_GROUPS
12         bool
13
14 config PINMUX
15         bool "Support pin multiplexing controllers" if COMPILE_TEST
16
17 config GENERIC_PINMUX_FUNCTIONS
18         bool
19         select PINMUX
20
21 config PINCONF
22         bool "Support pin configuration controllers" if COMPILE_TEST
23
24 config GENERIC_PINCONF
25         bool
26         select PINCONF
27
28 config DEBUG_PINCTRL
29         bool "Debug PINCTRL calls"
30         depends on DEBUG_KERNEL
31         help
32           Say Y here to add some extra checks and diagnostics to PINCTRL calls.
33
34 config PINCTRL_ADI2
35         bool "ADI pin controller driver"
36         depends on BLACKFIN
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 GPIOLIB
102         select GPIOLIB_IRQCHIP
103         select PINCONF
104         select GENERIC_PINCONF
105         help
106           driver for memory mapped GPIO functionality on AMD platforms
107           (x86 or arm).Most pins are usually muxed to some other
108           functionality by firmware,so only a small amount is available
109           for gpio use.
110
111           Requires ACPI/FDT device enumeration code to set up a platform
112           device.
113
114 config PINCTRL_DA850_PUPD
115         tristate "TI DA850/OMAP-L138/AM18XX pullup/pulldown groups"
116         depends on OF && (ARCH_DAVINCI_DA850 || COMPILE_TEST)
117         select PINCONF
118         select GENERIC_PINCONF
119         help
120           Driver for TI DA850/OMAP-L138/AM18XX pinconf. Used to control
121           pullup/pulldown pin groups.
122
123 config PINCTRL_DIGICOLOR
124         bool
125         depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST)
126         select PINMUX
127         select GENERIC_PINCONF
128
129 config PINCTRL_LANTIQ
130         bool
131         depends on LANTIQ
132         select PINMUX
133         select PINCONF
134
135 config PINCTRL_LPC18XX
136         bool "NXP LPC18XX/43XX SCU pinctrl driver"
137         depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
138         default ARCH_LPC18XX
139         select PINMUX
140         select GENERIC_PINCONF
141         help
142           Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU).
143
144 config PINCTRL_FALCON
145         bool
146         depends on SOC_FALCON
147         depends on PINCTRL_LANTIQ
148
149 config PINCTRL_MESON
150         bool
151         depends on OF
152         select PINMUX
153         select PINCONF
154         select GENERIC_PINCONF
155         select GPIOLIB
156         select OF_GPIO
157         select REGMAP_MMIO
158
159 config PINCTRL_OXNAS
160         bool
161         depends on OF
162         select PINMUX
163         select PINCONF
164         select GENERIC_PINCONF
165         select GPIOLIB
166         select OF_GPIO
167         select GPIOLIB_IRQCHIP
168         select MFD_SYSCON
169
170 config PINCTRL_ROCKCHIP
171         bool
172         select PINMUX
173         select GENERIC_PINCONF
174         select GENERIC_IRQ_CHIP
175         select MFD_SYSCON
176
177 config PINCTRL_RZA1
178         bool "Renesas RZ/A1 gpio and pinctrl driver"
179         depends on OF
180         depends on ARCH_R7S72100 || COMPILE_TEST
181         select GPIOLIB
182         select GENERIC_PINCTRL_GROUPS
183         select GENERIC_PINMUX_FUNCTIONS
184         select GENERIC_PINCONF
185         help
186           This selects pinctrl driver for Renesas RZ/A1 platforms.
187
188 config PINCTRL_SINGLE
189         tristate "One-register-per-pin type device tree based pinctrl driver"
190         depends on OF
191         select GENERIC_PINCTRL_GROUPS
192         select GENERIC_PINMUX_FUNCTIONS
193         select GENERIC_PINCONF
194         help
195           This selects the device tree based generic pinctrl driver.
196
197 config PINCTRL_SIRF
198         bool "CSR SiRFprimaII pin controller driver"
199         depends on ARCH_SIRF
200         select PINMUX
201         select PINCONF
202         select GENERIC_PINCONF
203         select GPIOLIB_IRQCHIP
204
205 config PINCTRL_SX150X
206         bool "Semtech SX150x I2C GPIO expander pinctrl driver"
207         depends on GPIOLIB && I2C=y
208         select PINMUX
209         select PINCONF
210         select GENERIC_PINCONF
211         select GPIOLIB_IRQCHIP
212         select REGMAP
213         help
214           Say yes here to provide support for Semtech SX150x-series I2C
215           GPIO expanders as pinctrl module.
216           Compatible models include:
217           - 8 bits:  sx1508q, sx1502q
218           - 16 bits: sx1509q, sx1506q
219
220 config PINCTRL_PISTACHIO
221         def_bool y if MACH_PISTACHIO
222         depends on GPIOLIB
223         select PINMUX
224         select GENERIC_PINCONF
225         select GPIOLIB_IRQCHIP
226         select OF_GPIO
227
228 config PINCTRL_ST
229         bool
230         depends on OF
231         select PINMUX
232         select PINCONF
233         select GPIOLIB_IRQCHIP
234
235 config PINCTRL_TZ1090
236         bool "Toumaz Xenif TZ1090 pin control driver"
237         depends on SOC_TZ1090
238         select PINMUX
239         select GENERIC_PINCONF
240
241 config PINCTRL_TZ1090_PDC
242         bool "Toumaz Xenif TZ1090 PDC pin control driver"
243         depends on SOC_TZ1090
244         select PINMUX
245         select PINCONF
246
247 config PINCTRL_U300
248         bool "U300 pin controller driver"
249         depends on ARCH_U300
250         select PINMUX
251         select GENERIC_PINCONF
252
253 config PINCTRL_COH901
254         bool "ST-Ericsson U300 COH 901 335/571 GPIO"
255         depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
256         select GPIOLIB_IRQCHIP
257         help
258           Say yes here to support GPIO interface on ST-Ericsson U300.
259           The names of the two IP block variants supported are
260           COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
261           ports of 8 GPIO pins each.
262
263 config PINCTRL_MAX77620
264         tristate "MAX77620/MAX20024 Pincontrol support"
265         depends on MFD_MAX77620 && OF
266         select PINMUX
267         select GENERIC_PINCONF
268         help
269           Say Yes here to enable Pin control support for Maxim PMIC MAX77620.
270           This PMIC has 8 GPIO pins that work as GPIO as well as special
271           function in alternate mode. This driver also configure push-pull,
272           open drain, FPS slots etc.
273
274 config PINCTRL_PALMAS
275         tristate "Pinctrl driver for the PALMAS Series MFD devices"
276         depends on OF && MFD_PALMAS
277         select PINMUX
278         select GENERIC_PINCONF
279         help
280           Palmas device supports the configuration of pins for different
281           functionality. This driver supports the pinmux, push-pull and
282           open drain configuration for the Palmas series devices like
283           TPS65913, TPS80036 etc.
284
285 config PINCTRL_PIC32
286         bool "Microchip PIC32 pin controller driver"
287         depends on OF
288         depends on MACH_PIC32
289         select PINMUX
290         select GENERIC_PINCONF
291         select GPIOLIB_IRQCHIP
292         select OF_GPIO
293         help
294           This is the pin controller and gpio driver for Microchip PIC32
295           microcontrollers. This option is selected automatically when specific
296           machine and arch are selected to build.
297
298 config PINCTRL_PIC32MZDA
299         def_bool y if PIC32MZDA
300         select PINCTRL_PIC32
301
302 config PINCTRL_ZYNQ
303         bool "Pinctrl driver for Xilinx Zynq"
304         depends on ARCH_ZYNQ
305         select PINMUX
306         select GENERIC_PINCONF
307         help
308           This selects the pinctrl driver for Xilinx Zynq.
309
310 source "drivers/pinctrl/aspeed/Kconfig"
311 source "drivers/pinctrl/bcm/Kconfig"
312 source "drivers/pinctrl/berlin/Kconfig"
313 source "drivers/pinctrl/freescale/Kconfig"
314 source "drivers/pinctrl/intel/Kconfig"
315 source "drivers/pinctrl/mvebu/Kconfig"
316 source "drivers/pinctrl/nomadik/Kconfig"
317 source "drivers/pinctrl/pxa/Kconfig"
318 source "drivers/pinctrl/qcom/Kconfig"
319 source "drivers/pinctrl/samsung/Kconfig"
320 source "drivers/pinctrl/sh-pfc/Kconfig"
321 source "drivers/pinctrl/spear/Kconfig"
322 source "drivers/pinctrl/stm32/Kconfig"
323 source "drivers/pinctrl/sunxi/Kconfig"
324 source "drivers/pinctrl/tegra/Kconfig"
325 source "drivers/pinctrl/ti/Kconfig"
326 source "drivers/pinctrl/uniphier/Kconfig"
327 source "drivers/pinctrl/vt8500/Kconfig"
328 source "drivers/pinctrl/mediatek/Kconfig"
329
330 config PINCTRL_XWAY
331         bool
332         depends on SOC_TYPE_XWAY
333         depends on PINCTRL_LANTIQ
334
335 config PINCTRL_TB10X
336         bool
337         depends on OF && ARC_PLAT_TB10X
338         select GPIOLIB
339
340 endmenu