From patchwork Thu Jan 9 11:00:14 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matan Azrad X-Patchwork-Id: 64336 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 0210EA04F9; Thu, 9 Jan 2020 12:00:43 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id B96501DC5D; Thu, 9 Jan 2020 12:00:42 +0100 (CET) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id C32E51DC4C for ; Thu, 9 Jan 2020 12:00:40 +0100 (CET) Received: from Internal Mail-Server by MTLPINE1 (envelope-from asafp@mellanox.com) with ESMTPS (AES256-SHA encrypted); 9 Jan 2020 13:00:36 +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 009B0ZLi013007; Thu, 9 Jan 2020 13:00:35 +0200 From: Matan Azrad To: Maxime Coquelin , Tiwei Bie , Zhihong Wang , Xiao Wang Cc: Ferruh Yigit , dev@dpdk.org, Thomas Monjalon , Andrew Rybchenko Date: Thu, 9 Jan 2020 11:00:14 +0000 Message-Id: <1578567617-3541-1-git-send-email-matan@mellanox.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1577287161-10321-1-git-send-email-matan@mellanox.com> References: <1577287161-10321-1-git-send-email-matan@mellanox.com> Subject: [dpdk-dev] [PATCH v2 0/3] Introduce new class for vDPA device drivers 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" As discussed and as described in RFC "[RFC] net: new vdpa PMD for Mellanox devices", new vDPA driver is going to be added for Mellanox devices - vDPA mlx5 and more. The only vDPA driver now is the IFC driver that is located in net directory. The IFC driver and the new vDPA mlx5 driver provide the vDPA ops introduced in librte_vhost and not the eth-dev ops. All the others drivers in net class provide the eth-dev ops. The set of features is also different. Create a new class for vDPA drivers and move IFC to this class. Later, all the new drivers that implement the vDPA ops will be added to the vDPA class. Also, a vDPA device driver features list was added to vDPA documentation. Please review the features list and the series. Later on, I'm going to send the vDPA mlx5 driver. Thanks. v2: Apply comments from Maxime Coquelin, Andrew Rybchenko and Tiwei Bie. Matan Azrad (3): drivers: introduce vDPA class doc: add vDPA feature table drivers: move ifc driver to the vDPA class MAINTAINERS | 19 +- doc/guides/conf.py | 5 + doc/guides/index.rst | 1 + doc/guides/nics/features/ifcvf.ini | 8 - doc/guides/nics/ifc.rst | 106 --- doc/guides/nics/index.rst | 1 - doc/guides/vdpadevs/features/default.ini | 50 ++ doc/guides/vdpadevs/features/ifcvf.ini | 8 + doc/guides/vdpadevs/features_overview.rst | 74 ++ doc/guides/vdpadevs/ifc.rst | 106 +++ doc/guides/vdpadevs/index.rst | 15 + drivers/Makefile | 2 + drivers/meson.build | 1 + drivers/net/Makefile | 3 - drivers/net/ifc/Makefile | 34 - drivers/net/ifc/base/ifcvf.c | 329 -------- drivers/net/ifc/base/ifcvf.h | 162 ---- drivers/net/ifc/base/ifcvf_osdep.h | 52 -- drivers/net/ifc/ifcvf_vdpa.c | 1280 ----------------------------- drivers/net/ifc/meson.build | 9 - drivers/net/ifc/rte_pmd_ifc_version.map | 3 - drivers/net/meson.build | 1 - drivers/vdpa/Makefile | 14 + drivers/vdpa/ifc/Makefile | 34 + drivers/vdpa/ifc/base/ifcvf.c | 329 ++++++++ drivers/vdpa/ifc/base/ifcvf.h | 162 ++++ drivers/vdpa/ifc/base/ifcvf_osdep.h | 52 ++ drivers/vdpa/ifc/ifcvf_vdpa.c | 1280 +++++++++++++++++++++++++++++ drivers/vdpa/ifc/meson.build | 9 + drivers/vdpa/ifc/rte_pmd_ifc_version.map | 3 + drivers/vdpa/meson.build | 8 + 31 files changed, 2164 insertions(+), 1996 deletions(-) delete mode 100644 doc/guides/nics/features/ifcvf.ini delete mode 100644 doc/guides/nics/ifc.rst create mode 100644 doc/guides/vdpadevs/features/default.ini create mode 100644 doc/guides/vdpadevs/features/ifcvf.ini create mode 100644 doc/guides/vdpadevs/features_overview.rst create mode 100644 doc/guides/vdpadevs/ifc.rst create mode 100644 doc/guides/vdpadevs/index.rst delete mode 100644 drivers/net/ifc/Makefile delete mode 100644 drivers/net/ifc/base/ifcvf.c delete mode 100644 drivers/net/ifc/base/ifcvf.h delete mode 100644 drivers/net/ifc/base/ifcvf_osdep.h delete mode 100644 drivers/net/ifc/ifcvf_vdpa.c delete mode 100644 drivers/net/ifc/meson.build delete mode 100644 drivers/net/ifc/rte_pmd_ifc_version.map create mode 100644 drivers/vdpa/Makefile create mode 100644 drivers/vdpa/ifc/Makefile create mode 100644 drivers/vdpa/ifc/base/ifcvf.c create mode 100644 drivers/vdpa/ifc/base/ifcvf.h create mode 100644 drivers/vdpa/ifc/base/ifcvf_osdep.h create mode 100644 drivers/vdpa/ifc/ifcvf_vdpa.c create mode 100644 drivers/vdpa/ifc/meson.build create mode 100644 drivers/vdpa/ifc/rte_pmd_ifc_version.map create mode 100644 drivers/vdpa/meson.build