net: cpsw: halt network stack before halting the device during suspend
Move network stack halt APIs before halting the hardware to ensure no packets are queued to hardware during closing the device during suspend sequence. Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com> Acked-by: Richard Cochran <richardcochran@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
549985ee9c
commit
71380f9bb1
|
@ -698,12 +698,12 @@ static int cpsw_ndo_stop(struct net_device *ndev)
|
||||||
struct cpsw_priv *priv = netdev_priv(ndev);
|
struct cpsw_priv *priv = netdev_priv(ndev);
|
||||||
|
|
||||||
cpsw_info(priv, ifdown, "shutting down cpsw device\n");
|
cpsw_info(priv, ifdown, "shutting down cpsw device\n");
|
||||||
cpsw_intr_disable(priv);
|
|
||||||
cpdma_ctlr_int_ctrl(priv->dma, false);
|
|
||||||
cpdma_ctlr_stop(priv->dma);
|
|
||||||
netif_stop_queue(priv->ndev);
|
netif_stop_queue(priv->ndev);
|
||||||
napi_disable(&priv->napi);
|
napi_disable(&priv->napi);
|
||||||
netif_carrier_off(priv->ndev);
|
netif_carrier_off(priv->ndev);
|
||||||
|
cpsw_intr_disable(priv);
|
||||||
|
cpdma_ctlr_int_ctrl(priv->dma, false);
|
||||||
|
cpdma_ctlr_stop(priv->dma);
|
||||||
cpsw_ale_stop(priv->ale);
|
cpsw_ale_stop(priv->ale);
|
||||||
for_each_slave(priv, cpsw_slave_stop, priv);
|
for_each_slave(priv, cpsw_slave_stop, priv);
|
||||||
pm_runtime_put_sync(&priv->pdev->dev);
|
pm_runtime_put_sync(&priv->pdev->dev);
|
||||||
|
|
Loading…
Reference in New Issue