]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
net: designware: fix bitbang init error
authorJim Liu <jim.t90615@gmail.com>
Tue, 14 Oct 2025 05:20:05 +0000 (13:20 +0800)
committerJerome Forissier <jerome.forissier@linaro.org>
Wed, 22 Oct 2025 12:28:33 +0000 (14:28 +0200)
The Synchronous Abort and reset errors occurred due
to incorrect parameter passing during initialization.

Signed-off-by: Jim Liu <JJLIU0@nuvoton.com>
[jf: add missing #if IS_ENABLED(CONFIG_BITBANGMII)]
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
drivers/net/designware.c

index 2fd92cf16bbf24b2b150b879e91803ed64619db7..6ed9c6d538ac6907d44d8932260584d3b7a19a0e 100644 (file)
@@ -125,6 +125,16 @@ static int dw_mdio_reset(struct mii_dev *bus)
 
        return __dw_mdio_reset(dev);
 }
+
+#if IS_ENABLED(CONFIG_BITBANGMII)
+static int dw_bb_mdio_reset(struct mii_dev *bus)
+{
+       struct dw_eth_dev *priv = bus->priv;
+
+       return __dw_mdio_reset(priv->dev);
+}
+#endif
+
 #endif
 
 #if IS_ENABLED(CONFIG_DM_MDIO)
@@ -348,7 +358,7 @@ static int dw_bb_mdio_init(const char *name, struct udevice *dev)
        bus->read = dw_bb_miiphy_read;
        bus->write = dw_bb_miiphy_write;
 #if CONFIG_IS_ENABLED(DM_GPIO)
-       bus->reset = dw_mdio_reset;
+       bus->reset = dw_bb_mdio_reset;
 #endif
        bus->priv = dwpriv;