xref: /linux/drivers/pinctrl/Kconfig (revision 0e37f88d9ad800f5dd94c9fc9dc304b4e9cb7d2c)
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
296732ae5cSJean-Christophe PLAGNIOL-VILLARDconfig PINCTRL_AT91
306732ae5cSJean-Christophe PLAGNIOL-VILLARD	bool "AT91 pinctrl driver"
316732ae5cSJean-Christophe PLAGNIOL-VILLARD	depends on OF
326732ae5cSJean-Christophe PLAGNIOL-VILLARD	depends on ARCH_AT91
336732ae5cSJean-Christophe PLAGNIOL-VILLARD	select PINMUX
346732ae5cSJean-Christophe PLAGNIOL-VILLARD	select PINCONF
356732ae5cSJean-Christophe PLAGNIOL-VILLARD	help
366732ae5cSJean-Christophe PLAGNIOL-VILLARD	  Say Y here to enable the at91 pinctrl driver
376732ae5cSJean-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
10017723111SShawn Guoconfig PINCTRL_MXS
10117723111SShawn Guo	bool
10290db8a14SAxel Lin	select PINMUX
10390db8a14SAxel Lin	select PINCONF
10417723111SShawn Guo
10517723111SShawn Guoconfig PINCTRL_IMX23
10617723111SShawn Guo	bool
10717723111SShawn Guo	select PINCTRL_MXS
10817723111SShawn Guo
10917723111SShawn Guoconfig PINCTRL_IMX28
11017723111SShawn Guo	bool
11117723111SShawn Guo	select PINCTRL_MXS
11217723111SShawn Guo
113e98ea774SLinus Walleijconfig PINCTRL_NOMADIK
114e98ea774SLinus Walleij	bool "Nomadik pin controller driver"
1150fa7be40SArnd Bergmann	depends on ARCH_U8500 || ARCH_NOMADIK
116dbfe8ca2SLinus Walleij	select PINMUX
117d41af627SLinus Walleij	select PINCONF
118e98ea774SLinus Walleij
119f79c5ed9SLinus Walleijconfig PINCTRL_STN8815
120f79c5ed9SLinus Walleij	bool "STN8815 pin controller driver"
121f79c5ed9SLinus Walleij	depends on PINCTRL_NOMADIK && ARCH_NOMADIK
122f79c5ed9SLinus Walleij
123e98ea774SLinus Walleijconfig PINCTRL_DB8500
124e98ea774SLinus Walleij	bool "DB8500 pin controller driver"
125e98ea774SLinus Walleij	depends on PINCTRL_NOMADIK && ARCH_U8500
126e98ea774SLinus Walleij
12745a1b531SPatrice Chotardconfig PINCTRL_DB8540
12845a1b531SPatrice Chotard	bool "DB8540 pin controller driver"
12945a1b531SPatrice Chotard	depends on PINCTRL_NOMADIK && ARCH_U8500
13045a1b531SPatrice Chotard
131f4e66983SHaojian Zhuangconfig PINCTRL_PXA168
132f4e66983SHaojian Zhuang	bool "PXA168 pin controller driver"
133f4e66983SHaojian Zhuang	depends on ARCH_MMP
134f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
135f4e66983SHaojian Zhuang
136f4e66983SHaojian Zhuangconfig PINCTRL_PXA910
137f4e66983SHaojian Zhuang	bool "PXA910 pin controller driver"
138f4e66983SHaojian Zhuang	depends on ARCH_MMP
139f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
140f4e66983SHaojian Zhuang
1418b8b091bSTony Lindgrenconfig PINCTRL_SINGLE
1428b8b091bSTony Lindgren	tristate "One-register-per-pin type device tree based pinctrl driver"
1438b8b091bSTony Lindgren	depends on OF
1448b8b091bSTony Lindgren	select PINMUX
1458b8b091bSTony Lindgren	select PINCONF
1468b8b091bSTony Lindgren	help
1478b8b091bSTony Lindgren	  This selects the device tree based generic pinctrl driver.
1488b8b091bSTony Lindgren
1493bece55aSLinus Walleijconfig PINCTRL_SIRF
150d3e26f2fSBarry Song	bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
151d3e26f2fSBarry Song	depends on ARCH_SIRF
152393daa81SRongjun Ying	select PINMUX
153393daa81SRongjun Ying
154*0e37f88dSMaxime Ripardconfig PINCTRL_SUNXI
155*0e37f88dSMaxime Ripard	bool
156*0e37f88dSMaxime Ripard	select PINMUX
157*0e37f88dSMaxime Ripard	select GENERIC_PINCONF
158*0e37f88dSMaxime Ripard
159971dac71SStephen Warrenconfig PINCTRL_TEGRA
160971dac71SStephen Warren	bool
161507ccdbfSAxel Lin	select PINMUX
162507ccdbfSAxel Lin	select PINCONF
163971dac71SStephen Warren
164971dac71SStephen Warrenconfig PINCTRL_TEGRA20
165971dac71SStephen Warren	bool
166971dac71SStephen Warren	select PINCTRL_TEGRA
167971dac71SStephen Warren
168971dac71SStephen Warrenconfig PINCTRL_TEGRA30
169971dac71SStephen Warren	bool
170971dac71SStephen Warren	select PINCTRL_TEGRA
171971dac71SStephen Warren
1723bece55aSLinus Walleijconfig PINCTRL_U300
1733bece55aSLinus Walleij	bool "U300 pin controller driver"
17498da3529SLinus Walleij	depends on ARCH_U300
17598da3529SLinus Walleij	select PINMUX
176dc0b1aa3SLinus Walleij	select GENERIC_PINCONF
17745f034efSLinus Walleij
178ca402d37SLinus Walleijconfig PINCTRL_COH901
179ca402d37SLinus Walleij	bool "ST-Ericsson U300 COH 901 335/571 GPIO"
1803c94d1bbSLinus Walleij	depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
181ca402d37SLinus Walleij	help
182ca402d37SLinus Walleij	  Say yes here to support GPIO interface on ST-Ericsson U300.
183ca402d37SLinus Walleij	  The names of the two IP block variants supported are
184ca402d37SLinus Walleij	  COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
185ca402d37SLinus Walleij	  ports of 8 GPIO pins each.
186ca402d37SLinus Walleij
18730574f0dSThomas Abrahamconfig PINCTRL_SAMSUNG
188cbc351abSArnd Bergmann	bool
189924da314SAxel Lin	depends on OF && GPIOLIB
19030574f0dSThomas Abraham	select PINMUX
19130574f0dSThomas Abraham	select PINCONF
19230574f0dSThomas Abraham
19343b169dbSThomas Abrahamconfig PINCTRL_EXYNOS4
19443b169dbSThomas Abraham	bool "Pinctrl driver data for Exynos4 SoC"
195924da314SAxel Lin	depends on OF && GPIOLIB
19643b169dbSThomas Abraham	select PINCTRL_SAMSUNG
19743b169dbSThomas Abraham
198f0b9a7e5SThomas Abrahamconfig PINCTRL_EXYNOS5440
199f0b9a7e5SThomas Abraham	bool "Samsung EXYNOS5440 SoC pinctrl driver"
200f0b9a7e5SThomas Abraham	select PINMUX
201f0b9a7e5SThomas Abraham	select PINCONF
202f0b9a7e5SThomas Abraham
20306763c74SThomas Petazzonisource "drivers/pinctrl/mvebu/Kconfig"
204463e270fSThomas Petazzoni
205deda8287SViresh Kumarsource "drivers/pinctrl/spear/Kconfig"
206deda8287SViresh Kumar
2073f8c50c9SJohn Crispinconfig PINCTRL_XWAY
2083f8c50c9SJohn Crispin	bool
2093f8c50c9SJohn Crispin	depends on SOC_TYPE_XWAY
2103f8c50c9SJohn Crispin	depends on PINCTRL_LANTIQ
2113f8c50c9SJohn Crispin
21245f034efSLinus Walleijendmenu
21398da3529SLinus Walleij
2142744e8afSLinus Walleijendif
215