|
@@ -1667,8 +1667,13 @@ static int ravb_close(struct net_device *ndev)
|
|
priv->phydev = NULL;
|
|
priv->phydev = NULL;
|
|
}
|
|
}
|
|
|
|
|
|
- if (priv->chip_id == RCAR_GEN3)
|
|
|
|
|
|
+ if (priv->chip_id != RCAR_GEN2) {
|
|
|
|
+ free_irq(priv->tx_irqs[RAVB_NC], ndev);
|
|
|
|
+ free_irq(priv->rx_irqs[RAVB_NC], ndev);
|
|
|
|
+ free_irq(priv->tx_irqs[RAVB_BE], ndev);
|
|
|
|
+ free_irq(priv->rx_irqs[RAVB_BE], ndev);
|
|
free_irq(priv->emac_irq, ndev);
|
|
free_irq(priv->emac_irq, ndev);
|
|
|
|
+ }
|
|
free_irq(ndev->irq, ndev);
|
|
free_irq(ndev->irq, ndev);
|
|
|
|
|
|
napi_disable(&priv->napi[RAVB_NC]);
|
|
napi_disable(&priv->napi[RAVB_NC]);
|