Kconfig revision b4a87c9b966f71922e54a336e90b485a5fba19b8
1#
2# PINCTRL infrastructure and drivers
3#
4
5config PINCTRL
6	bool
7
8if PINCTRL
9
10menu "Pin controllers"
11	depends on PINCTRL
12
13config PINMUX
14	bool "Support pin multiplexing controllers"
15
16config PINCONF
17	bool "Support pin configuration controllers"
18
19config GENERIC_PINCONF
20	bool
21	select PINCONF
22
23config 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
29config 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
36config PINCTRL_AB8500
37	bool "AB8500 pin controller driver"
38	depends on PINCTRL_ABX500 && ARCH_U8500
39
40config PINCTRL_AB8540
41	bool "AB8540 pin controller driver"
42	depends on PINCTRL_ABX500 && ARCH_U8500
43
44config PINCTRL_AB9540
45	bool "AB9540 pin controller driver"
46	depends on PINCTRL_ABX500 && ARCH_U8500
47
48config PINCTRL_AB8505
49	bool "AB8505 pin controller driver"
50	depends on PINCTRL_ABX500 && ARCH_U8500
51
52config 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
62config 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
73config PINCTRL_BF54x
74	def_bool y if BF54x
75	select PINCTRL_ADI2
76
77config PINCTRL_BF60x
78	def_bool y if BF60x
79	select PINCTRL_ADI2
80
81config 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
90config 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
102config PINCTRL_BCM2835
103	bool
104	select PINMUX
105	select PINCONF
106
107config PINCTRL_IMX
108	bool
109	select PINMUX
110	select PINCONF
111
112config PINCTRL_IMX1_CORE
113	bool
114	select PINMUX
115	select PINCONF
116
117config 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
125config 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
133config 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
140config 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
147config 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
154config 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
161config 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
168config 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
175config PINCTRL_VF610
176	bool "Freescale Vybrid VF610 pinctrl driver"
177	depends on SOC_VF610
178	select PINCTRL_IMX
179	help
180	  Say Y here to enable the Freescale Vybrid VF610 pinctrl driver
181
182config PINCTRL_LANTIQ
183	bool
184	depends on LANTIQ
185	select PINMUX
186	select PINCONF
187
188config PINCTRL_FALCON
189	bool
190	depends on SOC_FALCON
191	depends on PINCTRL_LANTIQ
192
193config PINCTRL_MXS
194	bool
195	select PINMUX
196	select PINCONF
197
198config PINCTRL_IMX23
199	bool
200	select PINCTRL_MXS
201
202config PINCTRL_IMX28
203	bool
204	select PINCTRL_MXS
205
206config PINCTRL_NOMADIK
207	bool "Nomadik pin controller driver"
208	depends on ARCH_U8500 || ARCH_NOMADIK
209	select PINMUX
210	select PINCONF
211
212config PINCTRL_STN8815
213	bool "STN8815 pin controller driver"
214	depends on PINCTRL_NOMADIK && ARCH_NOMADIK
215
216config PINCTRL_DB8500
217	bool "DB8500 pin controller driver"
218	depends on PINCTRL_NOMADIK && ARCH_U8500
219
220config PINCTRL_DB8540
221	bool "DB8540 pin controller driver"
222	depends on PINCTRL_NOMADIK && ARCH_U8500
223
224config PINCTRL_ROCKCHIP
225	bool
226	select PINMUX
227	select GENERIC_PINCONF
228	select GENERIC_IRQ_CHIP
229
230config PINCTRL_SINGLE
231	tristate "One-register-per-pin type device tree based pinctrl driver"
232	depends on OF
233	select PINMUX
234	select PINCONF
235	select GENERIC_PINCONF
236	help
237	  This selects the device tree based generic pinctrl driver.
238
239config PINCTRL_SIRF
240	bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
241	depends on ARCH_SIRF
242	select PINMUX
243
244config PINCTRL_SUNXI
245	bool
246	select PINMUX
247	select GENERIC_PINCONF
248
249config PINCTRL_ST
250	bool
251	depends on OF
252	select PINMUX
253	select PINCONF
254
255config PINCTRL_TEGRA
256	bool
257	select PINMUX
258	select PINCONF
259
260config PINCTRL_TEGRA20
261	bool
262	select PINCTRL_TEGRA
263
264config PINCTRL_TEGRA30
265	bool
266	select PINCTRL_TEGRA
267
268config PINCTRL_TEGRA114
269	bool
270	select PINCTRL_TEGRA
271
272config PINCTRL_TZ1090
273	bool "Toumaz Xenif TZ1090 pin control driver"
274	depends on SOC_TZ1090
275	select PINMUX
276	select GENERIC_PINCONF
277
278config PINCTRL_TZ1090_PDC
279	bool "Toumaz Xenif TZ1090 PDC pin control driver"
280	depends on SOC_TZ1090
281	select PINMUX
282	select PINCONF
283
284config PINCTRL_U300
285	bool "U300 pin controller driver"
286	depends on ARCH_U300
287	select PINMUX
288	select GENERIC_PINCONF
289
290config PINCTRL_COH901
291	bool "ST-Ericsson U300 COH 901 335/571 GPIO"
292	depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
293	help
294	  Say yes here to support GPIO interface on ST-Ericsson U300.
295	  The names of the two IP block variants supported are
296	  COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
297	  ports of 8 GPIO pins each.
298
299config PINCTRL_SAMSUNG
300	bool
301	select PINMUX
302	select PINCONF
303
304config PINCTRL_EXYNOS
305	bool "Pinctrl driver data for Samsung EXYNOS SoCs other than 5440"
306	depends on OF && GPIOLIB && (ARCH_EXYNOS || ARCH_S5PV210)
307	select PINCTRL_SAMSUNG
308
309config PINCTRL_EXYNOS5440
310	bool "Samsung EXYNOS5440 SoC pinctrl driver"
311	depends on SOC_EXYNOS5440
312	select PINMUX
313	select PINCONF
314
315config PINCTRL_PALMAS
316	bool "Pinctrl driver for the PALMAS Series MFD devices"
317	depends on OF && MFD_PALMAS
318	select PINMUX
319	select GENERIC_PINCONF
320	help
321	  Palmas device supports the configuration of pins for different
322	  functionality. This driver supports the pinmux, push-pull and
323	  open drain configuration for the Palmas series devices like
324	  TPS65913, TPS80036 etc.
325
326config PINCTRL_S3C24XX
327	bool "Samsung S3C24XX SoC pinctrl driver"
328	depends on ARCH_S3C24XX
329	select PINCTRL_SAMSUNG
330
331config PINCTRL_S3C64XX
332	bool "Samsung S3C64XX SoC pinctrl driver"
333	depends on ARCH_S3C64XX
334	select PINCTRL_SAMSUNG
335
336source "drivers/pinctrl/mvebu/Kconfig"
337source "drivers/pinctrl/sh-pfc/Kconfig"
338source "drivers/pinctrl/spear/Kconfig"
339source "drivers/pinctrl/vt8500/Kconfig"
340
341config PINCTRL_XWAY
342	bool
343	depends on SOC_TYPE_XWAY
344	depends on PINCTRL_LANTIQ
345
346config PINCTRL_TB10X
347	bool
348	depends on ARC_PLAT_TB10X
349
350endmenu
351
352endif
353