All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/25] Net/SPNIC: support SPNIC into DPDK 22.03
@ 2021-12-25 11:28 Yanling Song
  2021-12-25 11:28 ` [PATCH v4 01/25] drivers/net: introduce a new PMD driver Yanling Song
                   ` (24 more replies)
  0 siblings, 25 replies; 28+ messages in thread
From: Yanling Song @ 2021-12-25 11:28 UTC (permalink / raw)
  To: dev; +Cc: songyl, yanling.song, yanggan, xuyun, ferruh.yigit

The patchsets introduce SPNIC driver for Ramaxel's SPNxx serial NIC cards into DPDK 22.03.
Ramaxel Memory Technology is a company which supply a lot of electric products: 
storage, communication, PCB...
SPNxxx is a serial PCIE interface NIC cards:
SPN110: 2 PORTs *25G
SPN120: 4 PORTs *25G
SPN130: 2 PORTs *100G

The following is main features of our SPNIC:
- TSO
- LRO
- Flow control
- SR-IOV(Partially supported)
- VLAN offload
- VLAN filter
- CRC offload
- Promiscuous mode
- RSS

v3->v4:
1. Fix ABI test failure;
2. Remove some descriptions in spnic.rst.

v2->v3:
1. Fix clang compiling failure.

v1->v2:
1. Fix coding style issues and compiling failures;
2. Only support linux in meson.build;
3. Use CLOCK_MONOTONIC_COARSE instead of CLOCK_MONOTONIC/CLOCK_MONOTONIC_RAW;
4. Fix time_before();
5. Remove redundant checks in spnic_dev_configure();

