mbox series

[v3,00/58] OCTEON TX2 Ethdev driver

Message ID 20190703084244.33553-1-jerinj@marvell.com (mailing list archive)
Headers
Series OCTEON TX2 Ethdev driver |

Message

Jerin Jacob Kollanukkaran July 3, 2019, 8:41 a.m. UTC
  From: Jerin Jacob <jerinj@marvell.com>

This patchset adds support for OCTEON TX2 ethdev driver.

v3:

# Fix build issue with ICC 32bit build
# Add missing "net/octeontx2: add link status set operations" patch from
v1

v2:
# Moved maintainers file to the first patch(Ferruh)
# removed reference to to v19.05(Ferruh) 
# Makefile/Meson CFLAGS moved to specific patches(Ferruh)
# Move Documentation updates to specific patches(Ferruh)
# reworked the code to remove the need for exposing
otx2_nix_fastpath_lookup_mem_get function(Ferruh)
# Updated goto logic in net/octeontx2: add FW version get operation(Ferruh)
# Added "add Rx interrupts support" patch


Harman Kalra (3):
  net/octeontx2: add PTP base support
  net/octeontx2: add remaining PTP operations
  net/octeontx2: add Rx interrupts support

Jerin Jacob (16):
  net/octeontx2: add build and doc infrastructure
  net/octeontx2: add ethdev probe and remove
  net/octeontx2: add device init and uninit
  net/octeontx2: add devargs parsing functions
  net/octeontx2: handle device error interrupts
  net/octeontx2: add info get operation
  net/octeontx2: add device configure operation
  net/octeontx2: handle queue specific error interrupts
  net/octeontx2: add context debug utils
  net/octeontx2: add Rx queue setup and release
  net/octeontx2: add Tx queue setup and release
  net/octeontx2: add ptype support
  net/octeontx2: add Rx and Tx descriptor operations
  net/octeontx2: add Rx burst support
  net/octeontx2: add Rx vector version
  net/octeontx2: add Tx burst support

Kiran Kumar K (13):
  net/octeontx2: add register dump support
  net/octeontx2: add basic stats operation
  net/octeontx2: add extended stats operations
  net/octeontx2: introducing flow driver
  net/octeontx2: add flow utility functions
  net/octeontx2: add flow mbox utility functions
  net/octeontx2: add flow MCAM utility functions
  net/octeontx2: add flow parsing for outer layers
  net/octeontx2: add flow actions support
  net/octeontx2: add flow parse actions support
  net/octeontx2: add flow operations
  net/octeontx2: add flow destroy ops support
  net/octeontx2: add flow init and fini

Krzysztof Kanas (2):
  net/octeontx2: alloc and free TM HW resources
  net/octeontx2: enable Tx through traffic manager

Nithin Dabilpuram (9):
  net/octeontx2: add queue start and stop operations
  net/octeontx2: introduce traffic manager
  net/octeontx2: configure TM HW resources
  net/octeontx2: add queue info and pool supported operations
  net/octeontx2: add Rx multi segment version
  net/octeontx2: add Tx multi segment version
  net/octeontx2: add Tx vector version
  net/octeontx2: add device start operation
  net/octeontx2: add device stop and close operations

Sunil Kumar Kori (1):
  net/octeontx2: add unicast MAC filter

Vamsi Attunuru (9):
  net/octeontx2: add link stats operations
  net/octeontx2: add promiscuous and allmulticast mode
  net/octeontx2: add RSS support
  net/octeontx2: handle port reconfigure
  net/octeontx2: add module EEPROM dump
  net/octeontx2: add flow control support
  net/octeontx2: add FW version get operation
  net/octeontx2: add MTU set operation
  net/octeontx2: add link status set operations

