From patchwork Wed Jan 29 10:08:56 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matan Azrad X-Patchwork-Id: 65288 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 74DFEA0531; Wed, 29 Jan 2020 11:09:19 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 082A01BFB0; Wed, 29 Jan 2020 11:09:18 +0100 (CET) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id 1F2361BFAF for ; Wed, 29 Jan 2020 11:09:15 +0100 (CET) Received: from Internal Mail-Server by MTLPINE1 (envelope-from asafp@mellanox.com) with ESMTPS (AES256-SHA encrypted); 29 Jan 2020 12:09:11 +0200 Received: from pegasus07.mtr.labs.mlnx (pegasus07.mtr.labs.mlnx [10.210.16.112]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id 00TA9BHG032108; Wed, 29 Jan 2020 12:09:11 +0200 From: Matan Azrad To: dev@dpdk.org, Viacheslav Ovsiienko Cc: Maxime Coquelin Date: Wed, 29 Jan 2020 10:08:56 +0000 Message-Id: <1580292549-27439-1-git-send-email-matan@mellanox.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1579539790-3882-1-git-send-email-matan@mellanox.com> References: <1579539790-3882-1-git-send-email-matan@mellanox.com> Subject: [dpdk-dev] [PATCH v2 00/13] Introduce mlx5 vDPA 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" v2: - Reorder patches for 2 serieses - this is the seccond part of the previous series splitting. - Fix spelling and per patch complition issues. - moved to use claim_zero instead of pure asserts. Matan Azrad (13): drivers: introduce mlx5 vDPA driver vdpa/mlx5: support queues number operation vdpa/mlx5: support features get operations vdpa/mlx5: prepare memory regions vdpa/mlx5: prepare HW queues vdpa/mlx5: prepare virtio queues vdpa/mlx5: support stateless offloads vdpa/mlx5: add basic steering configurations vdpa/mlx5: support queue state operation vdpa/mlx5: map doorbell vdpa/mlx5: support live migration vdpa/mlx5: support close and config operations vdpa/mlx5: disable ROCE MAINTAINERS | 7 + config/common_base | 5 + doc/guides/rel_notes/release_20_02.rst | 5 + doc/guides/vdpadevs/features/mlx5.ini | 27 ++ doc/guides/vdpadevs/index.rst | 1 + doc/guides/vdpadevs/mlx5.rst | 111 +++++ drivers/common/Makefile | 2 +- drivers/common/mlx5/Makefile | 17 +- drivers/common/mlx5/mlx5_prm.h | 4 + drivers/meson.build | 8 +- drivers/vdpa/Makefile | 2 + drivers/vdpa/meson.build | 3 +- drivers/vdpa/mlx5/Makefile | 43 ++ drivers/vdpa/mlx5/meson.build | 34 ++ drivers/vdpa/mlx5/mlx5_vdpa.c | 563 ++++++++++++++++++++++++ drivers/vdpa/mlx5/mlx5_vdpa.h | 303 +++++++++++++ drivers/vdpa/mlx5/mlx5_vdpa_event.c | 399 +++++++++++++++++ drivers/vdpa/mlx5/mlx5_vdpa_lm.c | 130 ++++++ drivers/vdpa/mlx5/mlx5_vdpa_mem.c | 346 +++++++++++++++ drivers/vdpa/mlx5/mlx5_vdpa_steer.c | 283 ++++++++++++ drivers/vdpa/mlx5/mlx5_vdpa_utils.h | 20 + drivers/vdpa/mlx5/mlx5_vdpa_virtq.c | 388 ++++++++++++++++ drivers/vdpa/mlx5/rte_pmd_mlx5_vdpa_version.map | 3 + mk/rte.app.mk | 15 +- 24 files changed, 2702 insertions(+), 17 deletions(-) create mode 100644 doc/guides/vdpadevs/features/mlx5.ini create mode 100644 doc/guides/vdpadevs/mlx5.rst create mode 100644 drivers/vdpa/mlx5/Makefile create mode 100644 drivers/vdpa/mlx5/meson.build create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa.c create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa.h create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa_event.c create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa_lm.c create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa_mem.c create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa_steer.c create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa_utils.h create mode 100644 drivers/vdpa/mlx5/mlx5_vdpa_virtq.c create mode 100644 drivers/vdpa/mlx5/rte_pmd_mlx5_vdpa_version.map