[PATCH 5/8] net: fec_mxc: rewrite fallback MDIO Bus allocation

Alexander Feilke Alexander.Feilke at ew.tq-group.com
Fri Nov 21 18:34:45 CET 2025


From: Markus Niebel <Markus.Niebel at ew.tq-group.com>

The code should only be executed if MDIO bus is not assigned.
Otherwise the already assigned / allocated bus will be overwritten.
Add condition check and simplify the code to make it more readable.

Signed-off-by: Markus Niebel <Markus.Niebel at ew.tq-group.com>
Signed-off-by: Alexander Stein <alexander.stein at ew.tq-group.com>
Signed-off-by: Alexander Feilke <alexander.feilke at ew.tq-group.com>
---
 drivers/net/fec_mxc.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c
index 69a76e879b1..7d1567fd88d 100644
--- a/drivers/net/fec_mxc.c
+++ b/drivers/net/fec_mxc.c
@@ -1373,14 +1373,18 @@ static int fecmxc_probe(struct udevice *dev)
 	if (!bus)
 		bus = fec_get_miibus(dev, (ulong)priv->eth, dev_seq(dev));
 #else
+	if (!bus) {
+		ulong regs = (ulong)priv->eth;
 
-	dm_mii_bus = false;
-#ifdef CONFIG_FEC_MXC_MDIO_BASE
-	bus = fec_get_miibus(dev, (ulong)CONFIG_FEC_MXC_MDIO_BASE, dev_seq(dev));
-#else
-	bus = fec_get_miibus(dev, (ulong)priv->eth, dev_seq(dev));
+		dm_mii_bus = false;
+
+#if defined(CONFIG_FEC_MXC_MDIO_BASE)
+		regs = CONFIG_FEC_MXC_MDIO_BASE
 #endif
 
+		bus = fec_get_miibus(dev, regs, dev_seq(dev));
+	}
+
 #endif /* CONFIG_DM_ETH_PHY */
 	if (!bus) {
 		ret = -ENOMEM;
-- 
2.34.1



More information about the U-Boot mailing list