From patchwork Sun Jun 30 18:05:12 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jerin Jacob Kollanukkaran X-Patchwork-Id: 55676 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 5E6571B993; Sun, 30 Jun 2019 20:06:36 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id E7B031B965 for ; Sun, 30 Jun 2019 20:06:33 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x5UI54iq027147 for ; Sun, 30 Jun 2019 11:06:33 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=pfpt0818; bh=/z/DaDMCwe/jZGwh1/k9OWgrJI7VmTfu8BkPtTBpUMU=; b=Q6sykRsEeB2DuX2/DHq7WTb17yFreqJknBN+Mhzea0JE5sGiOsGO71dvzVBA5KWeIMCY VSjdDBpAyXyunh1OZpjVXX/wFUTwP8+EG0eYIAZIRuGDOSnLA+hVgVdrnEpruYsxoM/5 FifWg1iWtM1IxamRxg1p6MUQCEvR8wPw2u5/7/aYchfoYrmGpH/ijrUQvU/SXIIgOrll HuTZ+DGheLtbtCaSqObot4OXkDVvMC0bXqdTDVWmjJmSHKZls900QxK2PA9iRrkJ224G vI7gF1U9oQ8X9NxON1bLeaxhOm0fy4tXTZcaVn0g6jpLqflC6Cgmmas3x5Bk531dvAuZ zA== Received: from sc-exch03.marvell.com ([199.233.58.183]) by mx0a-0016f401.pphosted.com with ESMTP id 2te5bn4gd6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Sun, 30 Jun 2019 11:06:32 -0700 Received: from SC-EXCH01.marvell.com (10.93.176.81) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Sun, 30 Jun 2019 11:06:31 -0700 Received: from maili.marvell.com (10.93.176.43) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server id 15.0.1367.3 via Frontend Transport; Sun, 30 Jun 2019 11:06:31 -0700 Received: from jerin-lab.marvell.com (jerin-lab.marvell.com [10.28.34.14]) by maili.marvell.com (Postfix) with ESMTP id B48CB3F703F; Sun, 30 Jun 2019 11:06:30 -0700 (PDT) From: To: CC: Jerin Jacob Date: Sun, 30 Jun 2019 23:35:12 +0530 Message-ID: <20190630180609.36705-1-jerinj@marvell.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190602152434.23996-1-jerinj@marvell.com> References: <20190602152434.23996-1-jerinj@marvell.com> MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-06-30_08:, , signatures=0 Subject: [dpdk-dev] [PATCH v2 00/57] OCTEON TX2 Ethdev driver X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Jerin Jacob This patchset adds support for OCTEON TX2 ethdev driver. 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 (8): 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 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 | 302 +++ doc/guides/platform/octeontx2.rst | 3 + drivers/net/Makefile | 1 + drivers/net/meson.build | 6 +- drivers/net/octeontx2/Makefile | 55 + drivers/net/octeontx2/meson.build | 40 + drivers/net/octeontx2/otx2_ethdev.c | 1996 +++++++++++++++++ drivers/net/octeontx2/otx2_ethdev.h | 529 +++++ 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 | 947 ++++++++ drivers/net/octeontx2/otx2_flow_utils.c | 910 ++++++++ drivers/net/octeontx2/otx2_link.c | 108 + 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, 14466 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