DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Renyong Wan" <wanry@yunsilicon.com>
To: <dev@dpdk.org>
Cc: <ferruh.yigit@amd.com>, <thomas@monjalon.net>,
	 <stephen@networkplumber.org>, <qianr@yunsilicon.com>,
	 <nana@yunsilicon.com>, <zhangxx@yunsilicon.com>,
	<xudw@yunsilicon.com>,  <jacky@yunsilicon.com>,
	<weihg@yunsilicon.com>
Subject: [PATCH v7 00/15] XSC PMD for Yunsilicon NICs
Date: Tue, 28 Jan 2025 22:47:22 +0800	[thread overview]
Message-ID: <20250128144649.1956159-1-wanry@yunsilicon.com> (raw)

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
- Stats per queue

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

---

v7:
* Remove the packed attributes of sub structures and unions.
* Remove the cast of xdev->dev_priv.
* Remove the cast of malloc return value.
* Define the size of xdev->name to PCI_PRI_STR_SIZE.
* Change the name of Wanrenyong to Renyong Wan

v6:
* Remove unnecessary paren.
* Add the feature of stats per queue in xsc.ini.
* Use memcpy instead of rte_memcpy in non critical path.
* Rebase from the main branch and merge release notes.
* Replace __rte_packed with __rte_packed_begin and __rte_packed_end.

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

---
Renyong Wan (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       |  19 +
 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           | 917 +++++++++++++++++++++++++
 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

             reply	other threads:[~2025-01-28 14:49 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-28 14:47 Renyong Wan [this message]
2025-01-28 14:46 ` [PATCH v7 01/15] net/xsc: add xsc PMD framework Renyong Wan
2025-01-28 14:46 ` [PATCH v7 02/15] net/xsc: add xsc device initialization Renyong Wan
2025-01-28 14:46 ` [PATCH v7 03/15] net/xsc: add xsc mailbox Renyong Wan
2025-01-28 14:46 ` [PATCH v7 04/15] net/xsc: add xsc dev ops to support VFIO driver Renyong Wan
2025-01-28 14:46 ` [PATCH v7 05/15] net/xsc: add PCT interfaces Renyong Wan
2025-01-28 14:47 ` [PATCH v7 06/15] net/xsc: initialize xsc representors Renyong Wan
2025-01-28 14:47 ` [PATCH v7 07/15] net/xsc: add ethdev configure and RSS ops Renyong Wan
2025-01-28 14:47 ` [PATCH v7 08/15] net/xsc: add Rx and Tx queue setup Renyong Wan
2025-01-28 14:47 ` [PATCH v7 09/15] net/xsc: add ethdev start Renyong Wan
2025-01-28 14:47 ` [PATCH v7 10/15] net/xsc: add ethdev stop and close Renyong Wan
2025-01-28 14:47 ` [PATCH v7 11/15] net/xsc: add ethdev Rx burst Renyong Wan
2025-01-28 14:47 ` [PATCH v7 12/15] net/xsc: add ethdev Tx burst Renyong Wan
2025-01-28 14:47 ` [PATCH v7 13/15] net/xsc: add basic stats ops Renyong Wan
2025-01-28 14:47 ` [PATCH v7 14/15] net/xsc: add ethdev infos get Renyong Wan
2025-01-28 14:47 ` [PATCH v7 15/15] net/xsc: add ethdev link and MTU ops Renyong Wan
2025-01-28 20:01 ` [PATCH v7 00/15] XSC PMD for Yunsilicon NICs Stephen Hemminger
2025-01-29 13:32   ` WanRenyong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250128144649.1956159-1-wanry@yunsilicon.com \
    --to=wanry@yunsilicon.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@amd.com \
    --cc=jacky@yunsilicon.com \
    --cc=nana@yunsilicon.com \
    --cc=qianr@yunsilicon.com \
    --cc=stephen@networkplumber.org \
    --cc=thomas@monjalon.net \
    --cc=weihg@yunsilicon.com \
    --cc=xudw@yunsilicon.com \
    --cc=zhangxx@yunsilicon.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).