[PATCH v5 00/15] XSC PMD for Yunsilicon NICs
WanRenyong
wanry at yunsilicon.com
Tue Jan 7 03:50:20 CET 2025
This xsc PMD (**librte_net_xsc**) provides poll mode driver for
Yunsilicon metaScale serials NICs.
Features:
---------
- MTU update
- TSO
- RSS hash
- RSS key update
- RSS reta update
- L3 checksum offload
- L4 checksum offload
- Inner L3 checksum
- Inner L4 checksum
- Basic stats
Support NICs:
-------------
- metaScale-200S Single QSFP56 Port 200GE SmartNIC
- metaScale-200 Quad QSFP28 Ports 100GE SmartNIC
- metaScale-50 Dual QSFP28 Port 25GE SmartNIC
- metaScale-100Q Quad QSFP28 Port 25GE SmartNIC
---
v5:
* fix compilation errors.
* fix coding style issue with misspelling.
* remove some unnecessary parameter checks.
* remove unnecessary call of rte_wmb.
* Rearrange elements in structure to avoid holes.
v4:
* Based on the review comments from previous versions, reconstruct the xsc PMD to eliminate
the dependency on rdma core library and proprietary kernel driver, while adding support for
the vfio kernel driver.
v3:
* fix compilation errors
v2:
* fix checkpatch warnings and errors
---
WanRenyong (15):
net/xsc: add xsc PMD framework
net/xsc: add xsc device initialization
net/xsc: add xsc mailbox
net/xsc: add xsc dev ops to support VFIO driver
net/xsc: add PCT interfaces
net/xsc: initialize xsc representors
net/xsc: add ethdev configure and RSS ops
net/xsc: add Rx and Tx queue setup
net/xsc: add ethdev start
net/xsc: add ethdev stop and close
net/xsc: add ethdev Rx burst
net/xsc: add ethdev Tx burst
net/xsc: add basic stats ops
net/xsc: add ethdev infos get
net/xsc: add ethdev link and MTU ops
.mailmap | 5 +
MAINTAINERS | 10 +
doc/guides/nics/features/xsc.ini | 18 +
doc/guides/nics/index.rst | 1 +
doc/guides/nics/xsc.rst | 31 +
doc/guides/rel_notes/release_25_03.rst | 4 +
drivers/net/meson.build | 1 +
drivers/net/xsc/meson.build | 17 +
drivers/net/xsc/xsc_cmd.h | 387 +++++++++++
drivers/net/xsc/xsc_defs.h | 100 +++
drivers/net/xsc/xsc_dev.c | 397 +++++++++++
drivers/net/xsc/xsc_dev.h | 184 +++++
drivers/net/xsc/xsc_ethdev.c | 918 +++++++++++++++++++++++++
drivers/net/xsc/xsc_ethdev.h | 63 ++
drivers/net/xsc/xsc_log.h | 24 +
drivers/net/xsc/xsc_np.c | 492 +++++++++++++
drivers/net/xsc/xsc_np.h | 154 +++++
drivers/net/xsc/xsc_rx.c | 512 ++++++++++++++
drivers/net/xsc/xsc_rx.h | 65 ++
drivers/net/xsc/xsc_rxtx.h | 191 +++++
drivers/net/xsc/xsc_tx.c | 354 ++++++++++
drivers/net/xsc/xsc_tx.h | 62 ++
drivers/net/xsc/xsc_vfio.c | 746 ++++++++++++++++++++
drivers/net/xsc/xsc_vfio_mbox.c | 691 +++++++++++++++++++
drivers/net/xsc/xsc_vfio_mbox.h | 142 ++++
25 files changed, 5569 insertions(+)
create mode 100644 doc/guides/nics/features/xsc.ini
create mode 100644 doc/guides/nics/xsc.rst
create mode 100644 drivers/net/xsc/meson.build
create mode 100644 drivers/net/xsc/xsc_cmd.h
create mode 100644 drivers/net/xsc/xsc_defs.h
create mode 100644 drivers/net/xsc/xsc_dev.c
create mode 100644 drivers/net/xsc/xsc_dev.h
create mode 100644 drivers/net/xsc/xsc_ethdev.c
create mode 100644 drivers/net/xsc/xsc_ethdev.h
create mode 100644 drivers/net/xsc/xsc_log.h
create mode 100644 drivers/net/xsc/xsc_np.c
create mode 100644 drivers/net/xsc/xsc_np.h
create mode 100644 drivers/net/xsc/xsc_rx.c
create mode 100644 drivers/net/xsc/xsc_rx.h
create mode 100644 drivers/net/xsc/xsc_rxtx.h
create mode 100644 drivers/net/xsc/xsc_tx.c
create mode 100644 drivers/net/xsc/xsc_tx.h
create mode 100644 drivers/net/xsc/xsc_vfio.c
create mode 100644 drivers/net/xsc/xsc_vfio_mbox.c
create mode 100644 drivers/net/xsc/xsc_vfio_mbox.h
--
2.25.1
More information about the dev
mailing list