Vivek Sharma (5):
  net/octeontx2: connect flow API to ethdev ops
  net/octeontx2: implement VLAN utility functions
  net/octeontx2: support VLAN offloads
  net/octeontx2: support VLAN filters
  net/octeontx2: support VLAN TPID and PVID for Tx

 MAINTAINERS                                   |    9 +
 config/common_base                            |    5 +
 doc/guides/nics/features/octeontx2.ini        |   50 +
 doc/guides/nics/features/octeontx2_vec.ini    |   46 +
 doc/guides/nics/features/octeontx2_vf.ini     |   42 +
 doc/guides/nics/index.rst                     |    1 +
 doc/guides/nics/octeontx2.rst                 |  306 +++
 doc/guides/platform/octeontx2.rst             |    3 +
 drivers/net/Makefile                          |    1 +
 drivers/net/meson.build                       |    6 +-
 drivers/net/octeontx2/Makefile                |   58 +
 drivers/net/octeontx2/meson.build             |   40 +
 drivers/net/octeontx2/otx2_ethdev.c           | 2017 +++++++++++++++++
 drivers/net/octeontx2/otx2_ethdev.h           |  531 +++++
 drivers/net/octeontx2/otx2_ethdev_debug.c     |  500 ++++
 drivers/net/octeontx2/otx2_ethdev_devargs.c   |  165 ++
 drivers/net/octeontx2/otx2_ethdev_irq.c       |  468 ++++
 drivers/net/octeontx2/otx2_ethdev_ops.c       |  461 ++++
 drivers/net/octeontx2/otx2_flow.c             |  981 ++++++++
 drivers/net/octeontx2/otx2_flow.h             |  390 ++++
 drivers/net/octeontx2/otx2_flow_ctrl.c        |  220 ++
 drivers/net/octeontx2/otx2_flow_parse.c       |  959 ++++++++
 drivers/net/octeontx2/otx2_flow_utils.c       |  910 ++++++++
 drivers/net/octeontx2/otx2_link.c             |  157 ++
 drivers/net/octeontx2/otx2_lookup.c           |  315 +++
 drivers/net/octeontx2/otx2_mac.c              |  149 ++
 drivers/net/octeontx2/otx2_ptp.c              |  273 +++
 drivers/net/octeontx2/otx2_rss.c              |  372 +++
 drivers/net/octeontx2/otx2_rx.c               |  411 ++++
 drivers/net/octeontx2/otx2_rx.h               |  333 +++
 drivers/net/octeontx2/otx2_stats.c            |  387 ++++
 drivers/net/octeontx2/otx2_tm.c               | 1396 ++++++++++++
 drivers/net/octeontx2/otx2_tm.h               |  153 ++
 drivers/net/octeontx2/otx2_tx.c               | 1033 +++++++++
 drivers/net/octeontx2/otx2_tx.h               |  370 +++
 drivers/net/octeontx2/otx2_vlan.c             | 1034 +++++++++
 .../octeontx2/rte_pmd_octeontx2_version.map   |    4 +
 mk/rte.app.mk                                 |    2 +
 38 files changed, 14557 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/nics/features/octeontx2.ini
 create mode 100644 doc/guides/nics/features/octeontx2_vec.ini
 create mode 100644 doc/guides/nics/features/octeontx2_vf.ini
 create mode 100644 doc/guides/nics/octeontx2.rst
 create mode 100644 drivers/net/octeontx2/Makefile
 create mode 100644 drivers/net/octeontx2/meson.build
 create mode 100644 drivers/net/octeontx2/otx2_ethdev.c
 create mode 100644 drivers/net/octeontx2/otx2_ethdev.h
 create mode 100644 drivers/net/octeontx2/otx2_ethdev_debug.c
 create mode 100644 drivers/net/octeontx2/otx2_ethdev_devargs.c
 create mode 100644 drivers/net/octeontx2/otx2_ethdev_irq.c
 create mode 100644 drivers/net/octeontx2/otx2_ethdev_ops.c
 create mode 100644 drivers/net/octeontx2/otx2_flow.c
 create mode 100644 drivers/net/octeontx2/otx2_flow.h
 create mode 100644 drivers/net/octeontx2/otx2_flow_ctrl.c
 create mode 100644 drivers/net/octeontx2/otx2_flow_parse.c
 create mode 100644 drivers/net/octeontx2/otx2_flow_utils.c
 create mode 100644 drivers/net/octeontx2/otx2_link.c
 create mode 100644 drivers/net/octeontx2/otx2_lookup.c
 create mode 100644 drivers/net/octeontx2/otx2_mac.c
 create mode 100644 drivers/net/octeontx2/otx2_ptp.c
 create mode 100644 drivers/net/octeontx2/otx2_rss.c
 create mode 100644 drivers/net/octeontx2/otx2_rx.c
 create mode 100644 drivers/net/octeontx2/otx2_rx.h
 create mode 100644 drivers/net/octeontx2/otx2_stats.c
 create mode 100644 drivers/net/octeontx2/otx2_tm.c
 create mode 100644 drivers/net/octeontx2/otx2_tm.h
 create mode 100644 drivers/net/octeontx2/otx2_tx.c
 create mode 100644 drivers/net/octeontx2/otx2_tx.h
 create mode 100644 drivers/net/octeontx2/otx2_vlan.c
 create mode 100644 drivers/net/octeontx2/rte_pmd_octeontx2_version.map
  

Comments

Jerin Jacob Kollanukkaran July 3, 2019, 8:22 p.m. UTC | #1
> -----Original Message-----
> From: jerinj@marvell.com <jerinj@marvell.com>
> Sent: Wednesday, July 3, 2019 2:12 PM
> To: dev@dpdk.org
> Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>
> Subject: [dpdk-dev] [PATCH v3 00/58] OCTEON TX2 Ethdev driver
> 
> From: Jerin Jacob <jerinj@marvell.com>
> 
> This patchset adds support for OCTEON TX2 ethdev driver.

Series applied to dpdk-next-net-mrvl/master. Thanks.
  
Ferruh Yigit July 4, 2019, 6:11 p.m. UTC | #2
On 7/3/2019 9:22 PM, Jerin Jacob Kollanukkaran wrote:
>> -----Original Message-----
>> From: jerinj@marvell.com <jerinj@marvell.com>
>> Sent: Wednesday, July 3, 2019 2:12 PM
>> To: dev@dpdk.org
>> Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>
>> Subject: [dpdk-dev] [PATCH v3 00/58] OCTEON TX2 Ethdev driver
>>
>> From: Jerin Jacob <jerinj@marvell.com>
>>
>> This patchset adds support for OCTEON TX2 ethdev driver.
> 
> Series applied to dpdk-next-net-mrvl/master. Thanks.
> 

Jerin's ack added for the patches that are not by maintainers.

Added following patch in next-net because of icc warnings:

diff --git a/drivers/net/octeontx2/Makefile b/drivers/net/octeontx2/Makefile
index 244b7445d..d08d3d854 100644
--- a/drivers/net/octeontx2/Makefile
+++ b/drivers/net/octeontx2/Makefile
@@ -14,13 +14,15 @@ CFLAGS += -I$(RTE_SDK)/drivers/common/octeontx2
 CFLAGS += -I$(RTE_SDK)/drivers/mempool/octeontx2
 CFLAGS += -I$(RTE_SDK)/drivers/net/octeontx2
 CFLAGS += -O3
+ifneq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)
 CFLAGS += -flax-vector-conversions
+endif

 ifneq ($(CONFIG_RTE_ARCH_64),y)
 CFLAGS += -Wno-int-to-pointer-cast
 CFLAGS += -Wno-pointer-to-int-cast
 ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)
-CFLAGS += -diag-disable 2259 -flax-vector-conversions
+CFLAGS += -diag-disable 2259
 endif