xref: /linux/drivers/pinctrl/Kconfig (revision 6732ae5cb47c4f9a72727585956f2a5e069d1637)
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*6732ae5cSJean-Christophe PLAGNIOL-VILLARDconfig PINCTRL_AT91
30*6732ae5cSJean-Christophe PLAGNIOL-VILLARD	bool "AT91 pinctrl driver"
31*6732ae5cSJean-Christophe PLAGNIOL-VILLARD	depends on OF
32*6732ae5cSJean-Christophe PLAGNIOL-VILLARD	depends on ARCH_AT91
33*6732ae5cSJean-Christophe PLAGNIOL-VILLARD	select PINMUX
34*6732ae5cSJean-Christophe PLAGNIOL-VILLARD	select PINCONF
35*6732ae5cSJean-Christophe PLAGNIOL-VILLARD	help
36*6732ae5cSJean-Christophe PLAGNIOL-VILLARD	  Say Y here to enable the at91 pinctrl driver
37*6732ae5cSJean-Christophe PLAGNIOL-VILLARD
38e1b2dc70SSimon Arlottconfig PINCTRL_BCM2835
39e1b2dc70SSimon Arlott	bool
40e1b2dc70SSimon Arlott	select PINMUX
41e1b2dc70SSimon Arlott	select PINCONF
42e1b2dc70SSimon Arlott
43ae75ff81SDong Aishengconfig PINCTRL_IMX
44ae75ff81SDong Aisheng	bool
45ae75ff81SDong Aisheng	select PINMUX
46ae75ff81SDong Aisheng	select PINCONF
47ae75ff81SDong Aisheng
48b9aa8f13SUwe Kleine-Königconfig PINCTRL_IMX35
49b9aa8f13SUwe Kleine-König	bool "IMX35 pinctrl driver"
50b9aa8f13SUwe Kleine-König	depends on OF
51b9aa8f13SUwe Kleine-König	depends on SOC_IMX35
52b9aa8f13SUwe Kleine-König	select PINCTRL_IMX
53b9aa8f13SUwe Kleine-König	help
54b9aa8f13SUwe Kleine-König	  Say Y here to enable the imx35 pinctrl driver
55b9aa8f13SUwe Kleine-König
564f6a16bfSDong Aishengconfig PINCTRL_IMX51
574f6a16bfSDong Aisheng	bool "IMX51 pinctrl driver"
584f6a16bfSDong Aisheng	depends on OF
594f6a16bfSDong Aisheng	depends on SOC_IMX51
604f6a16bfSDong Aisheng	select PINCTRL_IMX
614f6a16bfSDong Aisheng	help
624f6a16bfSDong Aisheng	  Say Y here to enable the imx51 pinctrl driver
634f6a16bfSDong Aisheng
6493fbd3c0SDong Aishengconfig PINCTRL_IMX53
6593fbd3c0SDong Aisheng	bool "IMX53 pinctrl driver"
6693fbd3c0SDong Aisheng	depends on OF
6793fbd3c0SDong Aisheng	depends on SOC_IMX53
6893fbd3c0SDong Aisheng	select PINCTRL_IMX
6993fbd3c0SDong Aisheng	help
7093fbd3c0SDong Aisheng	  Say Y here to enable the imx53 pinctrl driver
7193fbd3c0SDong Aisheng
72d8fe3572SDong Aishengconfig PINCTRL_IMX6Q
73d8fe3572SDong Aisheng	bool "IMX6Q pinctrl driver"
74d8fe3572SDong Aisheng	depends on OF
75d8fe3572SDong Aisheng	depends on SOC_IMX6Q
76d8fe3572SDong Aisheng	select PINCTRL_IMX
77d8fe3572SDong Aisheng	help
78d8fe3572SDong Aisheng	  Say Y here to enable the imx6q pinctrl driver
79d8fe3572SDong Aisheng
803f8c50c9SJohn Crispinconfig PINCTRL_LANTIQ
813f8c50c9SJohn Crispin	bool
823f8c50c9SJohn Crispin	depends on LANTIQ
833f8c50c9SJohn Crispin	select PINMUX
843f8c50c9SJohn Crispin	select PINCONF
853f8c50c9SJohn Crispin
86f4e66983SHaojian Zhuangconfig PINCTRL_PXA3xx
87f4e66983SHaojian Zhuang	bool
88f4e66983SHaojian Zhuang	select PINMUX
89f4e66983SHaojian Zhuang
90e316cb2bSJohn Crispinconfig PINCTRL_FALCON
91e316cb2bSJohn Crispin	bool
92e316cb2bSJohn Crispin	depends on SOC_FALCON
93e316cb2bSJohn Crispin	depends on PINCTRL_LANTIQ
94e316cb2bSJohn Crispin
95f4e66983SHaojian Zhuangconfig PINCTRL_MMP2
96f4e66983SHaojian Zhuang	bool "MMP2 pin controller driver"
97f4e66983SHaojian Zhuang	depends on ARCH_MMP
98f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
99f4e66983SHaojian Zhuang	select PINCONF
100f4e66983SHaojian Zhuang
10117723111SShawn Guoconfig PINCTRL_MXS
10217723111SShawn Guo	bool
10317723111SShawn Guo
10417723111SShawn Guoconfig PINCTRL_IMX23
10517723111SShawn Guo	bool
10617723111SShawn Guo	select PINMUX
10717723111SShawn Guo	select PINCONF
10817723111SShawn Guo	select PINCTRL_MXS
10917723111SShawn Guo
11017723111SShawn Guoconfig PINCTRL_IMX28
11117723111SShawn Guo	bool
11217723111SShawn Guo	select PINMUX
11317723111SShawn Guo	select PINCONF
11417723111SShawn Guo	select PINCTRL_MXS
11517723111SShawn Guo
116e98ea774SLinus Walleijconfig PINCTRL_NOMADIK
117e98ea774SLinus Walleij	bool "Nomadik pin controller driver"
1180fa7be40SArnd Bergmann	depends on ARCH_U8500 || ARCH_NOMADIK
119dbfe8ca2SLinus Walleij	select PINMUX
120d41af627SLinus Walleij	select PINCONF
121e98ea774SLinus Walleij
122f79c5ed9SLinus Walleijconfig PINCTRL_STN8815
123f79c5ed9SLinus Walleij	bool "STN8815 pin controller driver"
124f79c5ed9SLinus Walleij	depends on PINCTRL_NOMADIK && ARCH_NOMADIK
125f79c5ed9SLinus Walleij
126e98ea774SLinus Walleijconfig PINCTRL_DB8500
127e98ea774SLinus Walleij	bool "DB8500 pin controller driver"
128e98ea774SLinus Walleij	depends on PINCTRL_NOMADIK && ARCH_U8500
129e98ea774SLinus Walleij
13045a1b531SPatrice Chotardconfig PINCTRL_DB8540
13145a1b531SPatrice Chotard	bool "DB8540 pin controller driver"
13245a1b531SPatrice Chotard	depends on PINCTRL_NOMADIK && ARCH_U8500
13345a1b531SPatrice Chotard
134f4e66983SHaojian Zhuangconfig PINCTRL_PXA168
135f4e66983SHaojian Zhuang	bool "PXA168 pin controller driver"
136f4e66983SHaojian Zhuang	depends on ARCH_MMP
137f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
138f4e66983SHaojian Zhuang	select PINCONF
139f4e66983SHaojian Zhuang
140f4e66983SHaojian Zhuangconfig PINCTRL_PXA910
141f4e66983SHaojian Zhuang	bool "PXA910 pin controller driver"
142f4e66983SHaojian Zhuang	depends on ARCH_MMP
143f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
144f4e66983SHaojian Zhuang	select PINCONF
145f4e66983SHaojian Zhuang
1468b8b091bSTony Lindgrenconfig PINCTRL_SINGLE
1478b8b091bSTony Lindgren	tristate "One-register-per-pin type device tree based pinctrl driver"
1488b8b091bSTony Lindgren	depends on OF
1498b8b091bSTony Lindgren	select PINMUX
1508b8b091bSTony Lindgren	select PINCONF
1518b8b091bSTony Lindgren	help
1528b8b091bSTony Lindgren	  This selects the device tree based generic pinctrl driver.
1538b8b091bSTony Lindgren
1543bece55aSLinus Walleijconfig PINCTRL_SIRF
1553bece55aSLinus Walleij	bool "CSR SiRFprimaII pin controller driver"
156393daa81SRongjun Ying	depends on ARCH_PRIMA2
157393daa81SRongjun Ying	select PINMUX
158393daa81SRongjun Ying
159971dac71SStephen Warrenconfig PINCTRL_TEGRA
160971dac71SStephen Warren	bool
161971dac71SStephen Warren
162971dac71SStephen Warrenconfig PINCTRL_TEGRA20
163971dac71SStephen Warren	bool
164971dac71SStephen Warren	select PINMUX
165971dac71SStephen Warren	select PINCONF
166971dac71SStephen Warren	select PINCTRL_TEGRA
167971dac71SStephen Warren
168971dac71SStephen Warrenconfig PINCTRL_TEGRA30
169971dac71SStephen Warren	bool
170971dac71SStephen Warren	select PINMUX
171971dac71SStephen Warren	select PINCONF
172971dac71SStephen Warren	select PINCTRL_TEGRA
173971dac71SStephen Warren
1743bece55aSLinus Walleijconfig PINCTRL_U300
1753bece55aSLinus Walleij	bool "U300 pin controller driver"
17698da3529SLinus Walleij	depends on ARCH_U300
17798da3529SLinus Walleij	select PINMUX
178dc0b1aa3SLinus Walleij	select GENERIC_PINCONF
17945f034efSLinus Walleij
180ca402d37SLinus Walleijconfig PINCTRL_COH901
181ca402d37SLinus Walleij	bool "ST-Ericsson U300 COH 901 335/571 GPIO"
1823c94d1bbSLinus Walleij	depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
183ca402d37SLinus Walleij	help
184ca402d37SLinus Walleij	  Say yes here to support GPIO interface on ST-Ericsson U300.
185ca402d37SLinus Walleij	  The names of the two IP block variants supported are
186ca402d37SLinus Walleij	  COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
187ca402d37SLinus Walleij	  ports of 8 GPIO pins each.
188ca402d37SLinus Walleij
18930574f0dSThomas Abrahamconfig PINCTRL_SAMSUNG
19030574f0dSThomas Abraham	bool "Samsung pinctrl driver"
19130574f0dSThomas Abraham	select PINMUX
19230574f0dSThomas Abraham	select PINCONF
19330574f0dSThomas Abraham
19443b169dbSThomas Abrahamconfig PINCTRL_EXYNOS4
19543b169dbSThomas Abraham	bool "Pinctrl driver data for Exynos4 SoC"
19643b169dbSThomas Abraham	select PINCTRL_SAMSUNG
19743b169dbSThomas Abraham
1987e8d9415SSebastian Hesselbarthconfig PINCTRL_MVEBU
1997e8d9415SSebastian Hesselbarth	bool
2007e8d9415SSebastian Hesselbarth	depends on ARCH_MVEBU
2017e8d9415SSebastian Hesselbarth	select PINMUX
2027e8d9415SSebastian Hesselbarth	select PINCONF
2037e8d9415SSebastian Hesselbarth
204c9f95cedSSebastian Hesselbarthconfig PINCTRL_DOVE
205c9f95cedSSebastian Hesselbarth	bool
206c9f95cedSSebastian Hesselbarth	select PINCTRL_MVEBU
207c9f95cedSSebastian Hesselbarth
2089d4b1632SSebastian Hesselbarthconfig PINCTRL_KIRKWOOD
2099d4b1632SSebastian Hesselbarth	bool
2109d4b1632SSebastian Hesselbarth	select PINCTRL_MVEBU
2119d4b1632SSebastian Hesselbarth
2125f597bb2SThomas Petazzoniconfig PINCTRL_ARMADA_370
2135f597bb2SThomas Petazzoni	bool
2145f597bb2SThomas Petazzoni	select PINCTRL_MVEBU
2155f597bb2SThomas Petazzoni
216463e270fSThomas Petazzoniconfig PINCTRL_ARMADA_XP
217463e270fSThomas Petazzoni	bool
218463e270fSThomas Petazzoni	select PINCTRL_MVEBU
219463e270fSThomas Petazzoni
220deda8287SViresh Kumarsource "drivers/pinctrl/spear/Kconfig"
221deda8287SViresh Kumar
2223f8c50c9SJohn Crispinconfig PINCTRL_XWAY
2233f8c50c9SJohn Crispin	bool
2243f8c50c9SJohn Crispin	depends on SOC_TYPE_XWAY
2253f8c50c9SJohn Crispin	depends on PINCTRL_LANTIQ
2263f8c50c9SJohn Crispin
22745f034efSLinus Walleijendmenu
22898da3529SLinus Walleij
2292744e8afSLinus Walleijendif
230