summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
diff options
context:
space:
mode:
authorJakub Kicinski2016-11-03 18:12:01 +0100
committerDavid S. Miller2016-11-04 19:56:15 +0100
commit0668b60ba60228cb0fa21bc69baa6269edf7b6d3 (patch)
tree88b4eff0920e58da289c682d1f9ae9bc2e924ace /drivers/net/ethernet/netronome/nfp/nfp_net_common.c
parentnfp: reuse ring helpers on .ndo_open() path (diff)
downloadkernel-qcow2-linux-0668b60ba60228cb0fa21bc69baa6269edf7b6d3.tar.gz
kernel-qcow2-linux-0668b60ba60228cb0fa21bc69baa6269edf7b6d3.tar.xz
kernel-qcow2-linux-0668b60ba60228cb0fa21bc69baa6269edf7b6d3.zip
nfp: loosen relation between rings and IRQs vectors
Upcoming XDP support will break the assumption that one can iterate over IRQ vectors to get to all the rings easily. Use nn->.x_ring arrays directly. Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/netronome/nfp/nfp_net_common.c')
-rw-r--r--drivers/net/ethernet/netronome/nfp/nfp_net_common.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/net/ethernet/netronome/nfp/nfp_net_common.c b/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
index 50aeaea9e318..97cc21eae466 100644
--- a/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
+++ b/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
@@ -1920,9 +1920,9 @@ static void nfp_net_clear_config_and_disable(struct nfp_net *nn)
nn_err(nn, "Could not disable device: %d\n", err);
for (r = 0; r < nn->num_rx_rings; r++)
- nfp_net_rx_ring_reset(nn->r_vecs[r].rx_ring);
+ nfp_net_rx_ring_reset(&nn->rx_rings[r]);
for (r = 0; r < nn->num_tx_rings; r++)
- nfp_net_tx_ring_reset(nn, nn->r_vecs[r].tx_ring);
+ nfp_net_tx_ring_reset(nn, &nn->tx_rings[r]);
for (r = 0; r < nn->num_r_vecs; r++)
nfp_net_vec_clear_ring_data(nn, r);
@@ -2000,7 +2000,7 @@ static int __nfp_net_set_config_and_enable(struct nfp_net *nn)
nn->ctrl = new_ctrl;
for (r = 0; r < nn->num_rx_rings; r++)
- nfp_net_rx_ring_fill_freelist(nn->r_vecs[r].rx_ring);
+ nfp_net_rx_ring_fill_freelist(&nn->rx_rings[r]);
/* Since reconfiguration requests while NFP is down are ignored we
* have to wipe the entire VXLAN configuration and reinitialize it.
@@ -2173,11 +2173,11 @@ static void nfp_net_close_free_all(struct nfp_net *nn)
unsigned int r;
for (r = 0; r < nn->num_rx_rings; r++) {
- nfp_net_rx_ring_bufs_free(nn, nn->r_vecs[r].rx_ring);
- nfp_net_rx_ring_free(nn->r_vecs[r].rx_ring);
+ nfp_net_rx_ring_bufs_free(nn, &nn->rx_rings[r]);
+ nfp_net_rx_ring_free(&nn->rx_rings[r]);
}
for (r = 0; r < nn->num_tx_rings; r++)
- nfp_net_tx_ring_free(nn->r_vecs[r].tx_ring);
+ nfp_net_tx_ring_free(&nn->tx_rings[r]);
for (r = 0; r < nn->num_r_vecs; r++)
nfp_net_cleanup_vector(nn, &nn->r_vecs[r]);