xref: /linux/drivers/pinctrl/Kconfig (revision 1aa2d8d4055267462f8943e2a1e6eb2e7034eb25)
12744e8afSLinus Walleij#
22744e8afSLinus Walleij# PINCTRL infrastructure and drivers
32744e8afSLinus Walleij#
42744e8afSLinus Walleij
545f034efSLinus Walleijconfig PINCTRL
645f034efSLinus Walleij	bool
72744e8afSLinus Walleij
82744e8afSLinus Walleijif PINCTRL
92744e8afSLinus Walleij
1045f034efSLinus Walleijmenu "Pin controllers"
1145f034efSLinus Walleij	depends on PINCTRL
1245f034efSLinus Walleij
132744e8afSLinus Walleijconfig PINMUX
14ae6b4d85SLinus Walleij	bool "Support pin multiplexing controllers"
15ae6b4d85SLinus Walleij
16ae6b4d85SLinus Walleijconfig PINCONF
17ae6b4d85SLinus Walleij	bool "Support pin configuration controllers"
182744e8afSLinus Walleij
19394349f7SLinus Walleijconfig GENERIC_PINCONF
20394349f7SLinus Walleij	bool
21394349f7SLinus Walleij	select PINCONF
22394349f7SLinus Walleij
232744e8afSLinus Walleijconfig DEBUG_PINCTRL
242744e8afSLinus Walleij	bool "Debug PINCTRL calls"
252744e8afSLinus Walleij	depends on DEBUG_KERNEL
262744e8afSLinus Walleij	help
272744e8afSLinus Walleij	  Say Y here to add some extra checks and diagnostics to PINCTRL calls.
282744e8afSLinus Walleij
290493e649SPatrice Chotardconfig PINCTRL_ABX500
300493e649SPatrice Chotard	bool "ST-Ericsson ABx500 family Mixed Signal Circuit gpio functions"
310493e649SPatrice Chotard	depends on AB8500_CORE
320493e649SPatrice Chotard	select GENERIC_PINCONF
330493e649SPatrice Chotard	help
340493e649SPatrice Chotard	  Select this to enable the ABx500 family IC GPIO driver
350493e649SPatrice Chotard
363c937993SPatrice Chotardconfig PINCTRL_AB8500
373c937993SPatrice Chotard	bool "AB8500 pin controller driver"
383c937993SPatrice Chotard	depends on PINCTRL_ABX500 && ARCH_U8500
393c937993SPatrice Chotard
40*1aa2d8d4SPatrice Chotardconfig PINCTRL_AB8505
41*1aa2d8d4SPatrice Chotard	bool "AB8505 pin controller driver"
42*1aa2d8d4SPatrice Chotard	depends on PINCTRL_ABX500 && ARCH_U8500
43*1aa2d8d4SPatrice Chotard
446732ae5cSJean-Christophe PLAGNIOL-VILLARDconfig PINCTRL_AT91
456732ae5cSJean-Christophe PLAGNIOL-VILLARD	bool "AT91 pinctrl driver"
466732ae5cSJean-Christophe PLAGNIOL-VILLARD	depends on OF
476732ae5cSJean-Christophe PLAGNIOL-VILLARD	depends on ARCH_AT91
486732ae5cSJean-Christophe PLAGNIOL-VILLARD	select PINMUX
496732ae5cSJean-Christophe PLAGNIOL-VILLARD	select PINCONF
506732ae5cSJean-Christophe PLAGNIOL-VILLARD	help
516732ae5cSJean-Christophe PLAGNIOL-VILLARD	  Say Y here to enable the at91 pinctrl driver
526732ae5cSJean-Christophe PLAGNIOL-VILLARD
53e1b2dc70SSimon Arlottconfig PINCTRL_BCM2835
54e1b2dc70SSimon Arlott	bool
55e1b2dc70SSimon Arlott	select PINMUX
56e1b2dc70SSimon Arlott	select PINCONF
57e1b2dc70SSimon Arlott
58ae75ff81SDong Aishengconfig PINCTRL_IMX
59ae75ff81SDong Aisheng	bool
60ae75ff81SDong Aisheng	select PINMUX
61ae75ff81SDong Aisheng	select PINCONF
62ae75ff81SDong Aisheng
63b9aa8f13SUwe Kleine-Königconfig PINCTRL_IMX35
64b9aa8f13SUwe Kleine-König	bool "IMX35 pinctrl driver"
65b9aa8f13SUwe Kleine-König	depends on OF
66b9aa8f13SUwe Kleine-König	depends on SOC_IMX35
67b9aa8f13SUwe Kleine-König	select PINCTRL_IMX
68b9aa8f13SUwe Kleine-König	help
69b9aa8f13SUwe Kleine-König	  Say Y here to enable the imx35 pinctrl driver
70b9aa8f13SUwe Kleine-König
714f6a16bfSDong Aishengconfig PINCTRL_IMX51
724f6a16bfSDong Aisheng	bool "IMX51 pinctrl driver"
734f6a16bfSDong Aisheng	depends on OF
744f6a16bfSDong Aisheng	depends on SOC_IMX51
754f6a16bfSDong Aisheng	select PINCTRL_IMX
764f6a16bfSDong Aisheng	help
774f6a16bfSDong Aisheng	  Say Y here to enable the imx51 pinctrl driver
784f6a16bfSDong Aisheng
7993fbd3c0SDong Aishengconfig PINCTRL_IMX53
8093fbd3c0SDong Aisheng	bool "IMX53 pinctrl driver"
8193fbd3c0SDong Aisheng	depends on OF
8293fbd3c0SDong Aisheng	depends on SOC_IMX53
8393fbd3c0SDong Aisheng	select PINCTRL_IMX
8493fbd3c0SDong Aisheng	help
8593fbd3c0SDong Aisheng	  Say Y here to enable the imx53 pinctrl driver
8693fbd3c0SDong Aisheng
87d8fe3572SDong Aishengconfig PINCTRL_IMX6Q
88d8fe3572SDong Aisheng	bool "IMX6Q pinctrl driver"
89d8fe3572SDong Aisheng	depends on OF
90d8fe3572SDong Aisheng	depends on SOC_IMX6Q
91d8fe3572SDong Aisheng	select PINCTRL_IMX
92d8fe3572SDong Aisheng	help
93d8fe3572SDong Aisheng	  Say Y here to enable the imx6q pinctrl driver
94d8fe3572SDong Aisheng
953f8c50c9SJohn Crispinconfig PINCTRL_LANTIQ
963f8c50c9SJohn Crispin	bool
973f8c50c9SJohn Crispin	depends on LANTIQ
983f8c50c9SJohn Crispin	select PINMUX
993f8c50c9SJohn Crispin	select PINCONF
1003f8c50c9SJohn Crispin
101f4e66983SHaojian Zhuangconfig PINCTRL_PXA3xx
102f4e66983SHaojian Zhuang	bool
103f4e66983SHaojian Zhuang	select PINMUX
104f4e66983SHaojian Zhuang
105e316cb2bSJohn Crispinconfig PINCTRL_FALCON
106e316cb2bSJohn Crispin	bool
107e316cb2bSJohn Crispin	depends on SOC_FALCON
108e316cb2bSJohn Crispin	depends on PINCTRL_LANTIQ
109e316cb2bSJohn Crispin
110f4e66983SHaojian Zhuangconfig PINCTRL_MMP2
111f4e66983SHaojian Zhuang	bool "MMP2 pin controller driver"
112f4e66983SHaojian Zhuang	depends on ARCH_MMP
113f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
114f4e66983SHaojian Zhuang
11517723111SShawn Guoconfig PINCTRL_MXS
11617723111SShawn Guo	bool
11790db8a14SAxel Lin	select PINMUX
11890db8a14SAxel Lin	select PINCONF
11917723111SShawn Guo
12017723111SShawn Guoconfig PINCTRL_IMX23
12117723111SShawn Guo	bool
12217723111SShawn Guo	select PINCTRL_MXS
12317723111SShawn Guo
12417723111SShawn Guoconfig PINCTRL_IMX28
12517723111SShawn Guo	bool
12617723111SShawn Guo	select PINCTRL_MXS
12717723111SShawn Guo
128e98ea774SLinus Walleijconfig PINCTRL_NOMADIK
129e98ea774SLinus Walleij	bool "Nomadik pin controller driver"
1300fa7be40SArnd Bergmann	depends on ARCH_U8500 || ARCH_NOMADIK
131dbfe8ca2SLinus Walleij	select PINMUX
132d41af627SLinus Walleij	select PINCONF
133e98ea774SLinus Walleij
134f79c5ed9SLinus Walleijconfig PINCTRL_STN8815
135f79c5ed9SLinus Walleij	bool "STN8815 pin controller driver"
136f79c5ed9SLinus Walleij	depends on PINCTRL_NOMADIK && ARCH_NOMADIK
137f79c5ed9SLinus Walleij
138e98ea774SLinus Walleijconfig PINCTRL_DB8500
139e98ea774SLinus Walleij	bool "DB8500 pin controller driver"
140e98ea774SLinus Walleij	depends on PINCTRL_NOMADIK && ARCH_U8500
141e98ea774SLinus Walleij
14245a1b531SPatrice Chotardconfig PINCTRL_DB8540
14345a1b531SPatrice Chotard	bool "DB8540 pin controller driver"
14445a1b531SPatrice Chotard	depends on PINCTRL_NOMADIK && ARCH_U8500
14545a1b531SPatrice Chotard
146f4e66983SHaojian Zhuangconfig PINCTRL_PXA168
147f4e66983SHaojian Zhuang	bool "PXA168 pin controller driver"
148f4e66983SHaojian Zhuang	depends on ARCH_MMP
149f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
150f4e66983SHaojian Zhuang
151f4e66983SHaojian Zhuangconfig PINCTRL_PXA910
152f4e66983SHaojian Zhuang	bool "PXA910 pin controller driver"
153f4e66983SHaojian Zhuang	depends on ARCH_MMP
154f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
155f4e66983SHaojian Zhuang
1568b8b091bSTony Lindgrenconfig PINCTRL_SINGLE
1578b8b091bSTony Lindgren	tristate "One-register-per-pin type device tree based pinctrl driver"
1588b8b091bSTony Lindgren	depends on OF
1598b8b091bSTony Lindgren	select PINMUX
1608b8b091bSTony Lindgren	select PINCONF
1618b8b091bSTony Lindgren	help
1628b8b091bSTony Lindgren	  This selects the device tree based generic pinctrl driver.
1638b8b091bSTony Lindgren
1643bece55aSLinus Walleijconfig PINCTRL_SIRF
165d3e26f2fSBarry Song	bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
166d3e26f2fSBarry Song	depends on ARCH_SIRF
167393daa81SRongjun Ying	select PINMUX
168393daa81SRongjun Ying
169971dac71SStephen Warrenconfig PINCTRL_TEGRA
170971dac71SStephen Warren	bool
171507ccdbfSAxel Lin	select PINMUX
172507ccdbfSAxel Lin	select PINCONF
173971dac71SStephen Warren
174971dac71SStephen Warrenconfig PINCTRL_TEGRA20
175971dac71SStephen Warren	bool
176971dac71SStephen Warren	select PINCTRL_TEGRA
177971dac71SStephen Warren
178971dac71SStephen Warrenconfig PINCTRL_TEGRA30
179971dac71SStephen Warren	bool
180971dac71SStephen Warren	select PINCTRL_TEGRA
181971dac71SStephen Warren
182b6ae7a26SPritesh Raithathaconfig PINCTRL_TEGRA114
183b6ae7a26SPritesh Raithatha	bool
184b6ae7a26SPritesh Raithatha	select PINCTRL_TEGRA
185b6ae7a26SPritesh Raithatha
1863bece55aSLinus Walleijconfig PINCTRL_U300
1873bece55aSLinus Walleij	bool "U300 pin controller driver"
18898da3529SLinus Walleij	depends on ARCH_U300
18998da3529SLinus Walleij	select PINMUX
190dc0b1aa3SLinus Walleij	select GENERIC_PINCONF
19145f034efSLinus Walleij
192ca402d37SLinus Walleijconfig PINCTRL_COH901
193ca402d37SLinus Walleij	bool "ST-Ericsson U300 COH 901 335/571 GPIO"
1943c94d1bbSLinus Walleij	depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
195ca402d37SLinus Walleij	help
196ca402d37SLinus Walleij	  Say yes here to support GPIO interface on ST-Ericsson U300.
197ca402d37SLinus Walleij	  The names of the two IP block variants supported are
198ca402d37SLinus Walleij	  COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
199ca402d37SLinus Walleij	  ports of 8 GPIO pins each.
200ca402d37SLinus Walleij
20130574f0dSThomas Abrahamconfig PINCTRL_SAMSUNG
202cbc351abSArnd Bergmann	bool
203924da314SAxel Lin	depends on OF && GPIOLIB
20430574f0dSThomas Abraham	select PINMUX
20530574f0dSThomas Abraham	select PINCONF
20630574f0dSThomas Abraham
2077452b64dSKukjin Kimconfig PINCTRL_EXYNOS
2087452b64dSKukjin Kim	bool "Pinctrl driver data for Samsung EXYNOS SoCs"
209924da314SAxel Lin	depends on OF && GPIOLIB
21043b169dbSThomas Abraham	select PINCTRL_SAMSUNG
21143b169dbSThomas Abraham
212f0b9a7e5SThomas Abrahamconfig PINCTRL_EXYNOS5440
213f0b9a7e5SThomas Abraham	bool "Samsung EXYNOS5440 SoC pinctrl driver"
214f0b9a7e5SThomas Abraham	select PINMUX
215f0b9a7e5SThomas Abraham	select PINCONF
216f0b9a7e5SThomas Abraham
21706763c74SThomas Petazzonisource "drivers/pinctrl/mvebu/Kconfig"
218463e270fSThomas Petazzoni
219deda8287SViresh Kumarsource "drivers/pinctrl/spear/Kconfig"
220deda8287SViresh Kumar
2213f8c50c9SJohn Crispinconfig PINCTRL_XWAY
2223f8c50c9SJohn Crispin	bool
2233f8c50c9SJohn Crispin	depends on SOC_TYPE_XWAY
2243f8c50c9SJohn Crispin	depends on PINCTRL_LANTIQ
2253f8c50c9SJohn Crispin
22645f034efSLinus Walleijendmenu
22798da3529SLinus Walleij
2282744e8afSLinus Walleijendif
229