Thread (9 messages) 9 messages, 4 authors, 2025-05-16
STALE425d

[PATCH] mux: mmio: Fix missing CONFIG_REGMAP_MMIO

From: Krzysztof Kozlowski <hidden>
Date: 2025-05-15 14:06:06
Also in: lkml
Subsystem: multiplexer subsystem, networking drivers, the rest · Maintainers: Peter Rosin, Andrew Lunn, "David S. Miller", Eric Dumazet, Jakub Kicinski, Paolo Abeni, Linus Torvalds

MMIO mux uses now regmap_init_mmio(), so one way or another
CONFIG_REGMAP_MMIO should be enabled, because there are no stubs for
!REGMAP_MMIO case:

  ERROR: modpost: "__regmap_init_mmio_clk" [drivers/mux/mux-mmio.ko] undefined!

REGMAP_MMIO should be, because it is a non-visible symbol, but this
causes a circular dependency:

  error: recursive dependency detected!
  symbol IRQ_DOMAIN is selected by REGMAP
  symbol REGMAP default is visible depending on REGMAP_MMIO
  symbol REGMAP_MMIO is selected by MUX_MMIO
  symbol MUX_MMIO depends on MULTIPLEXER
  symbol MULTIPLEXER is selected by MDIO_BUS_MUX_MULTIPLEXER
  symbol MDIO_BUS_MUX_MULTIPLEXER depends on MDIO_DEVICE
  symbol MDIO_DEVICE is selected by PHYLIB
  symbol PHYLIB is selected by ARC_EMAC_CORE
  symbol ARC_EMAC_CORE is selected by EMAC_ROCKCHIP
  symbol EMAC_ROCKCHIP depends on OF_IRQ
  symbol OF_IRQ depends on IRQ_DOMAIN

... which we can break by changing dependency in EMAC_ROCKCHIP from
OF_IRQ to OF.

Reported-by: kernel test robot <redacted>
Closes: https://lore.kernel.org/oe-kbuild-all/202505150312.dYbBqUhG-lkp@intel.com/ (local)
Fixes: 61de83fd8256 ("mux: mmio: Do not use syscon helper to build regmap")
Signed-off-by: Krzysztof Kozlowski <redacted>

---

Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Samuel Holland <samuel@sholland.org>
Cc: Arnd Bergmann <arnd@arndb.de>
---
 drivers/mux/Kconfig              | 1 +
 drivers/net/ethernet/arc/Kconfig | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/mux/Kconfig b/drivers/mux/Kconfig
index 80f015cf6e54..c68132e38138 100644
--- a/drivers/mux/Kconfig
+++ b/drivers/mux/Kconfig
@@ -48,6 +48,7 @@ config MUX_GPIO
 config MUX_MMIO
 	tristate "MMIO/Regmap register bitfield-controlled Multiplexer"
 	depends on OF
+	select REGMAP_MMIO
 	help
 	  MMIO/Regmap register bitfield-controlled Multiplexer controller.
 
diff --git a/drivers/net/ethernet/arc/Kconfig b/drivers/net/ethernet/arc/Kconfig
index 0d400a7d8d91..8ccedece5339 100644
--- a/drivers/net/ethernet/arc/Kconfig
+++ b/drivers/net/ethernet/arc/Kconfig
@@ -26,7 +26,7 @@ config ARC_EMAC_CORE
 config EMAC_ROCKCHIP
 	tristate "Rockchip EMAC support"
 	select ARC_EMAC_CORE
-	depends on OF_IRQ && REGULATOR
+	depends on OF && REGULATOR
 	depends on ARCH_ROCKCHIP || COMPILE_TEST
 	help
 	  Support for Rockchip RK3036/RK3066/RK3188 EMAC ethernet controllers.
-- 
2.45.2
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help