Yanling Song (25):
  drivers/net: introduce a new PMD driver
  net/spnic: initialize the HW interface
  net/spnic: add mbox message channel
  net/spnic: introduce event queue
  net/spnic: add mgmt module
  net/spnic: add cmdq and work queue
  net/spnic: add interface handling cmdq message
  net/spnic: add hardware info initialization
  net/spnic: support MAC and link event handling
  net/spnic: add function info initialization
  net/spnic: add queue pairs context initialization
  net/spnic: support mbuf handling of Tx/Rx
  net/spnic: support Rx congfiguration
  net/spnic: add port/vport enable
  net/spnic: support IO packets handling
  net/spnic: add device configure/version/info
  net/spnic: support RSS configuration update and get
  net/spnic: support VLAN filtering and offloading
  net/spnic: support promiscuous and allmulticast Rx modes
  net/spnic: support flow control
  net/spnic: support getting Tx/Rx queues info
  net/spnic: net/spnic: support xstats statistics
  net/spnic: support VFIO interrupt
  net/spnic: support Tx/Rx queue start/stop
  net/spnic: add doc infrastructure

 MAINTAINERS                              |    6 +
 doc/guides/nics/features/spnic.ini       |   39 +
 doc/guides/nics/index.rst                |    1 +
 doc/guides/nics/spnic.rst                |   55 +
 drivers/net/meson.build                  |    1 +
 drivers/net/spnic/base/meson.build       |   37 +
 drivers/net/spnic/base/spnic_cmd.h       |  222 ++
 drivers/net/spnic/base/spnic_cmdq.c      |  875 ++++++
 drivers/net/spnic/base/spnic_cmdq.h      |  248 ++
 drivers/net/spnic/base/spnic_compat.h    |  184 ++
 drivers/net/spnic/base/spnic_csr.h       |  104 +
 drivers/net/spnic/base/spnic_eqs.c       |  661 +++++
 drivers/net/spnic/base/spnic_eqs.h       |  102 +
 drivers/net/spnic/base/spnic_hw_cfg.c    |  212 ++
 drivers/net/spnic/base/spnic_hw_cfg.h    |  125 +
 drivers/net/spnic/base/spnic_hw_comm.c   |  485 ++++
 drivers/net/spnic/base/spnic_hw_comm.h   |  204 ++
 drivers/net/spnic/base/spnic_hwdev.c     |  514 ++++
 drivers/net/spnic/base/spnic_hwdev.h     |  143 +
 drivers/net/spnic/base/spnic_hwif.c      |  774 ++++++
 drivers/net/spnic/base/spnic_hwif.h      |  155 ++
 drivers/net/spnic/base/spnic_mbox.c      | 1194 ++++++++
 drivers/net/spnic/base/spnic_mbox.h      |  202 ++
 drivers/net/spnic/base/spnic_mgmt.c      |  367 +++
 drivers/net/spnic/base/spnic_mgmt.h      |  110 +
 drivers/net/spnic/base/spnic_nic_cfg.c   | 1348 +++++++++
 drivers/net/spnic/base/spnic_nic_cfg.h   | 1110 ++++++++
 drivers/net/spnic/base/spnic_nic_event.c |  185 ++
 drivers/net/spnic/base/spnic_nic_event.h |   24 +
 drivers/net/spnic/base/spnic_wq.c        |  139 +
 drivers/net/spnic/base/spnic_wq.h        |  123 +
 drivers/net/spnic/meson.build            |   20 +
 drivers/net/spnic/spnic_ethdev.c         | 3212 ++++++++++++++++++++++
 drivers/net/spnic/spnic_ethdev.h         |   95 +
 drivers/net/spnic/spnic_io.c             |  738 +++++
 drivers/net/spnic/spnic_io.h             |  154 ++
 drivers/net/spnic/spnic_rx.c             |  937 +++++++
 drivers/net/spnic/spnic_rx.h             |  326 +++
 drivers/net/spnic/spnic_tx.c             |  858 ++++++
 drivers/net/spnic/spnic_tx.h             |  297 ++
 drivers/net/spnic/version.map            |    3 +
 41 files changed, 16589 insertions(+)
 create mode 100644 doc/guides/nics/features/spnic.ini
 create mode 100644 doc/guides/nics/spnic.rst
 create mode 100644 drivers/net/spnic/base/meson.build
 create mode 100644 drivers/net/spnic/base/spnic_cmd.h
 create mode 100644 drivers/net/spnic/base/spnic_cmdq.c
 create mode 100644 drivers/net/spnic/base/spnic_cmdq.h
 create mode 100644 drivers/net/spnic/base/spnic_compat.h
 create mode 100644 drivers/net/spnic/base/spnic_csr.h
 create mode 100644 drivers/net/spnic/base/spnic_eqs.c
 create mode 100644 drivers/net/spnic/base/spnic_eqs.h
 create mode 100644 drivers/net/spnic/base/spnic_hw_cfg.c
 create mode 100644 drivers/net/spnic/base/spnic_hw_cfg.h
 create mode 100644 drivers/net/spnic/base/spnic_hw_comm.c
 create mode 100644 drivers/net/spnic/base/spnic_hw_comm.h
 create mode 100644 drivers/net/spnic/base/spnic_hwdev.c
 create mode 100644 drivers/net/spnic/base/spnic_hwdev.h
 create mode 100644 drivers/net/spnic/base/spnic_hwif.c
 create mode 100644 drivers/net/spnic/base/spnic_hwif.h
 create mode 100644 drivers/net/spnic/base/spnic_mbox.c
 create mode 100644 drivers/net/spnic/base/spnic_mbox.h
 create mode 100644 drivers/net/spnic/base/spnic_mgmt.c
 create mode 100644 drivers/net/spnic/base/spnic_mgmt.h
 create mode 100644 drivers/net/spnic/base/spnic_nic_cfg.c
 create mode 100644 drivers/net/spnic/base/spnic_nic_cfg.h
 create mode 100644 drivers/net/spnic/base/spnic_nic_event.c
 create mode 100644 drivers/net/spnic/base/spnic_nic_event.h
 create mode 100644 drivers/net/spnic/base/spnic_wq.c
 create mode 100644 drivers/net/spnic/base/spnic_wq.h
 create mode 100644 drivers/net/spnic/meson.build
 create mode 100644 drivers/net/spnic/spnic_ethdev.c
 create mode 100644 drivers/net/spnic/spnic_ethdev.h
 create mode 100644 drivers/net/spnic/spnic_io.c
 create mode 100644 drivers/net/spnic/spnic_io.h
 create mode 100644 drivers/net/spnic/spnic_rx.c
 create mode 100644 drivers/net/spnic/spnic_rx.h
 create mode 100644 drivers/net/spnic/spnic_tx.c
 create mode 100644 drivers/net/spnic/spnic_tx.h
 create mode 100644 drivers/net/spnic/version.map

