xref: /linux/drivers/pinctrl/Kconfig (revision 0493e6493031523f78680b4469f02fc1b2d440f3)
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
29*0493e649SPatrice Chotardconfig PINCTRL_ABX500
30*0493e649SPatrice Chotard	bool "ST-Ericsson ABx500 family Mixed Signal Circuit gpio functions"
31*0493e649SPatrice Chotard	depends on AB8500_CORE
32*0493e649SPatrice Chotard	select GENERIC_PINCONF
33*0493e649SPatrice Chotard	help
34*0493e649SPatrice Chotard	  Select this to enable the ABx500 family IC GPIO driver
35*0493e649SPatrice Chotard
366732ae5cSJean-Christophe PLAGNIOL-VILLARDconfig PINCTRL_AT91
376732ae5cSJean-Christophe PLAGNIOL-VILLARD	bool "AT91 pinctrl driver"
386732ae5cSJean-Christophe PLAGNIOL-VILLARD	depends on OF
396732ae5cSJean-Christophe PLAGNIOL-VILLARD	depends on ARCH_AT91
406732ae5cSJean-Christophe PLAGNIOL-VILLARD	select PINMUX
416732ae5cSJean-Christophe PLAGNIOL-VILLARD	select PINCONF
426732ae5cSJean-Christophe PLAGNIOL-VILLARD	help
436732ae5cSJean-Christophe PLAGNIOL-VILLARD	  Say Y here to enable the at91 pinctrl driver
446732ae5cSJean-Christophe PLAGNIOL-VILLARD
45e1b2dc70SSimon Arlottconfig PINCTRL_BCM2835
46e1b2dc70SSimon Arlott	bool
47e1b2dc70SSimon Arlott	select PINMUX
48e1b2dc70SSimon Arlott	select PINCONF
49e1b2dc70SSimon Arlott
50ae75ff81SDong Aishengconfig PINCTRL_IMX
51ae75ff81SDong Aisheng	bool
52ae75ff81SDong Aisheng	select PINMUX
53ae75ff81SDong Aisheng	select PINCONF
54ae75ff81SDong Aisheng
55b9aa8f13SUwe Kleine-Königconfig PINCTRL_IMX35
56b9aa8f13SUwe Kleine-König	bool "IMX35 pinctrl driver"
57b9aa8f13SUwe Kleine-König	depends on OF
58b9aa8f13SUwe Kleine-König	depends on SOC_IMX35
59b9aa8f13SUwe Kleine-König	select PINCTRL_IMX
60b9aa8f13SUwe Kleine-König	help
61b9aa8f13SUwe Kleine-König	  Say Y here to enable the imx35 pinctrl driver
62b9aa8f13SUwe Kleine-König
634f6a16bfSDong Aishengconfig PINCTRL_IMX51
644f6a16bfSDong Aisheng	bool "IMX51 pinctrl driver"
654f6a16bfSDong Aisheng	depends on OF
664f6a16bfSDong Aisheng	depends on SOC_IMX51
674f6a16bfSDong Aisheng	select PINCTRL_IMX
684f6a16bfSDong Aisheng	help
694f6a16bfSDong Aisheng	  Say Y here to enable the imx51 pinctrl driver
704f6a16bfSDong Aisheng
7193fbd3c0SDong Aishengconfig PINCTRL_IMX53
7293fbd3c0SDong Aisheng	bool "IMX53 pinctrl driver"
7393fbd3c0SDong Aisheng	depends on OF
7493fbd3c0SDong Aisheng	depends on SOC_IMX53
7593fbd3c0SDong Aisheng	select PINCTRL_IMX
7693fbd3c0SDong Aisheng	help
7793fbd3c0SDong Aisheng	  Say Y here to enable the imx53 pinctrl driver
7893fbd3c0SDong Aisheng
79d8fe3572SDong Aishengconfig PINCTRL_IMX6Q
80d8fe3572SDong Aisheng	bool "IMX6Q pinctrl driver"
81d8fe3572SDong Aisheng	depends on OF
82d8fe3572SDong Aisheng	depends on SOC_IMX6Q
83d8fe3572SDong Aisheng	select PINCTRL_IMX
84d8fe3572SDong Aisheng	help
85d8fe3572SDong Aisheng	  Say Y here to enable the imx6q pinctrl driver
86d8fe3572SDong Aisheng
873f8c50c9SJohn Crispinconfig PINCTRL_LANTIQ
883f8c50c9SJohn Crispin	bool
893f8c50c9SJohn Crispin	depends on LANTIQ
903f8c50c9SJohn Crispin	select PINMUX
913f8c50c9SJohn Crispin	select PINCONF
923f8c50c9SJohn Crispin
93f4e66983SHaojian Zhuangconfig PINCTRL_PXA3xx
94f4e66983SHaojian Zhuang	bool
95f4e66983SHaojian Zhuang	select PINMUX
96f4e66983SHaojian Zhuang
97e316cb2bSJohn Crispinconfig PINCTRL_FALCON
98e316cb2bSJohn Crispin	bool
99e316cb2bSJohn Crispin	depends on SOC_FALCON
100e316cb2bSJohn Crispin	depends on PINCTRL_LANTIQ
101e316cb2bSJohn Crispin
102f4e66983SHaojian Zhuangconfig PINCTRL_MMP2
103f4e66983SHaojian Zhuang	bool "MMP2 pin controller driver"
104f4e66983SHaojian Zhuang	depends on ARCH_MMP
105f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
106f4e66983SHaojian Zhuang
10717723111SShawn Guoconfig PINCTRL_MXS
10817723111SShawn Guo	bool
10990db8a14SAxel Lin	select PINMUX
11090db8a14SAxel Lin	select PINCONF
11117723111SShawn Guo
11217723111SShawn Guoconfig PINCTRL_IMX23
11317723111SShawn Guo	bool
11417723111SShawn Guo	select PINCTRL_MXS
11517723111SShawn Guo
11617723111SShawn Guoconfig PINCTRL_IMX28
11717723111SShawn Guo	bool
11817723111SShawn Guo	select PINCTRL_MXS
11917723111SShawn Guo
120e98ea774SLinus Walleijconfig PINCTRL_NOMADIK
121e98ea774SLinus Walleij	bool "Nomadik pin controller driver"
1220fa7be40SArnd Bergmann	depends on ARCH_U8500 || ARCH_NOMADIK
123dbfe8ca2SLinus Walleij	select PINMUX
124d41af627SLinus Walleij	select PINCONF
125e98ea774SLinus Walleij
126f79c5ed9SLinus Walleijconfig PINCTRL_STN8815
127f79c5ed9SLinus Walleij	bool "STN8815 pin controller driver"
128f79c5ed9SLinus Walleij	depends on PINCTRL_NOMADIK && ARCH_NOMADIK
129f79c5ed9SLinus Walleij
130e98ea774SLinus Walleijconfig PINCTRL_DB8500
131e98ea774SLinus Walleij	bool "DB8500 pin controller driver"
132e98ea774SLinus Walleij	depends on PINCTRL_NOMADIK && ARCH_U8500
133e98ea774SLinus Walleij
13445a1b531SPatrice Chotardconfig PINCTRL_DB8540
13545a1b531SPatrice Chotard	bool "DB8540 pin controller driver"
13645a1b531SPatrice Chotard	depends on PINCTRL_NOMADIK && ARCH_U8500
13745a1b531SPatrice Chotard
138f4e66983SHaojian Zhuangconfig PINCTRL_PXA168
139f4e66983SHaojian Zhuang	bool "PXA168 pin controller driver"
140f4e66983SHaojian Zhuang	depends on ARCH_MMP
141f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
142f4e66983SHaojian Zhuang
143f4e66983SHaojian Zhuangconfig PINCTRL_PXA910
144f4e66983SHaojian Zhuang	bool "PXA910 pin controller driver"
145f4e66983SHaojian Zhuang	depends on ARCH_MMP
146f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
147f4e66983SHaojian Zhuang
1488b8b091bSTony Lindgrenconfig PINCTRL_SINGLE
1498b8b091bSTony Lindgren	tristate "One-register-per-pin type device tree based pinctrl driver"
1508b8b091bSTony Lindgren	depends on OF
1518b8b091bSTony Lindgren	select PINMUX
1528b8b091bSTony Lindgren	select PINCONF
1538b8b091bSTony Lindgren	help
1548b8b091bSTony Lindgren	  This selects the device tree based generic pinctrl driver.
1558b8b091bSTony Lindgren
1563bece55aSLinus Walleijconfig PINCTRL_SIRF
157d3e26f2fSBarry Song	bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
158d3e26f2fSBarry Song	depends on ARCH_SIRF
159393daa81SRongjun Ying	select PINMUX
160393daa81SRongjun Ying
161971dac71SStephen Warrenconfig PINCTRL_TEGRA
162971dac71SStephen Warren	bool
163507ccdbfSAxel Lin	select PINMUX
164507ccdbfSAxel Lin	select PINCONF
165971dac71SStephen Warren
166971dac71SStephen Warrenconfig PINCTRL_TEGRA20
167971dac71SStephen Warren	bool
168971dac71SStephen Warren	select PINCTRL_TEGRA
169971dac71SStephen Warren
170971dac71SStephen Warrenconfig PINCTRL_TEGRA30
171971dac71SStephen Warren	bool
172971dac71SStephen Warren	select PINCTRL_TEGRA
173971dac71SStephen Warren
174b6ae7a26SPritesh Raithathaconfig PINCTRL_TEGRA114
175b6ae7a26SPritesh Raithatha	bool
176b6ae7a26SPritesh Raithatha	select PINCTRL_TEGRA
177b6ae7a26SPritesh Raithatha
1783bece55aSLinus Walleijconfig PINCTRL_U300
1793bece55aSLinus Walleij	bool "U300 pin controller driver"
18098da3529SLinus Walleij	depends on ARCH_U300
18198da3529SLinus Walleij	select PINMUX
182dc0b1aa3SLinus Walleij	select GENERIC_PINCONF
18345f034efSLinus Walleij
184ca402d37SLinus Walleijconfig PINCTRL_COH901
185ca402d37SLinus Walleij	bool "ST-Ericsson U300 COH 901 335/571 GPIO"
1863c94d1bbSLinus Walleij	depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
187ca402d37SLinus Walleij	help
188ca402d37SLinus Walleij	  Say yes here to support GPIO interface on ST-Ericsson U300.
189ca402d37SLinus Walleij	  The names of the two IP block variants supported are
190ca402d37SLinus Walleij	  COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
191ca402d37SLinus Walleij	  ports of 8 GPIO pins each.
192ca402d37SLinus Walleij
19330574f0dSThomas Abrahamconfig PINCTRL_SAMSUNG
194cbc351abSArnd Bergmann	bool
195924da314SAxel Lin	depends on OF && GPIOLIB
19630574f0dSThomas Abraham	select PINMUX
19730574f0dSThomas Abraham	select PINCONF
19830574f0dSThomas Abraham
1997452b64dSKukjin Kimconfig PINCTRL_EXYNOS
2007452b64dSKukjin Kim	bool "Pinctrl driver data for Samsung EXYNOS SoCs"
201924da314SAxel Lin	depends on OF && GPIOLIB
20243b169dbSThomas Abraham	select PINCTRL_SAMSUNG
20343b169dbSThomas Abraham
204f0b9a7e5SThomas Abrahamconfig PINCTRL_EXYNOS5440
205f0b9a7e5SThomas Abraham	bool "Samsung EXYNOS5440 SoC pinctrl driver"
206f0b9a7e5SThomas Abraham	select PINMUX
207f0b9a7e5SThomas Abraham	select PINCONF
208f0b9a7e5SThomas Abraham
20906763c74SThomas Petazzonisource "drivers/pinctrl/mvebu/Kconfig"
210463e270fSThomas Petazzoni
211deda8287SViresh Kumarsource "drivers/pinctrl/spear/Kconfig"
212deda8287SViresh Kumar
2133f8c50c9SJohn Crispinconfig PINCTRL_XWAY
2143f8c50c9SJohn Crispin	bool
2153f8c50c9SJohn Crispin	depends on SOC_TYPE_XWAY
2163f8c50c9SJohn Crispin	depends on PINCTRL_LANTIQ
2173f8c50c9SJohn Crispin
21845f034efSLinus Walleijendmenu
21998da3529SLinus Walleij
2202744e8afSLinus Walleijendif
221