From: Markus Niebel <[email protected]>

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 <[email protected]>
Signed-off-by: Alexander Stein <[email protected]>
Signed-off-by: Alexander Feilke <[email protected]>
---
 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

Reply via email to