From patchwork Fri Aug 27 17:20:35 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kevin Laatz X-Patchwork-Id: 97470 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9F0A2A0548; Fri, 27 Aug 2021 19:21:11 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 28EEF4067C; Fri, 27 Aug 2021 19:21:11 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mails.dpdk.org (Postfix) with ESMTP id 6FBC140150 for ; Fri, 27 Aug 2021 19:21:09 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10089"; a="198235886" X-IronPort-AV: E=Sophos;i="5.84,357,1620716400"; d="scan'208";a="198235886" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Aug 2021 10:21:08 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,357,1620716400"; d="scan'208";a="445009323" Received: from silpixa00401122.ir.intel.com ([10.55.128.10]) by orsmga002.jf.intel.com with ESMTP; 27 Aug 2021 10:21:06 -0700 From: Kevin Laatz To: dev@dpdk.org Cc: bruce.richardson@intel.com, fengchengwen@huawei.com, jerinj@marvell.com, conor.walsh@intel.com, Kevin Laatz Date: Fri, 27 Aug 2021 17:20:35 +0000 Message-Id: <20210827172048.558704-1-kevin.laatz@intel.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH 00/13] add dmadev driver for idxd devices X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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 patchset adds a dmadev driver and associated documentation to support Intel Data Streaming Accelerator devices. This driver is intended to ultimately replace the current IDXD part of the IOAT rawdev driver. NOTE: This patchset has several dependencies: - v16 of the dmadev set [1] - rfc of the dmadev test suite [2] [1] http://patches.dpdk.org/project/dpdk/list/?series=18391 [2] http://patches.dpdk.org/project/dpdk/list/?series=18477 Bruce Richardson (1): raw/ioat: only build if dmadev not present Conor Walsh (1): dma/idxd: move dpdk_idxd_cfg.py from raw to dma Kevin Laatz (11): doc: initial commit for dmadevs section dma/idxd: add skeleton for VFIO based DSA device dma/idxd: add bus device probing dma/idxd: create dmadev instances on bus probe dma/idxd: create dmadev instances on pci probe dma/idxd: add datapath structures dma/idxd: add configure and info_get functions dma/idxd: add start and stop functions for pci devices dma/idxd: add data-path job submission functions dma/idxd: add data-path job completion functions dma/idxd: add operation statistic tracking MAINTAINERS | 10 + doc/guides/dmadevs/idxd.rst | 255 +++++++++++ doc/guides/dmadevs/index.rst | 14 + doc/guides/index.rst | 1 + doc/guides/rel_notes/release_21_11.rst | 5 + drivers/dma/idxd/dpdk_idxd_cfg.py | 117 +++++ drivers/dma/idxd/idxd_bus.c | 375 ++++++++++++++++ drivers/dma/idxd/idxd_common.c | 571 +++++++++++++++++++++++++ drivers/dma/idxd/idxd_hw_defs.h | 130 ++++++ drivers/dma/idxd/idxd_internal.h | 102 +++++ drivers/dma/idxd/idxd_pci.c | 372 ++++++++++++++++ drivers/dma/idxd/meson.build | 10 + drivers/dma/idxd/version.map | 3 + drivers/dma/meson.build | 1 + drivers/raw/ioat/dpdk_idxd_cfg.py | 118 +---- drivers/raw/ioat/meson.build | 23 +- 16 files changed, 1987 insertions(+), 120 deletions(-) create mode 100644 doc/guides/dmadevs/idxd.rst create mode 100644 doc/guides/dmadevs/index.rst create mode 100755 drivers/dma/idxd/dpdk_idxd_cfg.py create mode 100644 drivers/dma/idxd/idxd_bus.c create mode 100644 drivers/dma/idxd/idxd_common.c create mode 100644 drivers/dma/idxd/idxd_hw_defs.h create mode 100644 drivers/dma/idxd/idxd_internal.h create mode 100644 drivers/dma/idxd/idxd_pci.c create mode 100644 drivers/dma/idxd/meson.build create mode 100644 drivers/dma/idxd/version.map mode change 100755 => 120000 drivers/raw/ioat/dpdk_idxd_cfg.py