net: enetc: unregister mdiobus
If the device fails to probe - for example, when there is no
ethaddr set - then the private data is automatically freed
but the mdiobus remains registered.
Fixes: 1e354cb39314 ("drivers: net: fsl_enetc: register internal MDIO bus")
Signed-off-by: Michael Walle <michael@walle.cc>
diff --git a/drivers/net/fsl_enetc.c b/drivers/net/fsl_enetc.c
index 9b97a03..cd4c2c2 100644
--- a/drivers/net/fsl_enetc.c
+++ b/drivers/net/fsl_enetc.c
@@ -361,6 +361,9 @@
{
struct enetc_priv *priv = dev_get_priv(dev);
+ if (miiphy_get_dev_by_name(priv->imdio.name))
+ mdio_unregister(&priv->imdio);
+
free(priv->enetc_txbd);
free(priv->enetc_rxbd);