diff --git a/drivers/net/ethernet/arc/emac_rockchip.c b/drivers/net/ethernet/arc/emac_rockchip.c index 51d0585e2575fa6c6739237b0b6e22ae7d7f55da..c31c7407b75353c1d2d4f855957b13098a65ab96 100644 --- a/drivers/net/ethernet/arc/emac_rockchip.c +++ b/drivers/net/ethernet/arc/emac_rockchip.c @@ -202,12 +202,13 @@ static int emac_rockchip_remove(struct platform_device *pdev) struct rockchip_priv_data *priv = netdev_priv(ndev); int err; + err = arc_emac_remove(ndev); + clk_disable_unprepare(priv->refclk); if (priv->regulator) regulator_disable(priv->regulator); - err = arc_emac_remove(ndev); free_netdev(ndev); return err; }