pinctrl: bcm281xx: make Kconfig dependency more strict
[sfrench/cifs-2.6.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" if COMPILE_TEST
15
16 config PINCONF
17         bool "Support pin configuration controllers" if COMPILE_TEST
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_ADI2
30         bool "ADI pin controller driver"
31         depends on BLACKFIN
32         select PINMUX
33         select IRQ_DOMAIN
34         help
35           This is the pin controller and gpio driver for ADI BF54x, BF60x and
36           future processors. This option is selected automatically when specific
37           machine and arch are selected to build.
38
39 config PINCTRL_AS3722
40         bool "Pinctrl and GPIO driver for ams AS3722 PMIC"
41         depends on MFD_AS3722 && GPIOLIB
42         select PINMUX
43         select GENERIC_PINCONF
44         help
45           AS3722 device supports the configuration of GPIO pins for different
46           functionality. This driver supports the pinmux, push-pull and
47           open drain configuration for the GPIO pins of AS3722 devices. It also
48           supports the GPIO functionality through gpiolib.
49
50 config PINCTRL_BF54x
51         def_bool y if BF54x
52         select PINCTRL_ADI2
53
54 config PINCTRL_BF60x
55         def_bool y if BF60x
56         select PINCTRL_ADI2
57
58 config PINCTRL_AT91
59         bool "AT91 pinctrl driver"
60         depends on OF
61         depends on ARCH_AT91
62         select PINMUX
63         select PINCONF
64         select GPIOLIB
65         select OF_GPIO
66         select GPIOLIB_IRQCHIP
67         help
68           Say Y here to enable the at91 pinctrl driver
69
70 config PINCTRL_BAYTRAIL
71         bool "Intel Baytrail GPIO pin control"
72         depends on GPIOLIB && ACPI && X86
73         select GPIOLIB_IRQCHIP
74         help
75           driver for memory mapped GPIO functionality on Intel Baytrail
76           platforms. Supports 3 banks with 102, 28 and 44 gpios.
77           Most pins are usually muxed to some other functionality by firmware,
78           so only a small amount is available for gpio use.
79
80           Requires ACPI device enumeration code to set up a platform device.
81
82 config PINCTRL_BCM2835
83         bool
84         select PINMUX
85         select PINCONF
86
87 config PINCTRL_BCM281XX
88         bool "Broadcom BCM281xx pinctrl driver"
89         depends on OF && (ARCH_BCM_MOBILE || COMPILE_TEST)
90         select PINMUX
91         select PINCONF
92         select GENERIC_PINCONF
93         select REGMAP_MMIO
94         help
95           Say Y here to support Broadcom BCM281xx pinctrl driver, which is used
96           for the BCM281xx SoC family, including BCM11130, BCM11140, BCM11351,
97           BCM28145, and BCM28155 SoCs.  This driver requires the pinctrl
98           framework.  GPIO is provided by a separate GPIO driver.
99
100 config PINCTRL_IMX
101         bool
102         select PINMUX
103         select PINCONF
104
105 config PINCTRL_IMX1_CORE
106         bool
107         select PINMUX
108         select PINCONF
109
110 config PINCTRL_IMX1
111         bool "IMX1 pinctrl driver"
112         depends on SOC_IMX1
113         select PINCTRL_IMX1_CORE
114         help
115           Say Y here to enable the imx1 pinctrl driver
116
117 config PINCTRL_IMX27
118         bool "IMX27 pinctrl driver"
119         depends on SOC_IMX27
120         select PINCTRL_IMX1_CORE
121         help
122           Say Y here to enable the imx27 pinctrl driver
123
124
125 config PINCTRL_IMX25
126         bool "IMX25 pinctrl driver"
127         depends on OF
128         depends on SOC_IMX25
129         select PINCTRL_IMX
130         help
131           Say Y here to enable the imx25 pinctrl driver
132
133 config PINCTRL_IMX35
134         bool "IMX35 pinctrl driver"
135         depends on SOC_IMX35
136         select PINCTRL_IMX
137         help
138           Say Y here to enable the imx35 pinctrl driver
139
140 config PINCTRL_IMX50
141         bool "IMX50 pinctrl driver"
142         depends on SOC_IMX50
143         select PINCTRL_IMX
144         help
145           Say Y here to enable the imx50 pinctrl driver
146
147 config PINCTRL_IMX51
148         bool "IMX51 pinctrl driver"
149         depends on SOC_IMX51
150         select PINCTRL_IMX
151         help
152           Say Y here to enable the imx51 pinctrl driver
153
154 config PINCTRL_IMX53
155         bool "IMX53 pinctrl driver"
156         depends on SOC_IMX53
157         select PINCTRL_IMX
158         help
159           Say Y here to enable the imx53 pinctrl driver
160
161 config PINCTRL_IMX6Q
162         bool "IMX6Q/DL pinctrl driver"
163         depends on SOC_IMX6Q
164         select PINCTRL_IMX
165         help
166           Say Y here to enable the imx6q/dl pinctrl driver
167
168 config PINCTRL_IMX6SL
169         bool "IMX6SL pinctrl driver"
170         depends on SOC_IMX6SL
171         select PINCTRL_IMX
172         help
173           Say Y here to enable the imx6sl pinctrl driver
174
175 config PINCTRL_IMX6SX
176         bool "IMX6SX pinctrl driver"
177         depends on SOC_IMX6SX
178         select PINCTRL_IMX
179         help
180           Say Y here to enable the imx6sx pinctrl driver
181
182 config PINCTRL_VF610
183         bool "Freescale Vybrid VF610 pinctrl driver"
184         depends on SOC_VF610
185         select PINCTRL_IMX
186         help
187           Say Y here to enable the Freescale Vybrid VF610 pinctrl driver
188
189 config PINCTRL_LANTIQ
190         bool
191         depends on LANTIQ
192         select PINMUX
193         select PINCONF
194
195 config PINCTRL_FALCON
196         bool
197         depends on SOC_FALCON
198         depends on PINCTRL_LANTIQ
199
200 config PINCTRL_MXS
201         bool
202         select PINMUX
203         select PINCONF
204
205 config PINCTRL_IMX23
206         bool
207         select PINCTRL_MXS
208
209 config PINCTRL_IMX28
210         bool
211         select PINCTRL_MXS
212
213 config PINCTRL_ROCKCHIP
214         bool
215         select PINMUX
216         select GENERIC_PINCONF
217         select GENERIC_IRQ_CHIP
218         select MFD_SYSCON
219
220 config PINCTRL_SINGLE
221         tristate "One-register-per-pin type device tree based pinctrl driver"
222         depends on OF
223         select PINMUX
224         select PINCONF
225         select GENERIC_PINCONF
226         help
227           This selects the device tree based generic pinctrl driver.
228
229 config PINCTRL_SIRF
230         bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
231         depends on ARCH_SIRF
232         select PINMUX
233         select GPIOLIB_IRQCHIP
234
235 config PINCTRL_ST
236         bool
237         depends on OF
238         select PINMUX
239         select PINCONF
240         select GPIOLIB_IRQCHIP
241
242 config PINCTRL_TEGRA
243         bool
244         select PINMUX
245         select PINCONF
246
247 config PINCTRL_TEGRA20
248         bool
249         select PINCTRL_TEGRA
250
251 config PINCTRL_TEGRA30
252         bool
253         select PINCTRL_TEGRA
254
255 config PINCTRL_TEGRA114
256         bool
257         select PINCTRL_TEGRA
258
259 config PINCTRL_TEGRA124
260         bool
261         select PINCTRL_TEGRA
262
263 config PINCTRL_TEGRA_XUSB
264         def_bool y if ARCH_TEGRA
265         select GENERIC_PHY
266         select PINCONF
267         select PINMUX
268
269 config PINCTRL_TZ1090
270         bool "Toumaz Xenif TZ1090 pin control driver"
271         depends on SOC_TZ1090
272         select PINMUX
273         select GENERIC_PINCONF
274
275 config PINCTRL_TZ1090_PDC
276         bool "Toumaz Xenif TZ1090 PDC pin control driver"
277         depends on SOC_TZ1090
278         select PINMUX
279         select PINCONF
280
281 config PINCTRL_U300
282         bool "U300 pin controller driver"
283         depends on ARCH_U300
284         select PINMUX
285         select GENERIC_PINCONF
286
287 config PINCTRL_COH901
288         bool "ST-Ericsson U300 COH 901 335/571 GPIO"
289         depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
290         select GPIOLIB_IRQCHIP
291         help
292           Say yes here to support GPIO interface on ST-Ericsson U300.
293           The names of the two IP block variants supported are
294           COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
295           ports of 8 GPIO pins each.
296
297 config PINCTRL_PALMAS
298         bool "Pinctrl driver for the PALMAS Series MFD devices"
299         depends on OF && MFD_PALMAS
300         select PINMUX
301         select GENERIC_PINCONF
302         help
303           Palmas device supports the configuration of pins for different
304           functionality. This driver supports the pinmux, push-pull and
305           open drain configuration for the Palmas series devices like
306           TPS65913, TPS80036 etc.
307
308 source "drivers/pinctrl/berlin/Kconfig"
309 source "drivers/pinctrl/mvebu/Kconfig"
310 source "drivers/pinctrl/nomadik/Kconfig"
311 source "drivers/pinctrl/qcom/Kconfig"
312 source "drivers/pinctrl/samsung/Kconfig"
313 source "drivers/pinctrl/sh-pfc/Kconfig"
314 source "drivers/pinctrl/spear/Kconfig"
315 source "drivers/pinctrl/sunxi/Kconfig"
316 source "drivers/pinctrl/vt8500/Kconfig"
317
318 config PINCTRL_XWAY
319         bool
320         depends on SOC_TYPE_XWAY
321         depends on PINCTRL_LANTIQ
322
323 config PINCTRL_TB10X
324         bool
325         depends on ARC_PLAT_TB10X
326
327 endmenu
328
329 endif