xref: /linux/drivers/pinctrl/Kconfig (revision f0b9a7e521fa2fc5f3e0e57472126a6fed9cbb99)
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
29e1b2dc70SSimon Arlottconfig PINCTRL_BCM2835
30e1b2dc70SSimon Arlott	bool
31e1b2dc70SSimon Arlott	select PINMUX
32e1b2dc70SSimon Arlott	select PINCONF
33e1b2dc70SSimon Arlott
34ae75ff81SDong Aishengconfig PINCTRL_IMX
35ae75ff81SDong Aisheng	bool
36ae75ff81SDong Aisheng	select PINMUX
37ae75ff81SDong Aisheng	select PINCONF
38ae75ff81SDong Aisheng
39b9aa8f13SUwe Kleine-Königconfig PINCTRL_IMX35
40b9aa8f13SUwe Kleine-König	bool "IMX35 pinctrl driver"
41b9aa8f13SUwe Kleine-König	depends on OF
42b9aa8f13SUwe Kleine-König	depends on SOC_IMX35
43b9aa8f13SUwe Kleine-König	select PINCTRL_IMX
44b9aa8f13SUwe Kleine-König	help
45b9aa8f13SUwe Kleine-König	  Say Y here to enable the imx35 pinctrl driver
46b9aa8f13SUwe Kleine-König
474f6a16bfSDong Aishengconfig PINCTRL_IMX51
484f6a16bfSDong Aisheng	bool "IMX51 pinctrl driver"
494f6a16bfSDong Aisheng	depends on OF
504f6a16bfSDong Aisheng	depends on SOC_IMX51
514f6a16bfSDong Aisheng	select PINCTRL_IMX
524f6a16bfSDong Aisheng	help
534f6a16bfSDong Aisheng	  Say Y here to enable the imx51 pinctrl driver
544f6a16bfSDong Aisheng
5593fbd3c0SDong Aishengconfig PINCTRL_IMX53
5693fbd3c0SDong Aisheng	bool "IMX53 pinctrl driver"
5793fbd3c0SDong Aisheng	depends on OF
5893fbd3c0SDong Aisheng	depends on SOC_IMX53
5993fbd3c0SDong Aisheng	select PINCTRL_IMX
6093fbd3c0SDong Aisheng	help
6193fbd3c0SDong Aisheng	  Say Y here to enable the imx53 pinctrl driver
6293fbd3c0SDong Aisheng
63d8fe3572SDong Aishengconfig PINCTRL_IMX6Q
64d8fe3572SDong Aisheng	bool "IMX6Q pinctrl driver"
65d8fe3572SDong Aisheng	depends on OF
66d8fe3572SDong Aisheng	depends on SOC_IMX6Q
67d8fe3572SDong Aisheng	select PINCTRL_IMX
68d8fe3572SDong Aisheng	help
69d8fe3572SDong Aisheng	  Say Y here to enable the imx6q pinctrl driver
70d8fe3572SDong Aisheng
713f8c50c9SJohn Crispinconfig PINCTRL_LANTIQ
723f8c50c9SJohn Crispin	bool
733f8c50c9SJohn Crispin	depends on LANTIQ
743f8c50c9SJohn Crispin	select PINMUX
753f8c50c9SJohn Crispin	select PINCONF
763f8c50c9SJohn Crispin
77f4e66983SHaojian Zhuangconfig PINCTRL_PXA3xx
78f4e66983SHaojian Zhuang	bool
79f4e66983SHaojian Zhuang	select PINMUX
80f4e66983SHaojian Zhuang
81e316cb2bSJohn Crispinconfig PINCTRL_FALCON
82e316cb2bSJohn Crispin	bool
83e316cb2bSJohn Crispin	depends on SOC_FALCON
84e316cb2bSJohn Crispin	depends on PINCTRL_LANTIQ
85e316cb2bSJohn Crispin
86f4e66983SHaojian Zhuangconfig PINCTRL_MMP2
87f4e66983SHaojian Zhuang	bool "MMP2 pin controller driver"
88f4e66983SHaojian Zhuang	depends on ARCH_MMP
89f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
90f4e66983SHaojian Zhuang	select PINCONF
91f4e66983SHaojian Zhuang
9217723111SShawn Guoconfig PINCTRL_MXS
9317723111SShawn Guo	bool
9417723111SShawn Guo
9517723111SShawn Guoconfig PINCTRL_IMX23
9617723111SShawn Guo	bool
9717723111SShawn Guo	select PINMUX
9817723111SShawn Guo	select PINCONF
9917723111SShawn Guo	select PINCTRL_MXS
10017723111SShawn Guo
10117723111SShawn Guoconfig PINCTRL_IMX28
10217723111SShawn Guo	bool
10317723111SShawn Guo	select PINMUX
10417723111SShawn Guo	select PINCONF
10517723111SShawn Guo	select PINCTRL_MXS
10617723111SShawn Guo
107e98ea774SLinus Walleijconfig PINCTRL_NOMADIK
108e98ea774SLinus Walleij	bool "Nomadik pin controller driver"
1090fa7be40SArnd Bergmann	depends on ARCH_U8500 || ARCH_NOMADIK
110dbfe8ca2SLinus Walleij	select PINMUX
111d41af627SLinus Walleij	select PINCONF
112e98ea774SLinus Walleij
113f79c5ed9SLinus Walleijconfig PINCTRL_STN8815
114f79c5ed9SLinus Walleij	bool "STN8815 pin controller driver"
115f79c5ed9SLinus Walleij	depends on PINCTRL_NOMADIK && ARCH_NOMADIK
116f79c5ed9SLinus Walleij
117e98ea774SLinus Walleijconfig PINCTRL_DB8500
118e98ea774SLinus Walleij	bool "DB8500 pin controller driver"
119e98ea774SLinus Walleij	depends on PINCTRL_NOMADIK && ARCH_U8500
120e98ea774SLinus Walleij
12145a1b531SPatrice Chotardconfig PINCTRL_DB8540
12245a1b531SPatrice Chotard	bool "DB8540 pin controller driver"
12345a1b531SPatrice Chotard	depends on PINCTRL_NOMADIK && ARCH_U8500
12445a1b531SPatrice Chotard
125f4e66983SHaojian Zhuangconfig PINCTRL_PXA168
126f4e66983SHaojian Zhuang	bool "PXA168 pin controller driver"
127f4e66983SHaojian Zhuang	depends on ARCH_MMP
128f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
129f4e66983SHaojian Zhuang	select PINCONF
130f4e66983SHaojian Zhuang
131f4e66983SHaojian Zhuangconfig PINCTRL_PXA910
132f4e66983SHaojian Zhuang	bool "PXA910 pin controller driver"
133f4e66983SHaojian Zhuang	depends on ARCH_MMP
134f4e66983SHaojian Zhuang	select PINCTRL_PXA3xx
135f4e66983SHaojian Zhuang	select PINCONF
136f4e66983SHaojian Zhuang
1378b8b091bSTony Lindgrenconfig PINCTRL_SINGLE
1388b8b091bSTony Lindgren	tristate "One-register-per-pin type device tree based pinctrl driver"
1398b8b091bSTony Lindgren	depends on OF
1408b8b091bSTony Lindgren	select PINMUX
1418b8b091bSTony Lindgren	select PINCONF
1428b8b091bSTony Lindgren	help
1438b8b091bSTony Lindgren	  This selects the device tree based generic pinctrl driver.
1448b8b091bSTony Lindgren
1453bece55aSLinus Walleijconfig PINCTRL_SIRF
1463bece55aSLinus Walleij	bool "CSR SiRFprimaII pin controller driver"
147393daa81SRongjun Ying	depends on ARCH_PRIMA2
148393daa81SRongjun Ying	select PINMUX
149393daa81SRongjun Ying
150971dac71SStephen Warrenconfig PINCTRL_TEGRA
151971dac71SStephen Warren	bool
152971dac71SStephen Warren
153971dac71SStephen Warrenconfig PINCTRL_TEGRA20
154971dac71SStephen Warren	bool
155971dac71SStephen Warren	select PINMUX
156971dac71SStephen Warren	select PINCONF
157971dac71SStephen Warren	select PINCTRL_TEGRA
158971dac71SStephen Warren
159971dac71SStephen Warrenconfig PINCTRL_TEGRA30
160971dac71SStephen Warren	bool
161971dac71SStephen Warren	select PINMUX
162971dac71SStephen Warren	select PINCONF
163971dac71SStephen Warren	select PINCTRL_TEGRA
164971dac71SStephen Warren
1653bece55aSLinus Walleijconfig PINCTRL_U300
1663bece55aSLinus Walleij	bool "U300 pin controller driver"
16798da3529SLinus Walleij	depends on ARCH_U300
16898da3529SLinus Walleij	select PINMUX
169dc0b1aa3SLinus Walleij	select GENERIC_PINCONF
17045f034efSLinus Walleij
171ca402d37SLinus Walleijconfig PINCTRL_COH901
172ca402d37SLinus Walleij	bool "ST-Ericsson U300 COH 901 335/571 GPIO"
1733c94d1bbSLinus Walleij	depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
174ca402d37SLinus Walleij	help
175ca402d37SLinus Walleij	  Say yes here to support GPIO interface on ST-Ericsson U300.
176ca402d37SLinus Walleij	  The names of the two IP block variants supported are
177ca402d37SLinus Walleij	  COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
178ca402d37SLinus Walleij	  ports of 8 GPIO pins each.
179ca402d37SLinus Walleij
18030574f0dSThomas Abrahamconfig PINCTRL_SAMSUNG
18130574f0dSThomas Abraham	bool "Samsung pinctrl driver"
182924da314SAxel Lin	depends on OF && GPIOLIB
18330574f0dSThomas Abraham	select PINMUX
18430574f0dSThomas Abraham	select PINCONF
18530574f0dSThomas Abraham
18643b169dbSThomas Abrahamconfig PINCTRL_EXYNOS4
18743b169dbSThomas Abraham	bool "Pinctrl driver data for Exynos4 SoC"
188924da314SAxel Lin	depends on OF && GPIOLIB
18943b169dbSThomas Abraham	select PINCTRL_SAMSUNG
19043b169dbSThomas Abraham
191*f0b9a7e5SThomas Abrahamconfig PINCTRL_EXYNOS5440
192*f0b9a7e5SThomas Abraham	bool "Samsung EXYNOS5440 SoC pinctrl driver"
193*f0b9a7e5SThomas Abraham	select PINMUX
194*f0b9a7e5SThomas Abraham	select PINCONF
195*f0b9a7e5SThomas Abraham
1967e8d9415SSebastian Hesselbarthconfig PINCTRL_MVEBU
1977e8d9415SSebastian Hesselbarth	bool
1987e8d9415SSebastian Hesselbarth	depends on ARCH_MVEBU
1997e8d9415SSebastian Hesselbarth	select PINMUX
2007e8d9415SSebastian Hesselbarth	select PINCONF
2017e8d9415SSebastian Hesselbarth
202c9f95cedSSebastian Hesselbarthconfig PINCTRL_DOVE
203c9f95cedSSebastian Hesselbarth	bool
204c9f95cedSSebastian Hesselbarth	select PINCTRL_MVEBU
205c9f95cedSSebastian Hesselbarth
2069d4b1632SSebastian Hesselbarthconfig PINCTRL_KIRKWOOD
2079d4b1632SSebastian Hesselbarth	bool
2089d4b1632SSebastian Hesselbarth	select PINCTRL_MVEBU
2099d4b1632SSebastian Hesselbarth
2105f597bb2SThomas Petazzoniconfig PINCTRL_ARMADA_370
2115f597bb2SThomas Petazzoni	bool
2125f597bb2SThomas Petazzoni	select PINCTRL_MVEBU
2135f597bb2SThomas Petazzoni
214463e270fSThomas Petazzoniconfig PINCTRL_ARMADA_XP
215463e270fSThomas Petazzoni	bool
216463e270fSThomas Petazzoni	select PINCTRL_MVEBU
217463e270fSThomas Petazzoni
218deda8287SViresh Kumarsource "drivers/pinctrl/spear/Kconfig"
219deda8287SViresh Kumar
2203f8c50c9SJohn Crispinconfig PINCTRL_XWAY
2213f8c50c9SJohn Crispin	bool
2223f8c50c9SJohn Crispin	depends on SOC_TYPE_XWAY
2233f8c50c9SJohn Crispin	depends on PINCTRL_LANTIQ
2243f8c50c9SJohn Crispin
22545f034efSLinus Walleijendmenu
22698da3529SLinus Walleij
2272744e8afSLinus Walleijendif
228