Message ID | 20200928164245.84997-1-bruce.richardson@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> 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 63007A04DB; Mon, 28 Sep 2020 18:43:01 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 96DEC1D5D1; Mon, 28 Sep 2020 18:42:59 +0200 (CEST) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id 7174D1BCE5 for <dev@dpdk.org>; Mon, 28 Sep 2020 18:42:57 +0200 (CEST) IronPort-SDR: Giect0SIAAlfijCHTWr+YT8gWvYsTujk2Icy4wJkhnMK3G/oScCP1C3RY1RwxWJYb7+/i4rnP2 YG+ewtszOzdQ== X-IronPort-AV: E=McAfee;i="6000,8403,9758"; a="223619733" X-IronPort-AV: E=Sophos;i="5.77,313,1596524400"; d="scan'208";a="223619733" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Sep 2020 09:42:55 -0700 IronPort-SDR: WOQtH4Yx/9jHAkMnPO5k6p5zwQ7p7vyR/ZUdyy6+NaBPsIFH3kOnNQTfSzu/CscwcCAj7JIjqt pFHk+GvUo+ug== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,313,1596524400"; d="scan'208";a="338250438" Received: from silpixa00399126.ir.intel.com ([10.237.222.4]) by fmsmga004.fm.intel.com with ESMTP; 28 Sep 2020 09:42:53 -0700 From: Bruce Richardson <bruce.richardson@intel.com> To: dev@dpdk.org Cc: patrick.fu@intel.com, Bruce Richardson <bruce.richardson@intel.com> Date: Mon, 28 Sep 2020 17:42:20 +0100 Message-Id: <20200928164245.84997-1-bruce.richardson@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200721095140.719297-1-bruce.richardson@intel.com> References: <20200721095140.719297-1-bruce.richardson@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v4 00/25] raw/ioat: enhancements and new hardware support X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series |
raw/ioat: enhancements and new hardware support
|
|
Message
Bruce Richardson
Sept. 28, 2020, 4:42 p.m. UTC
This patchset adds some small enhancements, some rework and also support for new hardware to the ioat rawdev driver. Most rework and enhancements are largely self-explanatory from the individual patches. The new hardware support is for the Intel(R) DSA accelerator which will be present in future Intel processors. A description of this new hardware is covered in [1]. Functions specific to the new hardware use the "idxd" prefix, for consistency with the kernel driver. [1] https://01.org/blogs/2019/introducing-intel-data-streaming-accelerator --- V4: * Fixed compile with FreeBSD clang * Improved autotests for fill operation V3: * More doc updates including release note updates throughout the set * Added in fill operation * Added in fix for missing close operation * Added in fix for doc building to ensure ioat is in in the index V2: * Included documentation additions in the set * Split off the rawdev unit test changes to a separate patchset for easier review * General code improvements and cleanups Bruce Richardson (19): doc/api: add ioat driver to index raw/ioat: enable use from C++ code raw/ioat: include extra info in error messages raw/ioat: split header for readability raw/ioat: rename functions to be operation-agnostic raw/ioat: add separate API for fence call raw/ioat: make the HW register spec private raw/ioat: add skeleton for VFIO/UIO based DSA device raw/ioat: include example configuration script raw/ioat: create rawdev instances on idxd PCI probe raw/ioat: add datapath data structures for idxd devices raw/ioat: add configure function for idxd devices raw/ioat: add start and stop functions for idxd devices raw/ioat: add data path for idxd devices raw/ioat: add info function for idxd devices raw/ioat: create separate statistics structure raw/ioat: move xstats functions to common file raw/ioat: add xstats tracking for idxd devices raw/ioat: clean up use of common test function Cheng Jiang (1): raw/ioat: add a flag to control copying handle parameters Kevin Laatz (5): raw/ioat: fix missing close function usertools/dpdk-devbind.py: add support for DSA HW raw/ioat: add vdev probe for DSA/idxd devices raw/ioat: create rawdev instances for idxd vdevs raw/ioat: add fill operation doc/api/doxy-api-index.md | 1 + doc/api/doxy-api.conf.in | 1 + doc/guides/rawdevs/ioat.rst | 163 +++-- doc/guides/rel_notes/release_20_11.rst | 23 + doc/guides/sample_app_ug/ioat.rst | 8 +- drivers/raw/ioat/dpdk_idxd_cfg.py | 79 +++ drivers/raw/ioat/idxd_pci.c | 345 ++++++++++ drivers/raw/ioat/idxd_vdev.c | 233 +++++++ drivers/raw/ioat/ioat_common.c | 244 +++++++ drivers/raw/ioat/ioat_private.h | 82 +++ drivers/raw/ioat/ioat_rawdev.c | 92 +-- drivers/raw/ioat/ioat_rawdev_test.c | 130 +++- .../raw/ioat/{rte_ioat_spec.h => ioat_spec.h} | 90 ++- drivers/raw/ioat/meson.build | 15 +- drivers/raw/ioat/rte_ioat_rawdev.h | 221 +++---- drivers/raw/ioat/rte_ioat_rawdev_fns.h | 595 ++++++++++++++++++ examples/ioat/ioatfwd.c | 16 +- lib/librte_eal/include/rte_common.h | 1 + usertools/dpdk-devbind.py | 4 +- 19 files changed, 1989 insertions(+), 354 deletions(-) create mode 100755 drivers/raw/ioat/dpdk_idxd_cfg.py create mode 100644 drivers/raw/ioat/idxd_pci.c create mode 100644 drivers/raw/ioat/idxd_vdev.c create mode 100644 drivers/raw/ioat/ioat_common.c create mode 100644 drivers/raw/ioat/ioat_private.h rename drivers/raw/ioat/{rte_ioat_spec.h => ioat_spec.h} (74%) create mode 100644 drivers/raw/ioat/rte_ioat_rawdev_fns.h
Comments
On 9/28/2020 5:42 PM, Bruce Richardson wrote: > This patchset adds some small enhancements, some rework and also support > for new hardware to the ioat rawdev driver. Most rework and enhancements > are largely self-explanatory from the individual patches. > > The new hardware support is for the Intel(R) DSA accelerator which will be > present in future Intel processors. A description of this new hardware is > covered in [1]. Functions specific to the new hardware use the "idxd" > prefix, for consistency with the kernel driver. > > [1] https://01.org/blogs/2019/introducing-intel-data-streaming-accelerator > > --- > V4: > * Fixed compile with FreeBSD clang > * Improved autotests for fill operation > > V3: > * More doc updates including release note updates throughout the set > * Added in fill operation > * Added in fix for missing close operation > * Added in fix for doc building to ensure ioat is in in the index > > V2: > * Included documentation additions in the set > * Split off the rawdev unit test changes to a separate patchset for easier > review > * General code improvements and cleanups > > Bruce Richardson (19): > doc/api: add ioat driver to index > raw/ioat: enable use from C++ code > raw/ioat: include extra info in error messages > raw/ioat: split header for readability > raw/ioat: rename functions to be operation-agnostic > raw/ioat: add separate API for fence call > raw/ioat: make the HW register spec private > raw/ioat: add skeleton for VFIO/UIO based DSA device > raw/ioat: include example configuration script > raw/ioat: create rawdev instances on idxd PCI probe > raw/ioat: add datapath data structures for idxd devices > raw/ioat: add configure function for idxd devices > raw/ioat: add start and stop functions for idxd devices > raw/ioat: add data path for idxd devices > raw/ioat: add info function for idxd devices > raw/ioat: create separate statistics structure > raw/ioat: move xstats functions to common file > raw/ioat: add xstats tracking for idxd devices > raw/ioat: clean up use of common test function > > Cheng Jiang (1): > raw/ioat: add a flag to control copying handle parameters > > Kevin Laatz (5): > raw/ioat: fix missing close function > usertools/dpdk-devbind.py: add support for DSA HW > raw/ioat: add vdev probe for DSA/idxd devices > raw/ioat: create rawdev instances for idxd vdevs > raw/ioat: add fill operation > > doc/api/doxy-api-index.md | 1 + > doc/api/doxy-api.conf.in | 1 + > doc/guides/rawdevs/ioat.rst | 163 +++-- > doc/guides/rel_notes/release_20_11.rst | 23 + > doc/guides/sample_app_ug/ioat.rst | 8 +- > drivers/raw/ioat/dpdk_idxd_cfg.py | 79 +++ > drivers/raw/ioat/idxd_pci.c | 345 ++++++++++ > drivers/raw/ioat/idxd_vdev.c | 233 +++++++ > drivers/raw/ioat/ioat_common.c | 244 +++++++ > drivers/raw/ioat/ioat_private.h | 82 +++ > drivers/raw/ioat/ioat_rawdev.c | 92 +-- > drivers/raw/ioat/ioat_rawdev_test.c | 130 +++- > .../raw/ioat/{rte_ioat_spec.h => ioat_spec.h} | 90 ++- > drivers/raw/ioat/meson.build | 15 +- > drivers/raw/ioat/rte_ioat_rawdev.h | 221 +++---- > drivers/raw/ioat/rte_ioat_rawdev_fns.h | 595 ++++++++++++++++++ > examples/ioat/ioatfwd.c | 16 +- > lib/librte_eal/include/rte_common.h | 1 + > usertools/dpdk-devbind.py | 4 +- > 19 files changed, 1989 insertions(+), 354 deletions(-) > create mode 100755 drivers/raw/ioat/dpdk_idxd_cfg.py > create mode 100644 drivers/raw/ioat/idxd_pci.c > create mode 100644 drivers/raw/ioat/idxd_vdev.c > create mode 100644 drivers/raw/ioat/ioat_common.c > create mode 100644 drivers/raw/ioat/ioat_private.h > rename drivers/raw/ioat/{rte_ioat_spec.h => ioat_spec.h} (74%) > create mode 100644 drivers/raw/ioat/rte_ioat_rawdev_fns.h Series Acked-by: Radu Nicolau <radu.nicolau@intel.com>
> This patchset adds some small enhancements, some rework and also support > for new hardware to the ioat rawdev driver. Most rework and enhancements > are largely self-explanatory from the individual patches. Another ioat patch has been merged before. Please could you rebase?
On Tue, Oct 06, 2020 at 11:10:09PM +0200, Thomas Monjalon wrote: > > This patchset adds some small enhancements, some rework and also support > > for new hardware to the ioat rawdev driver. Most rework and enhancements > > are largely self-explanatory from the individual patches. > > Another ioat patch has been merged before. > Please could you rebase? > Absolutely, will do.