diff options
author | Shannon Nelson <snelson@pensando.io> | 2019-09-03 15:28:13 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-09-05 09:24:43 +0200 |
commit | c1e329ebec8d0895942e292b64e432b33c93a173 (patch) | |
tree | 00c265d7995d2f2abaf6560e0b71b0330ad7406f /drivers/net/ethernet/pensando/ionic/ionic_lif.c | |
parent | beead698b1736dfa4061dd2e3fe3efef6d0c49b4 (diff) |
ionic: Add management of rx filters
Set up the infrastructure for managing Rx filters. We can't ask the
hardware for what filters it has, so we keep a local list of filters
that we've pushed into the HW.
Signed-off-by: Shannon Nelson <snelson@pensando.io>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/pensando/ionic/ionic_lif.c')
-rw-r--r-- | drivers/net/ethernet/pensando/ionic/ionic_lif.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_lif.c b/drivers/net/ethernet/pensando/ionic/ionic_lif.c index 9ccb72d45015..2a3f11962bd1 100644 --- a/drivers/net/ethernet/pensando/ionic/ionic_lif.c +++ b/drivers/net/ethernet/pensando/ionic/ionic_lif.c @@ -830,6 +830,8 @@ static void ionic_lif_deinit(struct ionic_lif *lif) clear_bit(IONIC_LIF_INITED, lif->state); + ionic_rx_filters_deinit(lif); + napi_disable(&lif->adminqcq->napi); ionic_lif_qcq_deinit(lif, lif->notifyqcq); ionic_lif_qcq_deinit(lif, lif->adminqcq); @@ -1009,6 +1011,10 @@ static int ionic_lif_init(struct ionic_lif *lif) if (err) goto err_out_notifyq_deinit; + err = ionic_rx_filters_init(lif); + if (err) + goto err_out_notifyq_deinit; + set_bit(IONIC_LIF_INITED, lif->state); return 0; |