Merge branch 'pinmux/next/pfc' of git://linuxtv.org/pinchartl/fbdev into devel
[firefly-linux-kernel-4.4.55.git] / drivers / pinctrl / Kconfig
1 #
2 # PINCTRL infrastructure and drivers
3 #
4
5 config PINCTRL
6         bool
7
8 if PINCTRL
9
10 menu "Pin controllers"
11         depends on PINCTRL
12
13 config PINMUX
14         bool "Support pin multiplexing controllers"
15
16 config PINCONF
17         bool "Support pin configuration controllers"
18
19 config GENERIC_PINCONF
20         bool
21         select PINCONF
22
23 config DEBUG_PINCTRL
24         bool "Debug PINCTRL calls"
25         depends on DEBUG_KERNEL
26         help
27           Say Y here to add some extra checks and diagnostics to PINCTRL calls.
28
29 config PINCTRL_ABX500
30         bool "ST-Ericsson ABx500 family Mixed Signal Circuit gpio functions"
31         depends on AB8500_CORE
32         select GENERIC_PINCONF
33         help
34           Select this to enable the ABx500 family IC GPIO driver
35
36 config PINCTRL_AB8500
37         bool "AB8500 pin controller driver"
38         depends on PINCTRL_ABX500 && ARCH_U8500
39
40 config PINCTRL_AB8540
41         bool "AB8540 pin controller driver"
42         depends on PINCTRL_ABX500 && ARCH_U8500
43
44 config PINCTRL_AB9540
45         bool "AB9540 pin controller driver"
46         depends on PINCTRL_ABX500 && ARCH_U8500
47
48 config PINCTRL_AB8505
49         bool "AB8505 pin controller driver"
50         depends on PINCTRL_ABX500 && ARCH_U8500
51
52 config PINCTRL_ADI2
53         bool "ADI pin controller driver"
54         depends on BLACKFIN
55         select PINMUX
56         select IRQ_DOMAIN
57         help
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.
61
62 config PINCTRL_AS3722
63         bool "Pinctrl and GPIO driver for ams AS3722 PMIC"
64         depends on MFD_AS3722 && GPIOLIB
65         select PINMUX
66         select GENERIC_PINCONF
67         help
68           AS3722 device supports the configuration of GPIO pins for different
69           functionality. This driver supports the pinmux, push-pull and
70           open drain configuration for the GPIO pins of AS3722 devices. It also
71           supports the GPIO functionality through gpiolib.
72
73 config PINCTRL_BF54x
74         def_bool y if BF54x
75         select PINCTRL_ADI2
76
77 config PINCTRL_BF60x
78         def_bool y if BF60x
79         select PINCTRL_ADI2
80
81 config PINCTRL_AT91
82         bool "AT91 pinctrl driver"
83         depends on OF
84         depends on ARCH_AT91
85         select PINMUX
86         select PINCONF
87         help
88           Say Y here to enable the at91 pinctrl driver
89
90 config PINCTRL_BAYTRAIL
91         bool "Intel Baytrail GPIO pin control"
92         depends on GPIOLIB && ACPI && X86
93         select IRQ_DOMAIN
94         help
95           driver for memory mapped GPIO functionality on Intel Baytrail
96           platforms. Supports 3 banks with 102, 28 and 44 gpios.
97           Most pins are usually muxed to some other functionality by firmware,
98           so only a small amount is available for gpio use.
99
100           Requires ACPI device enumeration code to set up a platform device.
101
102 config PINCTRL_BCM2835
103         bool
104         select PINMUX
105         select PINCONF
106
107 config PINCTRL_IMX
108         bool
109         select PINMUX
110         select PINCONF
111
112 config PINCTRL_IMX1_CORE
113         bool
114         select PINMUX
115         select PINCONF
116
117 config PINCTRL_IMX27
118         bool "IMX27 pinctrl driver"
119         depends on OF
120         depends on SOC_IMX27
121         select PINCTRL_IMX1_CORE
122         help
123           Say Y here to enable the imx27 pinctrl driver
124
125 config PINCTRL_IMX35
126         bool "IMX35 pinctrl driver"
127         depends on OF
128         depends on SOC_IMX35
129         select PINCTRL_IMX
130         help
131           Say Y here to enable the imx35 pinctrl driver
132
133 config PINCTRL_IMX51
134         bool "IMX51 pinctrl driver"
135         depends on OF
136         depends on SOC_IMX51
137         select PINCTRL_IMX
138         help
139           Say Y here to enable the imx51 pinctrl driver
140
141 config PINCTRL_IMX53
142         bool "IMX53 pinctrl driver"
143         depends on OF
144         depends on SOC_IMX53
145         select PINCTRL_IMX
146         help
147           Say Y here to enable the imx53 pinctrl driver
148
149 config PINCTRL_IMX6Q
150         bool "IMX6Q/DL pinctrl driver"
151         depends on OF
152         depends on SOC_IMX6Q
153         select PINCTRL_IMX
154         help
155           Say Y here to enable the imx6q/dl pinctrl driver
156
157 config PINCTRL_IMX6SL
158         bool "IMX6SL pinctrl driver"
159         depends on OF
160         depends on SOC_IMX6SL
161         select PINCTRL_IMX
162         help
163           Say Y here to enable the imx6sl pinctrl driver
164
165 config PINCTRL_VF610
166         bool "Freescale Vybrid VF610 pinctrl driver"
167         depends on OF
168         depends on SOC_VF610
169         select PINCTRL_IMX
170         help
171           Say Y here to enable the Freescale Vybrid VF610 pinctrl driver
172
173 config PINCTRL_LANTIQ
174         bool
175         depends on LANTIQ
176         select PINMUX
177         select PINCONF
178
179 config PINCTRL_FALCON
180         bool
181         depends on SOC_FALCON
182         depends on PINCTRL_LANTIQ
183
184 config PINCTRL_MXS
185         bool
186         select PINMUX
187         select PINCONF
188
189 config PINCTRL_IMX23
190         bool
191         select PINCTRL_MXS
192
193 config PINCTRL_IMX28
194         bool
195         select PINCTRL_MXS
196
197 config PINCTRL_NOMADIK
198         bool "Nomadik pin controller driver"
199         depends on ARCH_U8500 || ARCH_NOMADIK
200         select PINMUX
201         select PINCONF
202
203 config PINCTRL_STN8815
204         bool "STN8815 pin controller driver"
205         depends on PINCTRL_NOMADIK && ARCH_NOMADIK
206
207 config PINCTRL_DB8500
208         bool "DB8500 pin controller driver"
209         depends on PINCTRL_NOMADIK && ARCH_U8500
210
211 config PINCTRL_DB8540
212         bool "DB8540 pin controller driver"
213         depends on PINCTRL_NOMADIK && ARCH_U8500
214
215 config PINCTRL_ROCKCHIP
216         bool
217         select PINMUX
218         select GENERIC_PINCONF
219         select GENERIC_IRQ_CHIP
220
221 config PINCTRL_SINGLE
222         tristate "One-register-per-pin type device tree based pinctrl driver"
223         depends on OF
224         select PINMUX
225         select PINCONF
226         select GENERIC_PINCONF
227         help
228           This selects the device tree based generic pinctrl driver.
229
230 config PINCTRL_SIRF
231         bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
232         depends on ARCH_SIRF
233         select PINMUX
234
235 config PINCTRL_SUNXI
236         bool
237         select PINMUX
238         select GENERIC_PINCONF
239
240 config PINCTRL_ST
241         bool
242         depends on OF
243         select PINMUX
244         select PINCONF
245
246 config PINCTRL_TEGRA
247         bool
248         select PINMUX
249         select PINCONF
250
251 config PINCTRL_TEGRA20
252         bool
253         select PINCTRL_TEGRA
254
255 config PINCTRL_TEGRA30
256         bool
257         select PINCTRL_TEGRA
258
259 config PINCTRL_TEGRA114
260         bool
261         select PINCTRL_TEGRA
262
263 config PINCTRL_TZ1090
264         bool "Toumaz Xenif TZ1090 pin control driver"
265         depends on SOC_TZ1090
266         select PINMUX
267         select GENERIC_PINCONF
268
269 config PINCTRL_TZ1090_PDC
270         bool "Toumaz Xenif TZ1090 PDC pin control driver"
271         depends on SOC_TZ1090
272         select PINMUX
273         select PINCONF
274
275 config PINCTRL_U300
276         bool "U300 pin controller driver"
277         depends on ARCH_U300
278         select PINMUX
279         select GENERIC_PINCONF
280
281 config PINCTRL_COH901
282         bool "ST-Ericsson U300 COH 901 335/571 GPIO"
283         depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
284         help
285           Say yes here to support GPIO interface on ST-Ericsson U300.
286           The names of the two IP block variants supported are
287           COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
288           ports of 8 GPIO pins each.
289
290 config PINCTRL_SAMSUNG
291         bool
292         select PINMUX
293         select PINCONF
294
295 config PINCTRL_EXYNOS
296         bool "Pinctrl driver data for Samsung EXYNOS SoCs other than 5440"
297         depends on OF && GPIOLIB && (ARCH_EXYNOS || ARCH_S5PV210)
298         select PINCTRL_SAMSUNG
299
300 config PINCTRL_EXYNOS5440
301         bool "Samsung EXYNOS5440 SoC pinctrl driver"
302         depends on SOC_EXYNOS5440
303         select PINMUX
304         select PINCONF
305
306 config PINCTRL_PALMAS
307         bool "Pinctrl driver for the PALMAS Series MFD devices"
308         depends on OF && MFD_PALMAS
309         select PINMUX
310         select GENERIC_PINCONF
311         help
312           Palmas device supports the configuration of pins for different
313           functionality. This driver supports the pinmux, push-pull and
314           open drain configuration for the Palmas series devices like
315           TPS65913, TPS80036 etc.
316
317 config PINCTRL_S3C24XX
318         bool "Samsung S3C24XX SoC pinctrl driver"
319         depends on ARCH_S3C24XX
320         select PINCTRL_SAMSUNG
321
322 config PINCTRL_S3C64XX
323         bool "Samsung S3C64XX SoC pinctrl driver"
324         depends on ARCH_S3C64XX
325         select PINCTRL_SAMSUNG
326
327 source "drivers/pinctrl/mvebu/Kconfig"
328 source "drivers/pinctrl/sh-pfc/Kconfig"
329 source "drivers/pinctrl/spear/Kconfig"
330 source "drivers/pinctrl/vt8500/Kconfig"
331
332 config PINCTRL_XWAY
333         bool
334         depends on SOC_TYPE_XWAY
335         depends on PINCTRL_LANTIQ
336
337 config PINCTRL_TB10X
338         bool
339         depends on ARC_PLAT_TB10X
340
341 endmenu
342
343 endif