[PATCH 3/4] pinctrl: mediatek: simplify Kconfig

David Lechner <[email protected]> Mon, 03 Aug 2026 15:57:06 -0500
Newsgroups gmane.comp.boot-loaders.u-boot
Message-ID <20260803-mtk-pinctrl-kconfig-cleanup-v1-3-fef1ff69d1cc@baylibre.com>
Change the MediaTek pinctrl Kconfig to just have a single option for
all targets. This will simplify adding new targets and SPL support in
the future.

There is only one MediaTek target that does not have a pinctrl driver.
All other targets enable it by default so the configs don't have to
explicitly set it in addition to just enabling PINCTRL.

In the Makefile, we can use the target config symbol to automatically
select the correct driver. And the config selector on the common file
was redundant since we already have the same in the parent Makefile,
so it is dropped.

Suggested-by: Quentin Schulz <[email protected]>
Closes: https://lore.kernel.org/u-boot/[email protected]/
Signed-off-by: David Lechner <[email protected]>
---
 drivers/pinctrl/mediatek/Kconfig  | 61 +++------------------------------------
 drivers/pinctrl/mediatek/Makefile | 30 +++++++++----------
 2 files changed, 19 insertions(+), 72 deletions(-)

diff --git a/drivers/pinctrl/mediatek/Kconfig b/drivers/pinctrl/mediatek/Kconfig
index 42c7c8b8c80..46e35cbfe6c 100644
--- a/drivers/pinctrl/mediatek/Kconfig
+++ b/drivers/pinctrl/mediatek/Kconfig
@@ -1,66 +1,13 @@
 if ARCH_MEDIATEK
 
 config PINCTRL_MTK
+	bool "MediaTek pinctrl driver"
 	depends on PINCTRL_GENERIC
+	default y if !TARGET_MT8183
 	select PINCONF
 	select REGMAP
 	select SYSCON
-	bool
-
-config PINCTRL_MT7622
-	bool "MT7622 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT7623
-	bool "MT7623 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT7629
-	bool "MT7629 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT7981
-	bool "MT7981 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT7986
-	bool "MT7986 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT7987
-	bool "MT7987 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT7988
-	bool "MT7988 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT8188
-	bool "MT8188 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT8195
-	bool "MT8195 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT8189
-	bool "MT8189 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT8365
-	bool "MT8365 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT8512
-	bool "MT8512 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT8516
-	bool "MT8516 SoC pinctrl driver"
-	select PINCTRL_MTK
-
-config PINCTRL_MT8518
-	bool "MT8518 SoC pinctrl driver"
-	select PINCTRL_MTK
+	help
+	  Enable MediaTek pinctrl support.
 
 endif
diff --git a/drivers/pinctrl/mediatek/Makefile b/drivers/pinctrl/mediatek/Makefile
index f90c74314f4..983de040ba3 100644
--- a/drivers/pinctrl/mediatek/Makefile
+++ b/drivers/pinctrl/mediatek/Makefile
@@ -1,19 +1,19 @@
 # SPDX-License-Identifier: GPL-2.0
 # Core
-obj-$(CONFIG_PINCTRL_MTK) += pinctrl-mtk-common.o
+obj-y += pinctrl-mtk-common.o
 
 # SoC Drivers
-obj-$(CONFIG_PINCTRL_MT7622) += pinctrl-mt7622.o
-obj-$(CONFIG_PINCTRL_MT7623) += pinctrl-mt7623.o
-obj-$(CONFIG_PINCTRL_MT7629) += pinctrl-mt7629.o
-obj-$(CONFIG_PINCTRL_MT7981) += pinctrl-mt7981.o
-obj-$(CONFIG_PINCTRL_MT7986) += pinctrl-mt7986.o
-obj-$(CONFIG_PINCTRL_MT7987) += pinctrl-mt7987.o
-obj-$(CONFIG_PINCTRL_MT7988) += pinctrl-mt7988.o
-obj-$(CONFIG_PINCTRL_MT8188) += pinctrl-mt8188.o
-obj-$(CONFIG_PINCTRL_MT8195) += pinctrl-mt8195.o
-obj-$(CONFIG_PINCTRL_MT8189) += pinctrl-mt8189.o
-obj-$(CONFIG_PINCTRL_MT8365) += pinctrl-mt8365.o
-obj-$(CONFIG_PINCTRL_MT8512) += pinctrl-mt8512.o
-obj-$(CONFIG_PINCTRL_MT8516) += pinctrl-mt8516.o
-obj-$(CONFIG_PINCTRL_MT8518) += pinctrl-mt8518.o
+obj-$(CONFIG_TARGET_MT7622) += pinctrl-mt7622.o
+obj-$(CONFIG_TARGET_MT7623) += pinctrl-mt7623.o
+obj-$(CONFIG_TARGET_MT7629) += pinctrl-mt7629.o
+obj-$(CONFIG_TARGET_MT7981) += pinctrl-mt7981.o
+obj-$(CONFIG_TARGET_MT7986) += pinctrl-mt7986.o
+obj-$(CONFIG_TARGET_MT7987) += pinctrl-mt7987.o
+obj-$(CONFIG_TARGET_MT7988) += pinctrl-mt7988.o
+obj-$(CONFIG_TARGET_MT8188) += pinctrl-mt8188.o
+obj-$(CONFIG_TARGET_MT8195) += pinctrl-mt8195.o
+obj-$(CONFIG_TARGET_MT8189) += pinctrl-mt8189.o
+obj-$(CONFIG_TARGET_MT8365) += pinctrl-mt8365.o
+obj-$(CONFIG_TARGET_MT8512) += pinctrl-mt8512.o
+obj-$(CONFIG_TARGET_MT8516) += pinctrl-mt8516.o
+obj-$(CONFIG_TARGET_MT8518) += pinctrl-mt8518.o

-- 
2.43.0