[net-next PATCH v6 0/6] Add af_xdp support for cn10k

From: Suman Ghosh
Date: Wed Feb 12 2025 - 04:48:47 EST


This patchset includes changes to support AF_XDP for cn10k chipsets. Both
non-zero copy and zero copy will be supported after these changes. Also,
the RSS will be reconfigured once a particular receive queue is
added/removed to/from AF_XDP support.

Patch #1: octeontx2-pf: use xdp_return_frame() to free xdp buffers

Patch #2: octeontx2-pf: Add AF_XDP non-zero copy support

Patch #3: octeontx2-pf: AF_XDP zero copy receive support

Patch #4: octeontx2-pf: Reconfigure RSS table after enabling AF_XDP
zerocopy on rx queue

Patch #5: octeontx2-pf: Prepare for AF_XDP transmit

Patch #6: octeontx2-pf: AF_XDP zero copy transmit support

Geetha sowjanya (1):
octeontx2-pf: use xdp_return_frame() to free xdp buffers

Hariprasad Kelam (2):
octeontx2-pf: Prepare for AF_XDP
octeontx2-pf: AF_XDP zero copy transmit support

Suman Ghosh (3):
octeontx2-pf: Add AF_XDP non-zero copy support
octeontx2-pf: AF_XDP zero copy receive support
octeontx2-pf: Reconfigure RSS table after enabling AF_XDP zerocopy on
rx queue

v6 changes:
- Updated patch #1,#3,#5 and #6 to address review comments
from Simon for some code re-arrangement

v5 changes:
- Updated patch #1 to use xdp_return_frame
- Updated patch #6 to use xdp_return_frame

v4 changes:
- Addressed minor comments from Paolo regarding adding fixes tag in patch#2
and removed one unnecessary NULL check from patch#3

v3 changes:
- Rearrenged patch ordering to fix individual patch compilation issue
- Fixed un-initialized variable declaration and reverse x-mas tree issue
pointed by Simon

v2 changes:
- Addressed minor review comments from Simon regrading smatch warnings

.../ethernet/marvell/octeontx2/nic/Makefile | 2 +-
.../ethernet/marvell/octeontx2/nic/cn10k.c | 7 +-
.../marvell/octeontx2/nic/otx2_common.c | 122 +++++++---
.../marvell/octeontx2/nic/otx2_common.h | 17 +-
.../marvell/octeontx2/nic/otx2_ethtool.c | 6 +-
.../ethernet/marvell/octeontx2/nic/otx2_pf.c | 32 +--
.../marvell/octeontx2/nic/otx2_txrx.c | 188 +++++++++++----
.../marvell/octeontx2/nic/otx2_txrx.h | 9 +
.../ethernet/marvell/octeontx2/nic/otx2_vf.c | 12 +-
.../ethernet/marvell/octeontx2/nic/otx2_xsk.c | 225 ++++++++++++++++++
.../ethernet/marvell/octeontx2/nic/otx2_xsk.h | 24 ++
.../ethernet/marvell/octeontx2/nic/qos_sq.c | 2 +-
12 files changed, 554 insertions(+), 92 deletions(-)
create mode 100644 drivers/net/ethernet/marvell/octeontx2/nic/otx2_xsk.c
create mode 100644 drivers/net/ethernet/marvell/octeontx2/nic/otx2_xsk.h

--
2.25.1