xref: /linux/drivers/pinctrl/mediatek/Kconfig (revision eafd95ea74846eda3e3eac6b2bb7f34619d8a6f8)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2e3fd24a5SSean Wangmenu "MediaTek pinctrl drivers"
31c8ace2dSLorenzo Bianconi	depends on ARCH_MEDIATEK || ARCH_AIROHA || RALINK || COMPILE_TEST
4a6df410dSHongzhou Yang
5e46df235SSean Wangconfig EINT_MTK
68174a851SLight Hsieh	tristate "MediaTek External Interrupt Support"
77c68024aSOlof Johansson	depends on PINCTRL_MTK || PINCTRL_MTK_MOORE || PINCTRL_MTK_PARIS || COMPILE_TEST
871a9d395SArnd Bergmann	select GPIOLIB
9e46df235SSean Wang	select IRQ_DOMAIN
108174a851SLight Hsieh	default y if PINCTRL_MTK || PINCTRL_MTK_MOORE
118174a851SLight Hsieh	default PINCTRL_MTK_PARIS
12e46df235SSean Wang
134a9e0060SMasahiro Yamadaconfig PINCTRL_MTK
14a6df410dSHongzhou Yang	bool
15b99e6fb8SLinus Walleij	depends on OF
16a6df410dSHongzhou Yang	select PINMUX
17a6df410dSHongzhou Yang	select GENERIC_PINCONF
18a6df410dSHongzhou Yang	select GPIOLIB
19e46df235SSean Wang	select EINT_MTK
20a6df410dSHongzhou Yang
218174a851SLight Hsiehconfig PINCTRL_MTK_V2
228174a851SLight Hsieh	tristate
238174a851SLight Hsieh
24dc6ae205SArınç ÜNALconfig PINCTRL_MTK_MTMIPS
25dc6ae205SArınç ÜNAL	bool
26dc6ae205SArınç ÜNAL	depends on RALINK
27dc6ae205SArınç ÜNAL	select PINMUX
28dc6ae205SArınç ÜNAL	select GENERIC_PINCONF
29dc6ae205SArınç ÜNAL
30e78d57b2SSean Wangconfig PINCTRL_MTK_MOORE
31b5af33dfSRyder Lee	bool
32e78d57b2SSean Wang	depends on OF
33e78d57b2SSean Wang	select GENERIC_PINCONF
34e78d57b2SSean Wang	select GENERIC_PINCTRL_GROUPS
35e78d57b2SSean Wang	select GENERIC_PINMUX_FUNCTIONS
36e78d57b2SSean Wang	select GPIOLIB
3787950929SYueHaibing	select EINT_MTK
388174a851SLight Hsieh	select PINCTRL_MTK_V2
39e78d57b2SSean Wang
4080525098SZhiyong Taoconfig PINCTRL_MTK_PARIS
418174a851SLight Hsieh	tristate
4280525098SZhiyong Tao	depends on OF
4380525098SZhiyong Tao	select PINMUX
4480525098SZhiyong Tao	select GENERIC_PINCONF
4580525098SZhiyong Tao	select GPIOLIB
4680525098SZhiyong Tao	select EINT_MTK
478174a851SLight Hsieh	select PINCTRL_MTK_V2
4880525098SZhiyong Tao
49dc6ae205SArınç ÜNAL# For MIPS SoCs
50dc6ae205SArınç ÜNALconfig PINCTRL_MT7620
51dc6ae205SArınç ÜNAL	bool "MediaTek MT7620 pin control"
52dc6ae205SArınç ÜNAL	depends on SOC_MT7620 || COMPILE_TEST
53dc6ae205SArınç ÜNAL	depends on RALINK
54dc6ae205SArınç ÜNAL	default SOC_MT7620
55dc6ae205SArınç ÜNAL	select PINCTRL_MTK_MTMIPS
56dc6ae205SArınç ÜNAL
57dc6ae205SArınç ÜNALconfig PINCTRL_MT7621
58dc6ae205SArınç ÜNAL	bool "MediaTek MT7621 pin control"
59dc6ae205SArınç ÜNAL	depends on SOC_MT7621 || COMPILE_TEST
60dc6ae205SArınç ÜNAL	depends on RALINK
61dc6ae205SArınç ÜNAL	default SOC_MT7621
62dc6ae205SArınç ÜNAL	select PINCTRL_MTK_MTMIPS
63dc6ae205SArınç ÜNAL
64dc6ae205SArınç ÜNALconfig PINCTRL_MT76X8
65dc6ae205SArınç ÜNAL	bool "MediaTek MT76X8 pin control"
66dc6ae205SArınç ÜNAL	depends on SOC_MT7620 || COMPILE_TEST
67dc6ae205SArınç ÜNAL	depends on RALINK
68dc6ae205SArınç ÜNAL	default SOC_MT7620
69dc6ae205SArınç ÜNAL	select PINCTRL_MTK_MTMIPS
70dc6ae205SArınç ÜNAL
71dc6ae205SArınç ÜNALconfig PINCTRL_RT2880
72dc6ae205SArınç ÜNAL	bool "Ralink RT2880 pin control"
73dc6ae205SArınç ÜNAL	depends on SOC_RT288X || COMPILE_TEST
74dc6ae205SArınç ÜNAL	depends on RALINK
75dc6ae205SArınç ÜNAL	default SOC_RT288X
76dc6ae205SArınç ÜNAL	select PINCTRL_MTK_MTMIPS
77dc6ae205SArınç ÜNAL
78dc6ae205SArınç ÜNALconfig PINCTRL_RT305X
79dc6ae205SArınç ÜNAL	bool "Ralink RT305X pin control"
80dc6ae205SArınç ÜNAL	depends on SOC_RT305X || COMPILE_TEST
81dc6ae205SArınç ÜNAL	depends on RALINK
82dc6ae205SArınç ÜNAL	default SOC_RT305X
83dc6ae205SArınç ÜNAL	select PINCTRL_MTK_MTMIPS
84dc6ae205SArınç ÜNAL
85dc6ae205SArınç ÜNALconfig PINCTRL_RT3883
86dc6ae205SArınç ÜNAL	bool "Ralink RT3883 pin control"
87dc6ae205SArınç ÜNAL	depends on SOC_RT3883 || COMPILE_TEST
88dc6ae205SArınç ÜNAL	depends on RALINK
89dc6ae205SArınç ÜNAL	default SOC_RT3883
90dc6ae205SArınç ÜNAL	select PINCTRL_MTK_MTMIPS
91dc6ae205SArınç ÜNAL
924a8ade1fSYingjoe Chen# For ARMv7 SoCs
93148b95eeSBiao Huangconfig PINCTRL_MT2701
946de67ca4SArınç ÜNAL	bool "MediaTek MT2701 pin control"
95ceba4383SSean Wang	depends on MACH_MT7623 || MACH_MT2701 || COMPILE_TEST
96148b95eeSBiao Huang	depends on OF
97148b95eeSBiao Huang	default MACH_MT2701
984a9e0060SMasahiro Yamada	select PINCTRL_MTK
99148b95eeSBiao Huang
100e7507f57SSean Wangconfig PINCTRL_MT7623
1016de67ca4SArınç ÜNAL	bool "MediaTek MT7623 pin control with generic binding"
102e7507f57SSean Wang	depends on MACH_MT7623 || COMPILE_TEST
1032d2d4785SRyder Lee	depends on OF
104b5af33dfSRyder Lee	default MACH_MT7623
105b5af33dfSRyder Lee	select PINCTRL_MTK_MOORE
106e7507f57SSean Wang
107b4467737SRyder Leeconfig PINCTRL_MT7629
1086de67ca4SArınç ÜNAL	bool "MediaTek MT7629 pin control"
109b4467737SRyder Lee	depends on MACH_MT7629 || COMPILE_TEST
1102d2d4785SRyder Lee	depends on OF
111b5af33dfSRyder Lee	default MACH_MT7629
112b5af33dfSRyder Lee	select PINCTRL_MTK_MOORE
113b4467737SRyder Lee
114a6df410dSHongzhou Yangconfig PINCTRL_MT8135
1156de67ca4SArınç ÜNAL	bool "MediaTek MT8135 pin control"
11679d62089SJean Delvare	depends on MACH_MT8135 || COMPILE_TEST
117b99e6fb8SLinus Walleij	depends on OF
1184a8ade1fSYingjoe Chen	default MACH_MT8135
1194a9e0060SMasahiro Yamada	select PINCTRL_MTK
120a6df410dSHongzhou Yang
1216acdee8cSYingjoe Chenconfig PINCTRL_MT8127
1226de67ca4SArınç ÜNAL	bool "MediaTek MT8127 pin control"
12379d62089SJean Delvare	depends on MACH_MT8127 || COMPILE_TEST
1246acdee8cSYingjoe Chen	depends on OF
1256acdee8cSYingjoe Chen	default MACH_MT8127
1264a9e0060SMasahiro Yamada	select PINCTRL_MTK
1276acdee8cSYingjoe Chen
1284a8ade1fSYingjoe Chen# For ARMv8 SoCs
1291c8ace2dSLorenzo Bianconiconfig PINCTRL_AIROHA
1301c8ace2dSLorenzo Bianconi	tristate "Airoha EN7581 pin control"
1311c8ace2dSLorenzo Bianconi	depends on OF
1321c8ace2dSLorenzo Bianconi	depends on ARM64 || COMPILE_TEST
1331c8ace2dSLorenzo Bianconi	select PINMUX
1341c8ace2dSLorenzo Bianconi	select GENERIC_PINCONF
1351c8ace2dSLorenzo Bianconi	select GENERIC_PINCTRL_GROUPS
1361c8ace2dSLorenzo Bianconi	select GENERIC_PINMUX_FUNCTIONS
1371c8ace2dSLorenzo Bianconi	select GPIOLIB
1381c8ace2dSLorenzo Bianconi	select GPIOLIB_IRQCHIP
1391c8ace2dSLorenzo Bianconi	select REGMAP_MMIO
1401c8ace2dSLorenzo Bianconi	help
1411c8ace2dSLorenzo Bianconi	  Say yes here to support pin controller and gpio driver
1421c8ace2dSLorenzo Bianconi	  on Airoha EN7581 SoC.
1431c8ace2dSLorenzo Bianconi
1448670710fSZhiyong Taoconfig PINCTRL_MT2712
1458670710fSZhiyong Tao	bool "MediaTek MT2712 pin control"
1468670710fSZhiyong Tao	depends on OF
1478670710fSZhiyong Tao	depends on ARM64 || COMPILE_TEST
1488670710fSZhiyong Tao	default ARM64 && ARCH_MEDIATEK
1498670710fSZhiyong Tao	select PINCTRL_MTK
1508670710fSZhiyong Tao
151477feceeSZH Chenconfig PINCTRL_MT6765
1526de67ca4SArınç ÜNAL	tristate "MediaTek MT6765 pin control"
153477feceeSZH Chen	depends on OF
154477feceeSZH Chen	depends on ARM64 || COMPILE_TEST
155477feceeSZH Chen	default ARM64 && ARCH_MEDIATEK
156477feceeSZH Chen	select PINCTRL_MTK_PARIS
157477feceeSZH Chen
158920e469eSHanks Chenconfig PINCTRL_MT6779
1596de67ca4SArınç ÜNAL	tristate "MediaTek MT6779 pin control"
160920e469eSHanks Chen	depends on OF
161920e469eSHanks Chen	depends on ARM64 || COMPILE_TEST
162920e469eSHanks Chen	default ARM64 && ARCH_MEDIATEK
163920e469eSHanks Chen	select PINCTRL_MTK_PARIS
164920e469eSHanks Chen	help
165920e469eSHanks Chen	  Say yes here to support pin controller and gpio driver
1666de67ca4SArınç ÜNAL	  on MediaTek MT6779 SoC.
167920e469eSHanks Chen	  In MTK platform, we support virtual gpio and use it to
168920e469eSHanks Chen	  map specific eint which doesn't have real gpio pin.
169920e469eSHanks Chen
1702e1ccc6aSAngeloGioacchino Del Regnoconfig PINCTRL_MT6795
1716de67ca4SArınç ÜNAL	bool "MediaTek MT6795 pin control"
1722e1ccc6aSAngeloGioacchino Del Regno	depends on OF
1732e1ccc6aSAngeloGioacchino Del Regno	depends on ARM64 || COMPILE_TEST
1742e1ccc6aSAngeloGioacchino Del Regno	default ARM64 && ARCH_MEDIATEK
1752e1ccc6aSAngeloGioacchino Del Regno	select PINCTRL_MTK_PARIS
1762e1ccc6aSAngeloGioacchino Del Regno
177f969b7aaSManivannan Sadhasivamconfig PINCTRL_MT6797
1786de67ca4SArınç ÜNAL	bool "MediaTek MT6797 pin control"
179f969b7aaSManivannan Sadhasivam	depends on OF
180f969b7aaSManivannan Sadhasivam	depends on ARM64 || COMPILE_TEST
181f969b7aaSManivannan Sadhasivam	default ARM64 && ARCH_MEDIATEK
182f969b7aaSManivannan Sadhasivam	select PINCTRL_MTK_PARIS
183f969b7aaSManivannan Sadhasivam
18480045071SAngeloGioacchino Del Regnoconfig PINCTRL_MT6893
18580045071SAngeloGioacchino Del Regno	bool "MediaTek Dimensity MT6893 pin control"
18680045071SAngeloGioacchino Del Regno	depends on OF
18780045071SAngeloGioacchino Del Regno	depends on ARM64 || COMPILE_TEST
18880045071SAngeloGioacchino Del Regno	default ARM64 && ARCH_MEDIATEK
18980045071SAngeloGioacchino Del Regno	select PINCTRL_MTK_PARIS
19080045071SAngeloGioacchino Del Regno	help
19180045071SAngeloGioacchino Del Regno	  Say yes here to support pin controller and gpio driver
19280045071SAngeloGioacchino Del Regno	  on the MediaTek Dimensity 1200 MT6893 Smartphone SoC.
19380045071SAngeloGioacchino Del Regno
194d6ed9355SSean Wangconfig PINCTRL_MT7622
195d6ed9355SSean Wang	bool "MediaTek MT7622 pin control"
1962d2d4785SRyder Lee	depends on OF
197d6ed9355SSean Wang	depends on ARM64 || COMPILE_TEST
198b5af33dfSRyder Lee	default ARM64 && ARCH_MEDIATEK
199b5af33dfSRyder Lee	select PINCTRL_MTK_MOORE
200d6ed9355SSean Wang
2016c83b2d9SDaniel Golleconfig PINCTRL_MT7981
2026de67ca4SArınç ÜNAL	bool "MediaTek MT7981 pin control"
2036c83b2d9SDaniel Golle	depends on OF
204c0ad453eSArınç ÜNAL	depends on ARM64 || COMPILE_TEST
205c0ad453eSArınç ÜNAL	default ARM64 && ARCH_MEDIATEK
2066c83b2d9SDaniel Golle	select PINCTRL_MTK_MOORE
2076c83b2d9SDaniel Golle
208360de672SSam Shihconfig PINCTRL_MT7986
2096de67ca4SArınç ÜNAL	bool "MediaTek MT7986 pin control"
210360de672SSam Shih	depends on OF
211360de672SSam Shih	depends on ARM64 || COMPILE_TEST
212360de672SSam Shih	default ARM64 && ARCH_MEDIATEK
213360de672SSam Shih	select PINCTRL_MTK_MOORE
214360de672SSam Shih
21508bec851SDaniel Golleconfig PINCTRL_MT7988
21608bec851SDaniel Golle	bool "Mediatek MT7988 pin control"
21708bec851SDaniel Golle	depends on OF
21808bec851SDaniel Golle	depends on ARM64 || COMPILE_TEST
21908bec851SDaniel Golle	default ARM64 && ARCH_MEDIATEK
22008bec851SDaniel Golle	select PINCTRL_MTK_MOORE
22108bec851SDaniel Golle
22282d70627SFabien Parentconfig PINCTRL_MT8167
2236de67ca4SArınç ÜNAL	bool "MediaTek MT8167 pin control"
22482d70627SFabien Parent	depends on OF
22582d70627SFabien Parent	depends on ARM64 || COMPILE_TEST
22682d70627SFabien Parent	default ARM64 && ARCH_MEDIATEK
22782d70627SFabien Parent	select PINCTRL_MTK
22882d70627SFabien Parent
22930f010f5SHongzhou Yangconfig PINCTRL_MT8173
2306de67ca4SArınç ÜNAL	bool "MediaTek MT8173 pin control"
231b99e6fb8SLinus Walleij	depends on OF
2324a8ade1fSYingjoe Chen	depends on ARM64 || COMPILE_TEST
2334a8ade1fSYingjoe Chen	default ARM64 && ARCH_MEDIATEK
2344a9e0060SMasahiro Yamada	select PINCTRL_MTK
23530f010f5SHongzhou Yang
236750cd15dSZhiyong Taoconfig PINCTRL_MT8183
2376de67ca4SArınç ÜNAL	bool "MediaTek MT8183 pin control"
238750cd15dSZhiyong Tao	depends on OF
239750cd15dSZhiyong Tao	depends on ARM64 || COMPILE_TEST
240750cd15dSZhiyong Tao	default ARM64 && ARCH_MEDIATEK
241750cd15dSZhiyong Tao	select PINCTRL_MTK_PARIS
242750cd15dSZhiyong Tao
2438b483bdaSGuodong Liuconfig PINCTRL_MT8186
2446de67ca4SArınç ÜNAL	bool "MediaTek MT8186 pin control"
2458b483bdaSGuodong Liu	depends on OF
2468b483bdaSGuodong Liu	depends on ARM64 || COMPILE_TEST
2478b483bdaSGuodong Liu	default ARM64 && ARCH_MEDIATEK
2488b483bdaSGuodong Liu	select PINCTRL_MTK_PARIS
2498b483bdaSGuodong Liu
25011b918d9SHui.Liuconfig PINCTRL_MT8188
25111b918d9SHui.Liu	bool "MediaTek MT8188 pin control"
25211b918d9SHui.Liu	depends on OF
25311b918d9SHui.Liu	depends on ARM64 || COMPILE_TEST
25411b918d9SHui.Liu	default ARM64 && ARCH_MEDIATEK
25511b918d9SHui.Liu	select PINCTRL_MTK_PARIS
25611b918d9SHui.Liu	help
25711b918d9SHui.Liu	  Say yes here to support pin controller and gpio driver
25811b918d9SHui.Liu	  on MediaTek MT8188 SoC.
25911b918d9SHui.Liu	  In MTK platform, we support virtual gpio and use it to
26011b918d9SHui.Liu	  map specific eint which doesn't have real gpio pin.
26111b918d9SHui.Liu
262d32f38f2SZhiyong Taoconfig PINCTRL_MT8192
2636de67ca4SArınç ÜNAL	bool "MediaTek MT8192 pin control"
264d32f38f2SZhiyong Tao	depends on OF
265d32f38f2SZhiyong Tao	depends on ARM64 || COMPILE_TEST
266d32f38f2SZhiyong Tao	default ARM64 && ARCH_MEDIATEK
267d32f38f2SZhiyong Tao	select PINCTRL_MTK_PARIS
268d32f38f2SZhiyong Tao
2696cf5e9efSZhiyong Taoconfig PINCTRL_MT8195
2706de67ca4SArınç ÜNAL	bool "MediaTek MT8195 pin control"
2716cf5e9efSZhiyong Tao	depends on OF
2726cf5e9efSZhiyong Tao	depends on ARM64 || COMPILE_TEST
273931d7fa8SFabien Parent	default ARM64 && ARCH_MEDIATEK
2746cf5e9efSZhiyong Tao	select PINCTRL_MTK_PARIS
2756cf5e9efSZhiyong Tao
276*f7a29377SGuodong Liuconfig PINCTRL_MT8196
277*f7a29377SGuodong Liu	bool "MediaTek MT8196 pin control"
278*f7a29377SGuodong Liu	depends on OF
279*f7a29377SGuodong Liu	depends on ARM64 || COMPILE_TEST
280*f7a29377SGuodong Liu	default ARM64 && ARCH_MEDIATEK
281*f7a29377SGuodong Liu	select PINCTRL_MTK_PARIS
282*f7a29377SGuodong Liu	help
283*f7a29377SGuodong Liu	  Say yes here to support pin controller and gpio driver
284*f7a29377SGuodong Liu	  on MediaTek MT8196 SoC.
285*f7a29377SGuodong Liu	  In MTK platform, we support virtual gpio and use it to
286*f7a29377SGuodong Liu	  map specific eint which doesn't have real gpio pin.
287*f7a29377SGuodong Liu
288e94d8b6fSFabien Parentconfig PINCTRL_MT8365
2896de67ca4SArınç ÜNAL	bool "MediaTek MT8365 pin control"
290e94d8b6fSFabien Parent	depends on OF
291e94d8b6fSFabien Parent	depends on ARM64 || COMPILE_TEST
292e94d8b6fSFabien Parent	default ARM64 && ARCH_MEDIATEK
293375eede3SLinus Walleij	select PINCTRL_MTK
294e94d8b6fSFabien Parent
29526466711SFabien Parentconfig PINCTRL_MT8516
2966de67ca4SArınç ÜNAL	bool "MediaTek MT8516 pin control"
29726466711SFabien Parent	depends on OF
29826466711SFabien Parent	depends on ARM64 || COMPILE_TEST
29926466711SFabien Parent	default ARM64 && ARCH_MEDIATEK
30026466711SFabien Parent	select PINCTRL_MTK
30126466711SFabien Parent
302fc59e66cSHongzhou Yang# For PMIC
303fc59e66cSHongzhou Yangconfig PINCTRL_MT6397
3046de67ca4SArınç ÜNAL	bool "MediaTek MT6397 pin control"
30579d62089SJean Delvare	depends on MFD_MT6397 || COMPILE_TEST
306a2202a4cSLinus Walleij	depends on OF
307fc59e66cSHongzhou Yang	default MFD_MT6397
3084a9e0060SMasahiro Yamada	select PINCTRL_MTK
309fc59e66cSHongzhou Yang
310e3fd24a5SSean Wangendmenu
311