bnx2x: stop tx before CNIC_STOP
It may take some time to cnic to respond, this prevents tx_timeout when it happens. Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
c636322b24
commit
9505ee3767
|
@ -1989,6 +1989,9 @@ int bnx2x_nic_unload(struct bnx2x *bp, int unload_mode)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Stop Tx */
|
||||||
|
bnx2x_tx_disable(bp);
|
||||||
|
|
||||||
#ifdef BCM_CNIC
|
#ifdef BCM_CNIC
|
||||||
bnx2x_cnic_notify(bp, CNIC_CTL_STOP_CMD);
|
bnx2x_cnic_notify(bp, CNIC_CTL_STOP_CMD);
|
||||||
#endif
|
#endif
|
||||||
|
@ -1997,9 +2000,6 @@ int bnx2x_nic_unload(struct bnx2x *bp, int unload_mode)
|
||||||
|
|
||||||
bp->rx_mode = BNX2X_RX_MODE_NONE;
|
bp->rx_mode = BNX2X_RX_MODE_NONE;
|
||||||
|
|
||||||
/* Stop Tx */
|
|
||||||
bnx2x_tx_disable(bp);
|
|
||||||
|
|
||||||
del_timer_sync(&bp->timer);
|
del_timer_sync(&bp->timer);
|
||||||
|
|
||||||
/* Set ALWAYS_ALIVE bit in shmem */
|
/* Set ALWAYS_ALIVE bit in shmem */
|
||||||
|
|
Loading…
Reference in New Issue