Merge branch 'work.sendmsg' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux-2.6-microblaze.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_AS3722
45         tristate "Pinctrl and GPIO driver for ams AS3722 PMIC"
46         depends on MFD_AS3722 && GPIOLIB
47         select PINMUX
48         select GENERIC_PINCONF
49         help
50           AS3722 device supports the configuration of GPIO pins for different
51           functionality. This driver supports the pinmux, push-pull and
52           open drain configuration for the GPIO pins of AS3722 devices. It also
53           supports the GPIO functionality through gpiolib.
54
55 config PINCTRL_BF54x
56         def_bool y if BF54x
57         select PINCTRL_ADI2
58
59 config PINCTRL_BF60x
60         def_bool y if BF60x
61         select PINCTRL_ADI2
62
63 config PINCTRL_AT91
64         bool "AT91 pinctrl driver"
65         depends on OF
66         depends on ARCH_AT91
67         select PINMUX
68         select PINCONF
69         select GPIOLIB
70         select OF_GPIO
71         select GPIOLIB_IRQCHIP
72         help
73           Say Y here to enable the at91 pinctrl driver
74
75 config PINCTRL_AT91PIO4
76         bool "AT91 PIO4 pinctrl driver"
77         depends on OF
78         depends on ARCH_AT91
79         select PINMUX
80         select GENERIC_PINCONF
81         select GPIOLIB
82         select GPIOLIB_IRQCHIP
83         select OF_GPIO
84         help
85           Say Y here to enable the at91 pinctrl/gpio driver for Atmel PIO4
86           controller available on sama5d2 SoC.
87
88 config PINCTRL_AMD
89         tristate "AMD GPIO pin control"
90         depends on GPIOLIB
91         select GPIOLIB_IRQCHIP
92         select PINCONF
93         select GENERIC_PINCONF
94         help
95           driver for memory mapped GPIO functionality on AMD platforms
96           (x86 or arm).Most pins are usually muxed to some other
97           functionality by firmware,so only a small amount is available
98           for gpio use.
99
100           Requires ACPI/FDT device enumeration code to set up a platform
101           device.
102
103 config PINCTRL_DA850_PUPD
104         tristate "TI DA850/OMAP-L138/AM18XX pullup/pulldown groups"
105         depends on OF && (ARCH_DAVINCI_DA850 || COMPILE_TEST)
106         select PINCONF
107         select GENERIC_PINCONF
108         help
109           Driver for TI DA850/OMAP-L138/AM18XX pinconf. Used to control
110           pullup/pulldown pin groups.
111
112 config PINCTRL_DIGICOLOR
113         bool
114         depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST)
115         select PINMUX
116         select GENERIC_PINCONF
117
118 config PINCTRL_LANTIQ
119         bool
120         depends on LANTIQ
121         select PINMUX
122         select PINCONF
123
124 config PINCTRL_LPC18XX
125         bool "NXP LPC18XX/43XX SCU pinctrl driver"
126         depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
127         default ARCH_LPC18XX
128         select PINMUX
129         select GENERIC_PINCONF
130         help
131           Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU).
132
133 config PINCTRL_FALCON
134         bool
135         depends on SOC_FALCON
136         depends on PINCTRL_LANTIQ
137
138 config PINCTRL_MESON
139         bool
140         depends on OF
141         select PINMUX
142         select PINCONF
143         select GENERIC_PINCONF
144         select GPIOLIB
145         select OF_GPIO
146         select REGMAP_MMIO
147
148 config PINCTRL_OXNAS
149         bool
150         depends on OF
151         select PINMUX
152         select PINCONF
153         select GENERIC_PINCONF
154         select GPIOLIB
155         select OF_GPIO
156         select GPIOLIB_IRQCHIP
157         select MFD_SYSCON
158
159 config PINCTRL_ROCKCHIP
160         bool
161         select PINMUX
162         select GENERIC_PINCONF
163         select GENERIC_IRQ_CHIP
164         select MFD_SYSCON
165
166 config PINCTRL_SINGLE
167         tristate "One-register-per-pin type device tree based pinctrl driver"
168         depends on OF
169         select GENERIC_PINCTRL_GROUPS
170         select GENERIC_PINMUX_FUNCTIONS
171         select GENERIC_PINCONF
172         help
173           This selects the device tree based generic pinctrl driver.
174
175 config PINCTRL_SIRF
176         bool "CSR SiRFprimaII pin controller driver"
177         depends on ARCH_SIRF
178         select PINMUX
179         select PINCONF
180         select GENERIC_PINCONF
181         select GPIOLIB_IRQCHIP
182
183 config PINCTRL_SX150X
184         bool "Semtech SX150x I2C GPIO expander pinctrl driver"
185         depends on GPIOLIB && I2C=y
186         select PINMUX
187         select PINCONF
188         select GENERIC_PINCONF
189         select GPIOLIB_IRQCHIP
190         select REGMAP
191         help
192           Say yes here to provide support for Semtech SX150x-series I2C
193           GPIO expanders as pinctrl module.
194           Compatible models include:
195           - 8 bits:  sx1508q, sx1502q
196           - 16 bits: sx1509q, sx1506q
197
198 config PINCTRL_PISTACHIO
199         def_bool y if MACH_PISTACHIO
200         depends on GPIOLIB
201         select PINMUX
202         select GENERIC_PINCONF
203         select GPIOLIB_IRQCHIP
204         select OF_GPIO
205
206 config PINCTRL_ST
207         bool
208         depends on OF
209         select PINMUX
210         select PINCONF
211         select GPIOLIB_IRQCHIP
212
213 config PINCTRL_TZ1090
214         bool "Toumaz Xenif TZ1090 pin control driver"
215         depends on SOC_TZ1090
216         select PINMUX
217         select GENERIC_PINCONF
218
219 config PINCTRL_TZ1090_PDC
220         bool "Toumaz Xenif TZ1090 PDC pin control driver"
221         depends on SOC_TZ1090
222         select PINMUX
223         select PINCONF
224
225 config PINCTRL_U300
226         bool "U300 pin controller driver"
227         depends on ARCH_U300
228         select PINMUX
229         select GENERIC_PINCONF
230
231 config PINCTRL_COH901
232         bool "ST-Ericsson U300 COH 901 335/571 GPIO"
233         depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
234         select GPIOLIB_IRQCHIP
235         help
236           Say yes here to support GPIO interface on ST-Ericsson U300.
237           The names of the two IP block variants supported are
238           COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
239           ports of 8 GPIO pins each.
240
241 config PINCTRL_MAX77620
242         tristate "MAX77620/MAX20024 Pincontrol support"
243         depends on MFD_MAX77620 && OF
244         select PINMUX
245         select GENERIC_PINCONF
246         help
247           Say Yes here to enable Pin control support for Maxim PMIC MAX77620.
248           This PMIC has 8 GPIO pins that work as GPIO as well as special
249           function in alternate mode. This driver also configure push-pull,
250           open drain, FPS slots etc.
251
252 config PINCTRL_PALMAS
253         tristate "Pinctrl driver for the PALMAS Series MFD devices"
254         depends on OF && MFD_PALMAS
255         select PINMUX
256         select GENERIC_PINCONF
257         help
258           Palmas device supports the configuration of pins for different
259           functionality. This driver supports the pinmux, push-pull and
260           open drain configuration for the Palmas series devices like
261           TPS65913, TPS80036 etc.
262
263 config PINCTRL_PIC32
264         bool "Microchip PIC32 pin controller driver"
265         depends on OF
266         depends on MACH_PIC32
267         select PINMUX
268         select GENERIC_PINCONF
269         select GPIOLIB_IRQCHIP
270         select OF_GPIO
271         help
272           This is the pin controller and gpio driver for Microchip PIC32
273           microcontrollers. This option is selected automatically when specific
274           machine and arch are selected to build.
275
276 config PINCTRL_PIC32MZDA
277         def_bool y if PIC32MZDA
278         select PINCTRL_PIC32
279
280 config PINCTRL_ZYNQ
281         bool "Pinctrl driver for Xilinx Zynq"
282         depends on ARCH_ZYNQ
283         select PINMUX
284         select GENERIC_PINCONF
285         help
286           This selects the pinctrl driver for Xilinx Zynq.
287
288 source "drivers/pinctrl/aspeed/Kconfig"
289 source "drivers/pinctrl/bcm/Kconfig"
290 source "drivers/pinctrl/berlin/Kconfig"
291 source "drivers/pinctrl/freescale/Kconfig"
292 source "drivers/pinctrl/intel/Kconfig"
293 source "drivers/pinctrl/mvebu/Kconfig"
294 source "drivers/pinctrl/nomadik/Kconfig"
295 source "drivers/pinctrl/pxa/Kconfig"
296 source "drivers/pinctrl/qcom/Kconfig"
297 source "drivers/pinctrl/samsung/Kconfig"
298 source "drivers/pinctrl/sh-pfc/Kconfig"
299 source "drivers/pinctrl/spear/Kconfig"
300 source "drivers/pinctrl/stm32/Kconfig"
301 source "drivers/pinctrl/sunxi/Kconfig"
302 source "drivers/pinctrl/tegra/Kconfig"
303 source "drivers/pinctrl/ti/Kconfig"
304 source "drivers/pinctrl/uniphier/Kconfig"
305 source "drivers/pinctrl/vt8500/Kconfig"
306 source "drivers/pinctrl/mediatek/Kconfig"
307
308 config PINCTRL_XWAY
309         bool
310         depends on SOC_TYPE_XWAY
311         depends on PINCTRL_LANTIQ
312
313 config PINCTRL_TB10X
314         bool
315         depends on OF && ARC_PLAT_TB10X
316         select GPIOLIB
317
318 endmenu