net: ag71xx: add missed clk_disable_unprepare in error path of probe
authorHuang Guobin <huangguobin4@huawei.com>
Mon, 20 Jul 2020 01:46:14 +0000 (21:46 -0400)
committerDavid S. Miller <davem@davemloft.net>
Tue, 21 Jul 2020 01:37:38 +0000 (18:37 -0700)
The ag71xx_mdio_probe() forgets to call clk_disable_unprepare() when
of_reset_control_get_exclusive() failed. Add the missed call to fix it.

Fixes: d51b6ce441d3 ("net: ethernet: add ag71xx driver")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Huang Guobin <huangguobin4@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/atheros/ag71xx.c

index 112edbd308230ee3c7f4082ef1e67f2edbbe9c97..38cce66ef212a5e7aadde101172478b59b61bb23 100644 (file)
@@ -556,7 +556,8 @@ static int ag71xx_mdio_probe(struct ag71xx *ag)
        ag->mdio_reset = of_reset_control_get_exclusive(np, "mdio");
        if (IS_ERR(ag->mdio_reset)) {
                netif_err(ag, probe, ndev, "Failed to get reset mdio.\n");
-               return PTR_ERR(ag->mdio_reset);
+               err = PTR_ERR(ag->mdio_reset);
+               goto mdio_err_put_clk;
        }
 
        mii_bus->name = "ag71xx_mdio";