From patchwork Sun Jul 12 20:58:41 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ori Kam X-Patchwork-Id: 73838 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id E81E0A052A; Sun, 12 Jul 2020 22:59:22 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 5AB961D453; Sun, 12 Jul 2020 22:59:22 +0200 (CEST) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id CCF4F1D381 for ; Sun, 12 Jul 2020 22:59:20 +0200 (CEST) Received: from Internal Mail-Server by MTLPINE1 (envelope-from orika@mellanox.com) with SMTP; 12 Jul 2020 23:59:15 +0300 Received: from pegasus04.mtr.labs.mlnx. (pegasus04.mtr.labs.mlnx [10.210.16.126]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id 06CKxFFt025997; Sun, 12 Jul 2020 23:59:15 +0300 From: Ori Kam To: jerinj@marvell.com, xiang.w.wang@intel.com, matan@mellanox.com, viacheslavo@mellanox.com Cc: guyk@marvell.com, dev@dpdk.org, pbhagavatula@marvell.com, shahafs@mellanox.com, hemant.agrawal@nxp.com, opher@mellanox.com, alexr@mellanox.com, dovrat@marvell.com, pkapoor@marvell.com, nipun.gupta@nxp.com, bruce.richardson@intel.com, yang.a.hong@intel.com, harry.chang@intel.com, gu.jian1@zte.com.cn, shanjiangh@chinatelecom.cn, zhangy.yun@chinatelecom.cn, lixingfu@huachentel.com, wushuai@inspur.com, yuyingxia@yxlink.com, fanchenggang@sunyainfo.com, davidfgao@tencent.com, liuzhong1@chinaunicom.cn, zhaoyong11@huawei.com, oc@yunify.com, jim@netgate.com, hongjun.ni@intel.com, deri@ntop.org, fc@napatech.com, arthur.su@lionic.com, thomas@monjalon.net, orika@mellanox.com, rasland@mellanox.com Date: Sun, 12 Jul 2020 20:58:41 +0000 Message-Id: <1594587541-110442-1-git-send-email-orika@mellanox.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1593941027-86651-1-git-send-email-orika@mellanox.com> References: <1593941027-86651-1-git-send-email-orika@mellanox.com> Subject: [dpdk-dev] [PATCH v2 00/20] add Mellanox RegEx PMD 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" This patch series introduce the Mellanox BF2 RegEx PMD. Mellanox BF2 RegEx PMD implement the API defined in the regexdev lib [1]. This PMD allows a DPDK application to offload the RegEx functionality to Mellanox BF2 RegEx engine. [1] https://patches.dpdk.org/cover/72792/ v2: * Rebase. * Add release notes. Francis Kelly (1): regex/mlx5: add program rules support Ori Kam (9): regex/mlx5: add probe function common/mlx5: add rxp database set cmd common/mlx5: add write and read RXP registers regex/mlx5: add engine status check regex/mlx5: add get info function regex/mlx5: add configure function regex/mlx5: add completion queue creation regex/mlx5: add send queue support regex/mlx5: add start stop functions Parav Pandit (1): regex/mlx5: add RXP register definitions Yuval Avnery (9): regex/mlx5: add RegEx PMD layer and mlx5 driver regex/mlx5: add log utils common/mlx5: add MMO and regexp structs/opcodes common/mlx5: add mlx5 regex command structs common/mlx5: add support for regex capability query common/mlx5: add match tuple hw layout regex/mlx5: fastpath setup regex/mlx5: add enqueue implementation regex/mlx5: implement dequeue function MAINTAINERS | 12 + config/common_base | 5 + doc/guides/index.rst | 1 + doc/guides/regexdevs/features/default.ini | 17 + doc/guides/regexdevs/features/mlx5.ini | 10 + doc/guides/regexdevs/features_overview.rst | 118 ++ doc/guides/regexdevs/index.rst | 15 + doc/guides/regexdevs/mlx5.rst | 95 ++ doc/guides/regexdevs/overview_feature_table.txt | 105 ++ doc/guides/rel_notes/release_20_08.rst | 5 + drivers/Makefile | 2 + drivers/common/Makefile | 2 +- drivers/common/mlx5/Makefile | 4 +- drivers/common/mlx5/mlx5_devx_cmds.c | 185 +++ drivers/common/mlx5/mlx5_devx_cmds.h | 20 +- drivers/common/mlx5/mlx5_prm.h | 142 ++- drivers/common/mlx5/rte_common_mlx5_version.map | 5 + drivers/meson.build | 3 +- drivers/regex/Makefile | 8 + drivers/regex/meson.build | 9 + drivers/regex/mlx5/Makefile | 41 + drivers/regex/mlx5/meson.build | 35 + drivers/regex/mlx5/mlx5_regex.c | 314 ++++++ drivers/regex/mlx5/mlx5_regex.h | 110 ++ drivers/regex/mlx5/mlx5_regex_control.c | 368 ++++++ drivers/regex/mlx5/mlx5_regex_fastpath.c | 434 ++++++++ drivers/regex/mlx5/mlx5_regex_utils.h | 19 + drivers/regex/mlx5/mlx5_rxp.c | 1236 +++++++++++++++++++++ drivers/regex/mlx5/mlx5_rxp.h | 138 +++ drivers/regex/mlx5/mlx5_rxp_csrs.h | 338 ++++++ drivers/regex/mlx5/rte_pmd_mlx5_regex_version.map | 3 + mk/rte.app.mk | 6 +- 32 files changed, 3796 insertions(+), 9 deletions(-) create mode 100644 doc/guides/regexdevs/features/default.ini create mode 100644 doc/guides/regexdevs/features/mlx5.ini create mode 100644 doc/guides/regexdevs/features_overview.rst create mode 100644 doc/guides/regexdevs/index.rst create mode 100644 doc/guides/regexdevs/mlx5.rst create mode 100644 doc/guides/regexdevs/overview_feature_table.txt create mode 100644 drivers/regex/Makefile create mode 100644 drivers/regex/meson.build create mode 100644 drivers/regex/mlx5/Makefile create mode 100644 drivers/regex/mlx5/meson.build create mode 100644 drivers/regex/mlx5/mlx5_regex.c create mode 100644 drivers/regex/mlx5/mlx5_regex.h create mode 100644 drivers/regex/mlx5/mlx5_regex_control.c create mode 100644 drivers/regex/mlx5/mlx5_regex_fastpath.c create mode 100644 drivers/regex/mlx5/mlx5_regex_utils.h create mode 100644 drivers/regex/mlx5/mlx5_rxp.c create mode 100644 drivers/regex/mlx5/mlx5_rxp.h create mode 100644 drivers/regex/mlx5/mlx5_rxp_csrs.h create mode 100644 drivers/regex/mlx5/rte_pmd_mlx5_regex_version.map