Correctly free the MDIO Bus on calling cleanup function. While at it
also fix a copy-paste error and rename the cleanup function name to the
more specific name.

Signed-off-by: Christian Marangi <[email protected]>
---
 drivers/net/mtk_eth/mt7988.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/net/mtk_eth/mt7988.c b/drivers/net/mtk_eth/mt7988.c
index 74e16bf49e7..797070add7a 100644
--- a/drivers/net/mtk_eth/mt7988.c
+++ b/drivers/net/mtk_eth/mt7988.c
@@ -146,11 +146,13 @@ static int mt7988_setup(struct mtk_eth_switch_priv 
*swpriv)
        return mt7531_mdio_register(priv);
 }
 
-static int mt7531_cleanup(struct mtk_eth_switch_priv *swpriv)
+static int mt7988_cleanup(struct mtk_eth_switch_priv *swpriv)
 {
        struct mt753x_switch_priv *priv = (struct mt753x_switch_priv *)swpriv;
+       struct mii_dev *mdio_bus = priv->mdio_bus;
 
-       mdio_unregister(priv->mdio_bus);
+       mdio_unregister(mdio_bus);
+       mdio_free(mdio_bus);
 
        return 0;
 }
@@ -162,6 +164,6 @@ MTK_ETH_SWITCH(mt7988) = {
        .reset_wait_time = 50,
 
        .setup = mt7988_setup,
-       .cleanup = mt7531_cleanup,
+       .cleanup = mt7988_cleanup,
        .mac_control = mt7988_mac_control,
 };
-- 
2.51.0

Reply via email to