xref: /linux-6.15/drivers/pinctrl/mediatek/Kconfig (revision 08bec851)
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
184d6ed9355SSean Wangconfig PINCTRL_MT7622
185d6ed9355SSean Wang	bool "MediaTek MT7622 pin control"
1862d2d4785SRyder Lee	depends on OF
187d6ed9355SSean Wang	depends on ARM64 || COMPILE_TEST
188b5af33dfSRyder Lee	default ARM64 && ARCH_MEDIATEK
189b5af33dfSRyder Lee	select PINCTRL_MTK_MOORE
190d6ed9355SSean Wang
1916c83b2d9SDaniel Golleconfig PINCTRL_MT7981
1926de67ca4SArınç ÜNAL	bool "MediaTek MT7981 pin control"
1936c83b2d9SDaniel Golle	depends on OF
194c0ad453eSArınç ÜNAL	depends on ARM64 || COMPILE_TEST
195c0ad453eSArınç ÜNAL	default ARM64 && ARCH_MEDIATEK
1966c83b2d9SDaniel Golle	select PINCTRL_MTK_MOORE
1976c83b2d9SDaniel Golle
198360de672SSam Shihconfig PINCTRL_MT7986
1996de67ca4SArınç ÜNAL	bool "MediaTek MT7986 pin control"
200360de672SSam Shih	depends on OF
201360de672SSam Shih	depends on ARM64 || COMPILE_TEST
202360de672SSam Shih	default ARM64 && ARCH_MEDIATEK
203360de672SSam Shih	select PINCTRL_MTK_MOORE
204360de672SSam Shih
205*08bec851SDaniel Golleconfig PINCTRL_MT7988
206*08bec851SDaniel Golle	bool "Mediatek MT7988 pin control"
207*08bec851SDaniel Golle	depends on OF
208*08bec851SDaniel Golle	depends on ARM64 || COMPILE_TEST
209*08bec851SDaniel Golle	default ARM64 && ARCH_MEDIATEK
210*08bec851SDaniel Golle	select PINCTRL_MTK_MOORE
211*08bec851SDaniel Golle
21282d70627SFabien Parentconfig PINCTRL_MT8167
2136de67ca4SArınç ÜNAL	bool "MediaTek MT8167 pin control"
21482d70627SFabien Parent	depends on OF
21582d70627SFabien Parent	depends on ARM64 || COMPILE_TEST
21682d70627SFabien Parent	default ARM64 && ARCH_MEDIATEK
21782d70627SFabien Parent	select PINCTRL_MTK
21882d70627SFabien Parent
21930f010f5SHongzhou Yangconfig PINCTRL_MT8173
2206de67ca4SArınç ÜNAL	bool "MediaTek MT8173 pin control"
221b99e6fb8SLinus Walleij	depends on OF
2224a8ade1fSYingjoe Chen	depends on ARM64 || COMPILE_TEST
2234a8ade1fSYingjoe Chen	default ARM64 && ARCH_MEDIATEK
2244a9e0060SMasahiro Yamada	select PINCTRL_MTK
22530f010f5SHongzhou Yang
226750cd15dSZhiyong Taoconfig PINCTRL_MT8183
2276de67ca4SArınç ÜNAL	bool "MediaTek MT8183 pin control"
228750cd15dSZhiyong Tao	depends on OF
229750cd15dSZhiyong Tao	depends on ARM64 || COMPILE_TEST
230750cd15dSZhiyong Tao	default ARM64 && ARCH_MEDIATEK
231750cd15dSZhiyong Tao	select PINCTRL_MTK_PARIS
232750cd15dSZhiyong Tao
2338b483bdaSGuodong Liuconfig PINCTRL_MT8186
2346de67ca4SArınç ÜNAL	bool "MediaTek MT8186 pin control"
2358b483bdaSGuodong Liu	depends on OF
2368b483bdaSGuodong Liu	depends on ARM64 || COMPILE_TEST
2378b483bdaSGuodong Liu	default ARM64 && ARCH_MEDIATEK
2388b483bdaSGuodong Liu	select PINCTRL_MTK_PARIS
2398b483bdaSGuodong Liu
24011b918d9SHui.Liuconfig PINCTRL_MT8188
24111b918d9SHui.Liu	bool "MediaTek MT8188 pin control"
24211b918d9SHui.Liu	depends on OF
24311b918d9SHui.Liu	depends on ARM64 || COMPILE_TEST
24411b918d9SHui.Liu	default ARM64 && ARCH_MEDIATEK
24511b918d9SHui.Liu	select PINCTRL_MTK_PARIS
24611b918d9SHui.Liu	help
24711b918d9SHui.Liu	  Say yes here to support pin controller and gpio driver
24811b918d9SHui.Liu	  on MediaTek MT8188 SoC.
24911b918d9SHui.Liu	  In MTK platform, we support virtual gpio and use it to
25011b918d9SHui.Liu	  map specific eint which doesn't have real gpio pin.
25111b918d9SHui.Liu
252d32f38f2SZhiyong Taoconfig PINCTRL_MT8192
2536de67ca4SArınç ÜNAL	bool "MediaTek MT8192 pin control"
254d32f38f2SZhiyong Tao	depends on OF
255d32f38f2SZhiyong Tao	depends on ARM64 || COMPILE_TEST
256d32f38f2SZhiyong Tao	default ARM64 && ARCH_MEDIATEK
257d32f38f2SZhiyong Tao	select PINCTRL_MTK_PARIS
258d32f38f2SZhiyong Tao
2596cf5e9efSZhiyong Taoconfig PINCTRL_MT8195
2606de67ca4SArınç ÜNAL	bool "MediaTek MT8195 pin control"
2616cf5e9efSZhiyong Tao	depends on OF
2626cf5e9efSZhiyong Tao	depends on ARM64 || COMPILE_TEST
263931d7fa8SFabien Parent	default ARM64 && ARCH_MEDIATEK
2646cf5e9efSZhiyong Tao	select PINCTRL_MTK_PARIS
2656cf5e9efSZhiyong Tao
266e94d8b6fSFabien Parentconfig PINCTRL_MT8365
2676de67ca4SArınç ÜNAL	bool "MediaTek MT8365 pin control"
268e94d8b6fSFabien Parent	depends on OF
269e94d8b6fSFabien Parent	depends on ARM64 || COMPILE_TEST
270e94d8b6fSFabien Parent	default ARM64 && ARCH_MEDIATEK
271375eede3SLinus Walleij	select PINCTRL_MTK
272e94d8b6fSFabien Parent
27326466711SFabien Parentconfig PINCTRL_MT8516
2746de67ca4SArınç ÜNAL	bool "MediaTek MT8516 pin control"
27526466711SFabien Parent	depends on OF
27626466711SFabien Parent	depends on ARM64 || COMPILE_TEST
27726466711SFabien Parent	default ARM64 && ARCH_MEDIATEK
27826466711SFabien Parent	select PINCTRL_MTK
27926466711SFabien Parent
280fc59e66cSHongzhou Yang# For PMIC
281fc59e66cSHongzhou Yangconfig PINCTRL_MT6397
2826de67ca4SArınç ÜNAL	bool "MediaTek MT6397 pin control"
28379d62089SJean Delvare	depends on MFD_MT6397 || COMPILE_TEST
284a2202a4cSLinus Walleij	depends on OF
285fc59e66cSHongzhou Yang	default MFD_MT6397
2864a9e0060SMasahiro Yamada	select PINCTRL_MTK
287fc59e66cSHongzhou Yang
288e3fd24a5SSean Wangendmenu
289