[dpdk-dev] [PATCH v3 00/62] Marvell CNXK Ethdev Driver
Nithin Dabilpuram
ndabilpuram at marvell.com
Fri Jun 18 12:36:39 CEST 2021
This patchset adds support for Marvell CN106XX SoC based on 'common/cnxk'
driver. In future, CN9K a.k.a octeontx2 will also be supported by same
driver when code is ready and 'net/octeontx2' will be deprecated.
Harman Kalra (1):
common/cnxk: allocate lmt region in userspace
Jerin Jacob (7):
common/cnxk: fix batch alloc completion poll logic
net/cnxk: add Rx support for cn9k
net/cnxk: add Rx vector version for cn9k
net/cnxk: add Tx support for cn9k
net/cnxk: add Rx support for cn10k
net/cnxk: add Rx vector version for cn10k
net/cnxk: add Tx support for cn10k
Kiran Kumar K (2):
net/cnxk: add support to configure npc
net/cnxk: add initial version of rte flow support
Nithin Dabilpuram (17):
net/cnxk: add build infra and common probe
net/cnxk: add platform specific probe and remove
net/cnxk: add common devargs parsing function
net/cnxk: add common dev infos get support
net/cnxk: add device configuration operation
net/cnxk: add link status update support
net/cnxk: add Rx queue setup and release
net/cnxk: add Tx queue setup and release
net/cnxk: add packet type support
net/cnxk: add queue start and stop support
net/cnxk: add Rx multi-segmented version for cn9k
net/cnxk: add Tx multi-segment version for cn9k
net/cnxk: add Tx vector version for cn9k
net/cnxk: add Rx multi-segment version for cn10k
net/cnxk: add Tx multi-segment version for cn10k
net/cnxk: add Tx vector version for cn10k
net/cnxk: add device start and stop operations
Satha Rao (8):
common/cnxk: add support to lock NIX RQ contexts
common/cnxk: add provision to enable RED on RQ
net/cnxk: add port/queue stats
net/cnxk: add xstats apis
net/cnxk: add rxq/txq info get operations
net/cnxk: add ethdev firmware version get
net/cnxk: add get register operation
net/cnxk: added RETA and RSS hash operations
Satheesh Paul (7):
common/cnxk: add support to dump flow entries
common/cnxk: support for mark and flag flow actions
common/cnxk: support for VLAN push and pop flow actions
common/cnxk: fix flow create on CN98xx
net/cnxk: add flow ops get operation
net/cnxk: support for RSS in rte flow
net/cnxk: add marking and VLAN tagging support
Sunil Kumar Kori (20):
net/cnxk: add MAC address set ops
net/cnxk: add MTU set device operation
net/cnxk: add promiscuous mode enable and disable
net/cnxk: add DMAC filter support
net/cnxk: add all multicast enable/disable ethops
net/cnxk: add Rx/Tx burst mode get ops
net/cnxk: add flow ctrl set/get ops
net/cnxk: add link up/down operations
net/cnxk: add EEPROM module info get operations
net/cnxk: add Rx queue interrupt enable/disable ops
net/cnxk: add validation API for mempool ops
net/cnxk: add device close and reset operations
net/cnxk: add pending Tx mbuf cleanup operation
net/cnxk: register callback to get PTP status
net/cnxk: add base PTP timesync support
net/cnxk: add timesync enable/disable operations
net/cnxk: add Rx/Tx timestamp read operations
net/cnxk: add time read/write/adjust operations
net/cnxk: add read clock operation
net/cnxk: add multicast filter support
--
v3:
- Updated release notes
- Removed RTE_ETH_DEV_AUTOFILL_QUEUE_XSTATS flag and add support for queue
stats in xstats
- Fixed issue with LSO format indices
- Removed mbox sync changes patch from this series
- Fixed documentation issues
- Removed repetitive code in fast path SIMD
- Optimize cn10k LMTST logic
- Make rte_flow_create implementation specific
to handle VLAN Stripping and MARK actions/offloads
- Use rte_atomic_thread_fence() instead of rte_rmb()
- Handle other comments from Jerin.
- Merged rte flow dump API patch to flow ops get patch
- Added marking and vlan tagging support.
- Fixed some checkpatch and git check log issues.
v2:
- Fixed issue with flow validate and flow create for 98xx
- Fixed issue batch alloc logic
- Fix lmtline allocation to be cached
- Sync Inline IPSec Rx mbox with kernel
- Add support for mark and flag flow actions
- Add reta key and hash update ops
- Added PTP and multicast filter support
MAINTAINERS | 5 +-
doc/guides/nics/cnxk.rst | 232 +++++
doc/guides/nics/features/cnxk.ini | 90 ++
doc/guides/nics/features/cnxk_vec.ini | 44 +
doc/guides/nics/features/cnxk_vf.ini | 40 +
doc/guides/nics/index.rst | 1 +
doc/guides/platform/cnxk.rst | 3 +
doc/guides/rel_notes/release_21_08.rst | 5 +
drivers/common/cnxk/hw/npc.h | 2 +
drivers/common/cnxk/meson.build | 1 +
drivers/common/cnxk/roc_api.h | 2 +
drivers/common/cnxk/roc_dev.c | 98 +-
drivers/common/cnxk/roc_dev_priv.h | 1 +
drivers/common/cnxk/roc_mbox.h | 3 +
drivers/common/cnxk/roc_model.h | 6 +
drivers/common/cnxk/roc_nix.h | 39 +-
drivers/common/cnxk/roc_nix_queue.c | 52 +
drivers/common/cnxk/roc_nix_rss.c | 51 +-
drivers/common/cnxk/roc_nix_tm_utils.c | 86 +-
drivers/common/cnxk/roc_npa.c | 10 +-
drivers/common/cnxk/roc_npa.h | 35 +-
drivers/common/cnxk/roc_npc.c | 296 +++++-
drivers/common/cnxk/roc_npc.h | 39 +-
drivers/common/cnxk/roc_npc_mcam.c | 2 +-
drivers/common/cnxk/roc_npc_mcam_dump.c | 611 ++++++++++++
drivers/common/cnxk/roc_npc_priv.h | 3 +-
drivers/common/cnxk/roc_npc_utils.c | 4 +
drivers/common/cnxk/roc_platform.h | 13 +
drivers/common/cnxk/version.map | 7 +
drivers/net/cnxk/cn10k_ethdev.c | 551 +++++++++++
drivers/net/cnxk/cn10k_ethdev.h | 41 +
drivers/net/cnxk/cn10k_rte_flow.c | 72 ++
drivers/net/cnxk/cn10k_rte_flow.h | 17 +
drivers/net/cnxk/cn10k_rx.c | 79 ++
drivers/net/cnxk/cn10k_rx.h | 653 +++++++++++++
drivers/net/cnxk/cn10k_rx_mseg.c | 17 +
drivers/net/cnxk/cn10k_rx_vec.c | 22 +
drivers/net/cnxk/cn10k_tx.c | 82 ++
drivers/net/cnxk/cn10k_tx.h | 1605 +++++++++++++++++++++++++++++++
drivers/net/cnxk/cn10k_tx_mseg.c | 25 +
drivers/net/cnxk/cn10k_tx_vec.c | 26 +
drivers/net/cnxk/cn9k_ethdev.c | 574 +++++++++++
drivers/net/cnxk/cn9k_ethdev.h | 39 +
drivers/net/cnxk/cn9k_rte_flow.c | 72 ++
drivers/net/cnxk/cn9k_rte_flow.h | 17 +
drivers/net/cnxk/cn9k_rx.c | 79 ++
drivers/net/cnxk/cn9k_rx.h | 655 +++++++++++++
drivers/net/cnxk/cn9k_rx_mseg.c | 17 +
drivers/net/cnxk/cn9k_rx_vec.c | 20 +
drivers/net/cnxk/cn9k_tx.c | 81 ++
drivers/net/cnxk/cn9k_tx.h | 1436 +++++++++++++++++++++++++++
drivers/net/cnxk/cn9k_tx_mseg.c | 25 +
drivers/net/cnxk/cn9k_tx_vec.c | 26 +
drivers/net/cnxk/cnxk_ethdev.c | 1528 +++++++++++++++++++++++++++++
drivers/net/cnxk/cnxk_ethdev.h | 495 ++++++++++
drivers/net/cnxk/cnxk_ethdev_devargs.c | 173 ++++
drivers/net/cnxk/cnxk_ethdev_ops.c | 910 ++++++++++++++++++
drivers/net/cnxk/cnxk_link.c | 113 +++
drivers/net/cnxk/cnxk_lookup.c | 326 +++++++
drivers/net/cnxk/cnxk_ptp.c | 287 ++++++
drivers/net/cnxk/cnxk_rte_flow.c | 433 +++++++++
drivers/net/cnxk/cnxk_rte_flow.h | 27 +
drivers/net/cnxk/cnxk_stats.c | 320 ++++++
drivers/net/cnxk/meson.build | 48 +
drivers/net/cnxk/version.map | 3 +
drivers/net/meson.build | 1 +
66 files changed, 12577 insertions(+), 99 deletions(-)
create mode 100644 doc/guides/nics/cnxk.rst
create mode 100644 doc/guides/nics/features/cnxk.ini
create mode 100644 doc/guides/nics/features/cnxk_vec.ini
create mode 100644 doc/guides/nics/features/cnxk_vf.ini
create mode 100644 drivers/common/cnxk/roc_npc_mcam_dump.c
create mode 100644 drivers/net/cnxk/cn10k_ethdev.c
create mode 100644 drivers/net/cnxk/cn10k_ethdev.h
create mode 100644 drivers/net/cnxk/cn10k_rte_flow.c
create mode 100644 drivers/net/cnxk/cn10k_rte_flow.h
create mode 100644 drivers/net/cnxk/cn10k_rx.c
create mode 100644 drivers/net/cnxk/cn10k_rx.h
create mode 100644 drivers/net/cnxk/cn10k_rx_mseg.c
create mode 100644 drivers/net/cnxk/cn10k_rx_vec.c
create mode 100644 drivers/net/cnxk/cn10k_tx.c
create mode 100644 drivers/net/cnxk/cn10k_tx.h
create mode 100644 drivers/net/cnxk/cn10k_tx_mseg.c
create mode 100644 drivers/net/cnxk/cn10k_tx_vec.c
create mode 100644 drivers/net/cnxk/cn9k_ethdev.c
create mode 100644 drivers/net/cnxk/cn9k_ethdev.h
create mode 100644 drivers/net/cnxk/cn9k_rte_flow.c
create mode 100644 drivers/net/cnxk/cn9k_rte_flow.h
create mode 100644 drivers/net/cnxk/cn9k_rx.c
create mode 100644 drivers/net/cnxk/cn9k_rx.h
create mode 100644 drivers/net/cnxk/cn9k_rx_mseg.c
create mode 100644 drivers/net/cnxk/cn9k_rx_vec.c
create mode 100644 drivers/net/cnxk/cn9k_tx.c
create mode 100644 drivers/net/cnxk/cn9k_tx.h
create mode 100644 drivers/net/cnxk/cn9k_tx_mseg.c
create mode 100644 drivers/net/cnxk/cn9k_tx_vec.c
create mode 100644 drivers/net/cnxk/cnxk_ethdev.c
create mode 100644 drivers/net/cnxk/cnxk_ethdev.h
create mode 100644 drivers/net/cnxk/cnxk_ethdev_devargs.c
create mode 100644 drivers/net/cnxk/cnxk_ethdev_ops.c
create mode 100644 drivers/net/cnxk/cnxk_link.c
create mode 100644 drivers/net/cnxk/cnxk_lookup.c
create mode 100644 drivers/net/cnxk/cnxk_ptp.c
create mode 100644 drivers/net/cnxk/cnxk_rte_flow.c
create mode 100644 drivers/net/cnxk/cnxk_rte_flow.h
create mode 100644 drivers/net/cnxk/cnxk_stats.c
create mode 100644 drivers/net/cnxk/meson.build
create mode 100644 drivers/net/cnxk/version.map
--
2.8.4
More information about the dev
mailing list