-- 
2.32.0


^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2021-12-29 11:49 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-12-25 11:28 [PATCH v4 00/25] Net/SPNIC: support SPNIC into DPDK 22.03 Yanling Song
2021-12-25 11:28 ` [PATCH v4 01/25] drivers/net: introduce a new PMD driver Yanling Song
2021-12-25 11:28 ` [PATCH v4 02/25] net/spnic: initialize the HW interface Yanling Song
2021-12-28  2:10   ` lihuisong (C)
2021-12-29 11:49     ` Yanling Song
2021-12-25 11:28 ` [PATCH v4 03/25] net/spnic: add mbox message channel Yanling Song
2021-12-25 11:28 ` [PATCH v4 04/25] net/spnic: introduce event queue Yanling Song
2021-12-25 11:28 ` [PATCH v4 05/25] net/spnic: add mgmt module Yanling Song
2021-12-25 11:28 ` [PATCH v4 06/25] net/spnic: add cmdq and work queue Yanling Song
2021-12-25 11:28 ` [PATCH v4 07/25] net/spnic: add interface handling cmdq message Yanling Song
2021-12-25 11:28 ` [PATCH v4 08/25] net/spnic: add hardware info initialization Yanling Song
2021-12-25 11:28 ` [PATCH v4 09/25] net/spnic: support MAC and link event handling Yanling Song
2021-12-25 11:28 ` [PATCH v4 10/25] net/spnic: add function info initialization Yanling Song
2021-12-25 11:28 ` [PATCH v4 11/25] net/spnic: add queue pairs context initialization Yanling Song
2021-12-25 11:29 ` [PATCH v4 12/25] net/spnic: support mbuf handling of Tx/Rx Yanling Song
2021-12-25 11:29 ` [PATCH v4 13/25] net/spnic: support Rx congfiguration Yanling Song
2021-12-25 11:29 ` [PATCH v4 14/25] net/spnic: add port/vport enable Yanling Song
2021-12-25 11:29 ` [PATCH v4 15/25] net/spnic: support IO packets handling Yanling Song
2021-12-25 11:29 ` [PATCH v4 16/25] net/spnic: add device configure/version/info Yanling Song
2021-12-25 11:29 ` [PATCH v4 17/25] net/spnic: support RSS configuration update and get Yanling Song
2021-12-25 11:29 ` [PATCH v4 18/25] net/spnic: support VLAN filtering and offloading Yanling Song
2021-12-25 11:29 ` [PATCH v4 19/25] net/spnic: support promiscuous and allmulticast Rx modes Yanling Song
2021-12-25 11:29 ` [PATCH v4 20/25] net/spnic: support flow control Yanling Song
2021-12-25 11:29 ` [PATCH v4 21/25] net/spnic: support getting Tx/Rx queues info Yanling Song
2021-12-25 11:29 ` [PATCH v4 22/25] net/spnic: net/spnic: support xstats statistics Yanling Song
2021-12-25 11:29 ` [PATCH v4 23/25] net/spnic: support VFIO interrupt Yanling Song
2021-12-25 11:29 ` [PATCH v4 24/25] net/spnic: support Tx/Rx queue start/stop Yanling Song
2021-12-25 11:29 ` [PATCH v4 25/25] net/spnic: add doc infrastructure Yanling Song

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.