ionic: disable the queues on link down
authorShannon Nelson <snelson@pensando.io>
Sat, 28 Mar 2020 03:14:47 +0000 (20:14 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 30 Mar 2020 18:40:50 +0000 (11:40 -0700)
commit49d3b493673a000b5e9fd8bf1b286e847f104fa9
tree87eed5f790ebd4400d896dcc91533b9f7acf4dce
parentd5eddde5ec526ccdd567c5842063c9aa89ab931e
ionic: disable the queues on link down

When the link goes down, we need to disable the queues on the
NIC in addition to stopping the netdev stack.  This lets the
FW know that the driver has stopped queue activity, and then
the FW can do internal reconfiguration work, whether actually
Link related, or for other internal FW needs.  To do this,
we pull out the queue enable and disable from ionic_open()
and ionic_stop() so they can be used by other routines.

To help keep things sane, we swap the queue enables so that
the rx queue and its napi are enabled before the tx queue
which rides on the rx queues napi.

We also drop the ionic_lif_quiesce() as it doesn't do anything
more than what the queue disable has already taken care of.

Signed-off-by: Shannon Nelson <snelson@pensando.io>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/pensando/ionic/ionic_lif.c