xref: /linux/drivers/pinctrl/Kconfig (revision d3e5116119bd02ea7716bbe04b39c21bba4bcf42)
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
40a8f96e41SPatrice Chotardconfig PINCTRL_AB8540
41a8f96e41SPatrice Chotard	bool "AB8540 pin controller driver"
42a8f96e41SPatrice Chotard	depends on PINCTRL_ABX500 && ARCH_U8500
43a8f96e41SPatrice Chotard
4409dbec3fSPatrice Chotardconfig PINCTRL_AB9540
4509dbec3fSPatrice Chotard	bool "AB9540 pin controller driver"
4609dbec3fSPatrice Chotard	depends on PINCTRL_ABX500 && ARCH_U8500
4709dbec3fSPatrice Chotard
481aa2d8d4SPatrice Chotardconfig PINCTRL_AB8505
491aa2d8d4SPatrice Chotard	bool "AB8505 pin controller driver"
501aa2d8d4SPatrice Chotard	depends on PINCTRL_ABX500 && ARCH_U8500
511aa2d8d4SPatrice Chotard
526732ae5cSJean-Christophe PLAGNIOL-VILLARDconfig PINCTRL_AT91
536732ae5cSJean-Christophe PLAGNIOL-VILLARD	bool "AT91 pinctrl driver"
546732ae5cSJean-Christophe PLAGNIOL-VILLARD	depends on OF
556732ae5cSJean-Christophe PLAGNIOL-VILLARD	depends on ARCH_AT91
566732ae5cSJean-Christophe PLAGNIOL-VILLARD	select PINMUX
576732ae5cSJean-Christophe PLAGNIOL-VILLARD	select PINCONF
586732ae5cSJean-Christophe PLAGNIOL-VILLARD	help
596732ae5cSJean-Christophe PLAGNIOL-VILLARD	  Say Y here to enable the at91 pinctrl driver
606732ae5cSJean-Christophe PLAGNIOL-VILLARD
61e1b2dc70SSimon Arlottconfig PINCTRL_BCM2835
62e1b2dc70SSimon Arlott	bool
63e1b2dc70SSimon Arlott	select PINMUX
64e1b2dc70SSimon Arlott	select PINCONF
65e1b2dc70SSimon Arlott
66ae75ff81SDong Aishengconfig PINCTRL_IMX
67ae75ff81SDong Aisheng	bool
68ae75ff81SDong Aisheng	select PINMUX
69ae75ff81SDong Aisheng	select PINCONF
70ae75ff81SDong Aisheng
71b9aa8f13SUwe Kleine-Königconfig PINCTRL_IMX35
72b9aa8f13SUwe Kleine-König	bool "IMX35 pinctrl driver"
73b9aa8f13SUwe Kleine-König	depends on OF
74b9aa8f13SUwe Kleine-König	depends on SOC_IMX35
75b9aa8f13SUwe Kleine-König	select PINCTRL_IMX
76b9aa8f13SUwe Kleine-König	help
77b9aa8f13SUwe Kleine-König	  Say Y here to enable the imx35 pinctrl driver
78b9aa8f13SUwe Kleine-König
794f6a16bfSDong Aishengconfig PINCTRL_IMX51
804f6a16bfSDong Aisheng	bool "IMX51 pinctrl driver"
814f6a16bfSDong Aisheng	depends on OF
824f6a16bfSDong Aisheng	depends on SOC_IMX51
834f6a16bfSDong Aisheng	select PINCTRL_IMX
844f6a16bfSDong Aisheng	help
854f6a16bfSDong Aisheng	  Say Y here to enable the imx51 pinctrl driver
864f6a16bfSDong Aisheng
8793fbd3c0SDong Aishengconfig PINCTRL_IMX53
8893fbd3c0SDong Aisheng	bool "IMX53 pinctrl driver"
8993fbd3c0SDong Aisheng	depends on OF
9093fbd3c0SDong Aisheng	depends on SOC_IMX53
9193fbd3c0SDong Aisheng	select PINCTRL_IMX
9293fbd3c0SDong Aisheng	help
9393fbd3c0SDong Aisheng	  Say Y here to enable the imx53 pinctrl driver
9493fbd3c0SDong Aisheng
95d8fe3572SDong Aishengconfig PINCTRL_IMX6Q
963f551d6aSShawn Guo	bool "IMX6Q/DL pinctrl driver"
97d8fe3572SDong Aisheng	depends on OF
98d8fe3572SDong Aisheng	depends on SOC_IMX6Q
99d8fe3572SDong Aisheng	select PINCTRL_IMX
100d8fe3572SDong Aisheng	help
1013f551d6aSShawn Guo	  Say Y here to enable the imx6q/dl pinctrl driver
102d8fe3572SDong Aisheng
10321e59123SShawn Guoconfig PINCTRL_IMX6SL
10421e59123SShawn Guo	bool "IMX6SL pinctrl driver"
10521e59123SShawn Guo	depends on OF
10621e59123SShawn Guo	depends on SOC_IMX6SL
10721e59123SShawn Guo	select PINCTRL_IMX
10821e59123SShawn Guo	help
10921e59123SShawn Guo	  Say Y here to enable the imx6sl pinctrl driver
110f4e66983SHaojian Zhuang
11178bafc66SJingchang Luconfig PINCTRL_VF610
11278bafc66SJingchang Lu	bool "Freescale Vybrid VF610 pinctrl driver"
11378bafc66SJingchang Lu	depends on OF
11478bafc66SJingchang Lu	depends on SOC_VF610
11578bafc66SJingchang Lu	select PINCTRL_IMX
11678bafc66SJingchang Lu	help
11778bafc66SJingchang Lu	  Say Y here to enable the Freescale Vybrid VF610 pinctrl driver
11878bafc66SJingchang Lu
1193f8c50c9SJohn Crispinconfig PINCTRL_LANTIQ
1203f8c50c9SJohn Crispin	bool
1213f8c50c9SJohn Crispin	depends on LANTIQ
1223f8c50c9SJohn Crispin	select PINMUX
1233f8c50c9SJohn Crispin	select PINCONF
1243f8c50c9SJohn Crispin
125e316cb2bSJohn Crispinconfig PINCTRL_FALCON
126e316cb2bSJohn Crispin	bool
127e316cb2bSJohn Crispin	depends on SOC_FALCON
128e316cb2bSJohn Crispin	depends on PINCTRL_LANTIQ
129e316cb2bSJohn Crispin
13017723111SShawn Guoconfig PINCTRL_MXS
13117723111SShawn Guo	bool
13290db8a14SAxel Lin	select PINMUX
13390db8a14SAxel Lin	select PINCONF
13417723111SShawn Guo
13517723111SShawn Guoconfig PINCTRL_IMX23
13617723111SShawn Guo	bool
13717723111SShawn Guo	select PINCTRL_MXS
13817723111SShawn Guo
13917723111SShawn Guoconfig PINCTRL_IMX28
14017723111SShawn Guo	bool
14117723111SShawn Guo	select PINCTRL_MXS
14217723111SShawn Guo
143e98ea774SLinus Walleijconfig PINCTRL_NOMADIK
144e98ea774SLinus Walleij	bool "Nomadik pin controller driver"
1450fa7be40SArnd Bergmann	depends on ARCH_U8500 || ARCH_NOMADIK
146dbfe8ca2SLinus Walleij	select PINMUX
147d41af627SLinus Walleij	select PINCONF
148e98ea774SLinus Walleij
149f79c5ed9SLinus Walleijconfig PINCTRL_STN8815
150f79c5ed9SLinus Walleij	bool "STN8815 pin controller driver"
151f79c5ed9SLinus Walleij	depends on PINCTRL_NOMADIK && ARCH_NOMADIK
152f79c5ed9SLinus Walleij
153e98ea774SLinus Walleijconfig PINCTRL_DB8500
154e98ea774SLinus Walleij	bool "DB8500 pin controller driver"
155e98ea774SLinus Walleij	depends on PINCTRL_NOMADIK && ARCH_U8500
156e98ea774SLinus Walleij
15745a1b531SPatrice Chotardconfig PINCTRL_DB8540
15845a1b531SPatrice Chotard	bool "DB8540 pin controller driver"
15945a1b531SPatrice Chotard	depends on PINCTRL_NOMADIK && ARCH_U8500
16045a1b531SPatrice Chotard
161*d3e51161SHeiko Stübnerconfig PINCTRL_ROCKCHIP
162*d3e51161SHeiko Stübner	bool
163*d3e51161SHeiko Stübner	select PINMUX
164*d3e51161SHeiko Stübner	select GENERIC_PINCONF
165*d3e51161SHeiko Stübner	select GENERIC_IRQ_CHIP
166*d3e51161SHeiko Stübner
1678b8b091bSTony Lindgrenconfig PINCTRL_SINGLE
1688b8b091bSTony Lindgren	tristate "One-register-per-pin type device tree based pinctrl driver"
1698b8b091bSTony Lindgren	depends on OF
1708b8b091bSTony Lindgren	select PINMUX
1718b8b091bSTony Lindgren	select PINCONF
1729dddb4dfSHaojian Zhuang	select GENERIC_PINCONF
1738b8b091bSTony Lindgren	help
1748b8b091bSTony Lindgren	  This selects the device tree based generic pinctrl driver.
1758b8b091bSTony Lindgren
1763bece55aSLinus Walleijconfig PINCTRL_SIRF
177d3e26f2fSBarry Song	bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
178d3e26f2fSBarry Song	depends on ARCH_SIRF
179393daa81SRongjun Ying	select PINMUX
180393daa81SRongjun Ying
1810e37f88dSMaxime Ripardconfig PINCTRL_SUNXI
1820e37f88dSMaxime Ripard	bool
1830e37f88dSMaxime Ripard	select PINMUX
1840e37f88dSMaxime Ripard	select GENERIC_PINCONF
1850e37f88dSMaxime Ripard
186971dac71SStephen Warrenconfig PINCTRL_TEGRA
187971dac71SStephen Warren	bool
188507ccdbfSAxel Lin	select PINMUX
189507ccdbfSAxel Lin	select PINCONF
190971dac71SStephen Warren
191971dac71SStephen Warrenconfig PINCTRL_TEGRA20
192971dac71SStephen Warren	bool
193971dac71SStephen Warren	select PINCTRL_TEGRA
194971dac71SStephen Warren
195971dac71SStephen Warrenconfig PINCTRL_TEGRA30
196971dac71SStephen Warren	bool
197971dac71SStephen Warren	select PINCTRL_TEGRA
198971dac71SStephen Warren
199b6ae7a26SPritesh Raithathaconfig PINCTRL_TEGRA114
200b6ae7a26SPritesh Raithatha	bool
201b6ae7a26SPritesh Raithatha	select PINCTRL_TEGRA
202b6ae7a26SPritesh Raithatha
2033bece55aSLinus Walleijconfig PINCTRL_U300
2043bece55aSLinus Walleij	bool "U300 pin controller driver"
20598da3529SLinus Walleij	depends on ARCH_U300
20698da3529SLinus Walleij	select PINMUX
207dc0b1aa3SLinus Walleij	select GENERIC_PINCONF
20845f034efSLinus Walleij
209ca402d37SLinus Walleijconfig PINCTRL_COH901
210ca402d37SLinus Walleij	bool "ST-Ericsson U300 COH 901 335/571 GPIO"
2113c94d1bbSLinus Walleij	depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
212ca402d37SLinus Walleij	help
213ca402d37SLinus Walleij	  Say yes here to support GPIO interface on ST-Ericsson U300.
214ca402d37SLinus Walleij	  The names of the two IP block variants supported are
215ca402d37SLinus Walleij	  COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
216ca402d37SLinus Walleij	  ports of 8 GPIO pins each.
217ca402d37SLinus Walleij
21830574f0dSThomas Abrahamconfig PINCTRL_SAMSUNG
219cbc351abSArnd Bergmann	bool
22030574f0dSThomas Abraham	select PINMUX
22130574f0dSThomas Abraham	select PINCONF
22230574f0dSThomas Abraham
223a1ed2670SKukjin Kimconfig PINCTRL_EXYNOS
224a1ed2670SKukjin Kim	bool "Pinctrl driver data for Samsung EXYNOS SoCs"
225924da314SAxel Lin	depends on OF && GPIOLIB
22643b169dbSThomas Abraham	select PINCTRL_SAMSUNG
22743b169dbSThomas Abraham
228f0b9a7e5SThomas Abrahamconfig PINCTRL_EXYNOS5440
229f0b9a7e5SThomas Abraham	bool "Samsung EXYNOS5440 SoC pinctrl driver"
230f0b9a7e5SThomas Abraham	select PINMUX
231f0b9a7e5SThomas Abraham	select PINCONF
232f0b9a7e5SThomas Abraham
23361dd7261STomasz Figaconfig PINCTRL_S3C64XX
23461dd7261STomasz Figa	bool "Samsung S3C64XX SoC pinctrl driver"
23561dd7261STomasz Figa	depends on ARCH_S3C64XX
23661dd7261STomasz Figa	select PINCTRL_SAMSUNG
23761dd7261STomasz Figa
23806763c74SThomas Petazzonisource "drivers/pinctrl/mvebu/Kconfig"
2396e54d8d2SLaurent Pinchartsource "drivers/pinctrl/sh-pfc/Kconfig"
240deda8287SViresh Kumarsource "drivers/pinctrl/spear/Kconfig"
241170c6152STony Prisksource "drivers/pinctrl/vt8500/Kconfig"
242deda8287SViresh Kumar
2433f8c50c9SJohn Crispinconfig PINCTRL_XWAY
2443f8c50c9SJohn Crispin	bool
2453f8c50c9SJohn Crispin	depends on SOC_TYPE_XWAY
2463f8c50c9SJohn Crispin	depends on PINCTRL_LANTIQ
2473f8c50c9SJohn Crispin
24845f034efSLinus Walleijendmenu
24998da3529SLinus Walleij
2502744e8afSLinus Walleijendif
251