[PATCH v2] pinctrl: microchip-sgpio: add missing select REGMAP_MMIO
From: Benjamin Boortz
Date: Sun Jul 19 2026 - 05:45:35 EST
The driver calls ocelot_regmap_from_resource() via <linux/mfd/ocelot.h>,
which internally uses devm_regmap_init_mmio() and requires REGMAP_MMIO.
The Kconfig entry does not select REGMAP_MMIO, causing a build failure
when no other driver in the config happens to pull in REGMAP_MMIO:
include/linux/mfd/ocelot.h:34:24: error: implicit declaration of function 'devm_regmap_init_mmio'
Found by randconfig testing on arm64; tinyconfig reproducer below.
Fixes: 2afbbab45c26 ("pinctrl: microchip-sgpio: update to support regmap")
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Benjamin Boortz <bennib@xxxxxxxxxxx>
Reviewed-by: Andy Shevchenko <andy@xxxxxxxxxx>
---
Reproducer (tinyconfig, arm64, without patch):
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- tinyconfig
scripts/config --enable CONFIG_PINCTRL
scripts/config --enable CONFIG_GPIOLIB
scripts/config --enable CONFIG_PINCTRL_MICROCHIP_SGPIO
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- olddefconfig
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- \
drivers/pinctrl/pinctrl-microchip-sgpio.o
-> CONFIG_REGMAP_MMIO absent, build fails as shown above.
drivers/pinctrl/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/pinctrl/Kconfig b/drivers/pinctrl/Kconfig
index c2cdd7b2c49b..23ea76dc6261 100644
--- a/drivers/pinctrl/Kconfig
+++ b/drivers/pinctrl/Kconfig
@@ -426,6 +426,7 @@ config PINCTRL_MICROCHIP_SGPIO
select GENERIC_PINCONF
select GENERIC_PINCTRL_GROUPS
select GENERIC_PINMUX_FUNCTIONS
+ select REGMAP_MMIO
help
Support for the serial GPIO interface used on Microsemi and
Microchip SoCs. By using a serial interface, the SIO
--
2.55.0