diff --git a/drivers/net/ethernet/cadence/macb.c b/drivers/net/ethernet/cadence/macb.c index 06dea3dd463c2c27936bd5c02cb5a3c76d7bd229..84029ed96d6f658023bda5cfdba3dcc6c390b7bf 100644 --- a/drivers/net/ethernet/cadence/macb.c +++ b/drivers/net/ethernet/cadence/macb.c @@ -2408,11 +2408,11 @@ static int __exit macb_remove(struct platform_device *pdev) queue = bp->queues; for (q = 0; q < bp->num_queues; ++q, ++queue) devm_free_irq(&pdev->dev, queue->irq, queue); - free_netdev(dev); if (!IS_ERR(bp->tx_clk)) clk_disable_unprepare(bp->tx_clk); clk_disable_unprepare(bp->hclk); clk_disable_unprepare(bp->pclk); + free_netdev(dev); } return 0;