DPDK patches and discussions
 help / color / mirror / Atom feed
From: Bruce Richardson <bruce.richardson@intel.com>
To: dev@dpdk.org
Cc: patrick.fu@intel.com,
	Bruce Richardson <bruce.richardson@intel.com>,
	Kevin Laatz <kevin.laatz@intel.com>
Subject: [dpdk-dev] [PATCH v4 11/25] raw/ioat: add skeleton for VFIO/UIO based DSA device
Date: Mon, 28 Sep 2020 17:42:31 +0100
Message-ID: <20200928164245.84997-12-bruce.richardson@intel.com> (raw)
In-Reply-To: <20200928164245.84997-1-bruce.richardson@intel.com>

Add in the basic probe/remove skeleton code for DSA devices which are bound
directly to vfio or uio driver. The kernel module for supporting these uses
the "idxd" name, so that name is used as function and file prefix to avoid
conflict with existing "ioat" prefixed functions.

Since we are adding new files to the driver and there will be common
definitions shared between the various files, we create a new internal
header file ioat_private.h to hold common macros and function prototypes.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Kevin Laatz <kevin.laatz@intel.com>
---
 doc/guides/rawdevs/ioat.rst     | 69 ++++++++++-----------------------
 drivers/raw/ioat/idxd_pci.c     | 56 ++++++++++++++++++++++++++
 drivers/raw/ioat/ioat_private.h | 27 +++++++++++++
 drivers/raw/ioat/ioat_rawdev.c  |  9 +----
 drivers/raw/ioat/meson.build    |  6 ++-
 5 files changed, 108 insertions(+), 59 deletions(-)
 create mode 100644 drivers/raw/ioat/idxd_pci.c
 create mode 100644 drivers/raw/ioat/ioat_private.h

diff --git a/doc/guides/rawdevs/ioat.rst b/doc/guides/rawdevs/ioat.rst
index 71bca0b28f..b898f98d5f 100644
--- a/doc/guides/rawdevs/ioat.rst
+++ b/doc/guides/rawdevs/ioat.rst
@@ -3,10 +3,12 @@
 
 .. include:: <isonum.txt>
 
-IOAT Rawdev Driver for Intel\ |reg| QuickData Technology
-======================================================================
+IOAT Rawdev Driver
+===================
 
 The ``ioat`` rawdev driver provides a poll-mode driver (PMD) for Intel\ |reg|
+Data Streaming Accelerator `(Intel DSA)
+<https://01.org/blogs/2019/introducing-intel-data-streaming-accelerator>`_ and for Intel\ |reg|
 QuickData Technology, part of Intel\ |reg| I/O Acceleration Technology
 `(Intel I/OAT)
 <https://www.intel.com/content/www/us/en/wireless-network/accel-technology.html>`_.
@@ -17,61 +19,30 @@ be done by software, freeing up CPU cycles for other tasks.
 Hardware Requirements
 ----------------------
 
-On Linux, the presence of an Intel\ |reg| QuickData Technology hardware can
-be detected by checking the output of the ``lspci`` command, where the
-hardware will be often listed as "Crystal Beach DMA" or "CBDMA". For
-example, on a system with Intel\ |reg| Xeon\ |reg| CPU E5-2699 v4 @2.20GHz,
-lspci shows:
-
-.. code-block:: console
-
-  # lspci | grep DMA
-  00:04.0 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Crystal Beach DMA Channel 0 (rev 01)
-  00:04.1 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Crystal Beach DMA Channel 1 (rev 01)
-  00:04.2 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Crystal Beach DMA Channel 2 (rev 01)
-  00:04.3 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Crystal Beach DMA Channel 3 (rev 01)
-  00:04.4 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Crystal Beach DMA Channel 4 (rev 01)
-  00:04.5 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Crystal Beach DMA Channel 5 (rev 01)
-  00:04.6 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Crystal Beach DMA Channel 6 (rev 01)
-  00:04.7 System peripheral: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Crystal Beach DMA Channel 7 (rev 01)
-
-On a system with Intel\ |reg| Xeon\ |reg| Gold 6154 CPU @ 3.00GHz, lspci
-shows:
-
-.. code-block:: console
-
-  # lspci | grep DMA
-  00:04.0 System peripheral: Intel Corporation Sky Lake-E CBDMA Registers (rev 04)
-  00:04.1 System peripheral: Intel Corporation Sky Lake-E CBDMA Registers (rev 04)
-  00:04.2 System peripheral: Intel Corporation Sky Lake-E CBDMA Registers (rev 04)
-  00:04.3 System peripheral: Intel Corporation Sky Lake-E CBDMA Registers (rev 04)
-  00:04.4 System peripheral: Intel Corporation Sky Lake-E CBDMA Registers (rev 04)
-  00:04.5 System peripheral: Intel Corporation Sky Lake-E CBDMA Registers (rev 04)
-  00:04.6 System peripheral: Intel Corporation Sky Lake-E CBDMA Registers (rev 04)
-  00:04.7 System peripheral: Intel Corporation Sky Lake-E CBDMA Registers (rev 04)
-
+The ``dpdk-devbind.py`` script, included with DPDK,
+can be used to show the presence of supported hardware.
+Running ``dpdk-devbind.py --status-dev misc`` will show all the miscellaneous,
+or rawdev-based devices on the system.
+For Intel\ |reg| QuickData Technology devices, the hardware will be often listed as "Crystal Beach DMA",
+or "CBDMA".
+For Intel\ |reg| DSA devices, they are currently (at time of writing) appearing as devices with type "0b25",
+due to the absence of pci-id database entries for them at this point.
 
 Compilation
 ------------
 
-For builds done with ``make``, the driver compilation is enabled by the
-``CONFIG_RTE_LIBRTE_PMD_IOAT_RAWDEV`` build configuration option. This is
-enabled by default in builds for x86 platforms, and disabled in other
-configurations.
-
-For builds using ``meson`` and ``ninja``, the driver will be built when the
-target platform is x86-based.
+For builds using ``meson`` and ``ninja``, the driver will be built when the target platform is x86-based.
+No additional compilation steps are necessary.
 
 Device Setup
 -------------
 
-The Intel\ |reg| QuickData Technology HW devices will need to be bound to a
-user-space IO driver for use. The script ``dpdk-devbind.py`` script
-included with DPDK can be used to view the state of the devices and to bind
-them to a suitable DPDK-supported kernel driver. When querying the status
-of the devices, they will appear under the category of "Misc (rawdev)
-devices", i.e. the command ``dpdk-devbind.py --status-dev misc`` can be
-used to see the state of those devices alone.
+The HW devices to be used will need to be bound to a user-space IO driver for use.
+The ``dpdk-devbind.py`` script can be used to view the state of the devices
+and to bind them to a suitable DPDK-supported kernel driver, such as ``vfio-pci``.
+For example::
+
+	$ dpdk-devbind.py -b vfio-pci 00:04.0 00:04.1
 
 Device Probing and Initialization
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/drivers/raw/ioat/idxd_pci.c b/drivers/raw/ioat/idxd_pci.c
new file mode 100644
index 0000000000..1a30e9c316
--- /dev/null
+++ b/drivers/raw/ioat/idxd_pci.c
@@ -0,0 +1,56 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2020 Intel Corporation
+ */
+
+#include <rte_bus_pci.h>
+
+#include "ioat_private.h"
+
+#define IDXD_VENDOR_ID		0x8086
+#define IDXD_DEVICE_ID_SPR	0x0B25
+
+#define IDXD_PMD_RAWDEV_NAME_PCI rawdev_idxd_pci
+
+const struct rte_pci_id pci_id_idxd_map[] = {
+	{ RTE_PCI_DEVICE(IDXD_VENDOR_ID, IDXD_DEVICE_ID_SPR) },
+	{ .vendor_id = 0, /* sentinel */ },
+};
+
+static int
+idxd_rawdev_probe_pci(struct rte_pci_driver *drv, struct rte_pci_device *dev)
+{
+	int ret = 0;
+	char name[PCI_PRI_STR_SIZE];
+
+	rte_pci_device_name(&dev->addr, name, sizeof(name));
+	IOAT_PMD_INFO("Init %s on NUMA node %d", name, dev->device.numa_node);
+	dev->device.driver = &drv->driver;
+
+	return ret;
+}
+
+static int
+idxd_rawdev_remove_pci(struct rte_pci_device *dev)
+{
+	char name[PCI_PRI_STR_SIZE];
+	int ret = 0;
+
+	rte_pci_device_name(&dev->addr, name, sizeof(name));
+
+	IOAT_PMD_INFO("Closing %s on NUMA node %d",
+			name, dev->device.numa_node);
+
+	return ret;
+}
+
+struct rte_pci_driver idxd_pmd_drv_pci = {
+	.id_table = pci_id_idxd_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING,
+	.probe = idxd_rawdev_probe_pci,
+	.remove = idxd_rawdev_remove_pci,
+};
+
+RTE_PMD_REGISTER_PCI(IDXD_PMD_RAWDEV_NAME_PCI, idxd_pmd_drv_pci);
+RTE_PMD_REGISTER_PCI_TABLE(IDXD_PMD_RAWDEV_NAME_PCI, pci_id_idxd_map);
+RTE_PMD_REGISTER_KMOD_DEP(IDXD_PMD_RAWDEV_NAME_PCI,
+			  "* igb_uio | uio_pci_generic | vfio-pci");
diff --git a/drivers/raw/ioat/ioat_private.h b/drivers/raw/ioat/ioat_private.h
new file mode 100644
index 0000000000..d87d4d055e
--- /dev/null
+++ b/drivers/raw/ioat/ioat_private.h
@@ -0,0 +1,27 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2020 Intel Corporation
+ */
+
+#ifndef _IOAT_PRIVATE_H_
+#define _IOAT_PRIVATE_H_
+
+/**
+ * @file idxd_private.h
+ *
+ * Private data structures for the idxd/DSA part of ioat device driver
+ *
+ * @warning
+ * @b EXPERIMENTAL: these structures and APIs may change without prior notice
+ */
+
+extern int ioat_pmd_logtype;
+
+#define IOAT_PMD_LOG(level, fmt, args...) rte_log(RTE_LOG_ ## level, \
+		ioat_pmd_logtype, "%s(): " fmt "\n", __func__, ##args)
+
+#define IOAT_PMD_DEBUG(fmt, args...)  IOAT_PMD_LOG(DEBUG, fmt, ## args)
+#define IOAT_PMD_INFO(fmt, args...)   IOAT_PMD_LOG(INFO, fmt, ## args)
+#define IOAT_PMD_ERR(fmt, args...)    IOAT_PMD_LOG(ERR, fmt, ## args)
+#define IOAT_PMD_WARN(fmt, args...)   IOAT_PMD_LOG(WARNING, fmt, ## args)
+
+#endif /* _IOAT_PRIVATE_H_ */
diff --git a/drivers/raw/ioat/ioat_rawdev.c b/drivers/raw/ioat/ioat_rawdev.c
index aa59b731fd..1fe32278d2 100644
--- a/drivers/raw/ioat/ioat_rawdev.c
+++ b/drivers/raw/ioat/ioat_rawdev.c
@@ -10,6 +10,7 @@
 
 #include "rte_ioat_rawdev.h"
 #include "ioat_spec.h"
+#include "ioat_private.h"
 
 static struct rte_pci_driver ioat_pmd_drv;
 
@@ -29,14 +30,6 @@ static struct rte_pci_driver ioat_pmd_drv;
 
 RTE_LOG_REGISTER(ioat_pmd_logtype, rawdev.ioat, INFO);
 
-#define IOAT_PMD_LOG(level, fmt, args...) rte_log(RTE_LOG_ ## level, \
-	ioat_pmd_logtype, "%s(): " fmt "\n", __func__, ##args)
-
-#define IOAT_PMD_DEBUG(fmt, args...)  IOAT_PMD_LOG(DEBUG, fmt, ## args)
-#define IOAT_PMD_INFO(fmt, args...)   IOAT_PMD_LOG(INFO, fmt, ## args)
-#define IOAT_PMD_ERR(fmt, args...)    IOAT_PMD_LOG(ERR, fmt, ## args)
-#define IOAT_PMD_WARN(fmt, args...)   IOAT_PMD_LOG(WARNING, fmt, ## args)
-
 #define DESC_SZ sizeof(struct rte_ioat_generic_hw_desc)
 #define COMPLETION_SZ sizeof(__m128i)
 
diff --git a/drivers/raw/ioat/meson.build b/drivers/raw/ioat/meson.build
index 06636f8a9f..3529635e9c 100644
--- a/drivers/raw/ioat/meson.build
+++ b/drivers/raw/ioat/meson.build
@@ -3,8 +3,10 @@
 
 build = dpdk_conf.has('RTE_ARCH_X86')
 reason = 'only supported on x86'
-sources = files('ioat_rawdev.c',
-		'ioat_rawdev_test.c')
+sources = files(
+	'idxd_pci.c',
+	'ioat_rawdev.c',
+	'ioat_rawdev_test.c')
 deps += ['rawdev', 'bus_pci', 'mbuf']
 
 install_headers('rte_ioat_rawdev.h',
-- 
2.25.1


  parent reply	other threads:[~2020-09-28 16:46 UTC|newest]

Thread overview: 157+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-21  9:51 [dpdk-dev] [PATCH 20.11 00/20] raw/ioat: enhancements and new hardware support Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 01/20] raw/ioat: add a flag to control copying handle parameters Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 02/20] raw/ioat: support multiple devices being tested Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 03/20] app/test: change rawdev autotest to run selftest on all devs Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 04/20] app/test: remove ioat-specific autotest Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 05/20] raw/ioat: split header for readability Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 06/20] raw/ioat: make the HW register spec private Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 07/20] usertools/dpdk-devbind.py: add support for DSA HW Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 08/20] raw/ioat: add skeleton for vfio/uio based DSA device Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 09/20] raw/ioat: add vdev probe for DSA/idxd devices Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 10/20] raw/ioat: create rawdev instances on idxd PCI probe Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 11/20] raw/ioat: create rawdev instances for idxd vdevs Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 12/20] raw/ioat: add datapath data structures for idxd devices Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 13/20] raw/ioat: add configure function " Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 14/20] raw/ioat: add start and stop functions " Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 15/20] raw/ioat: add data path support " Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 16/20] raw/ioat: add info function " Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 17/20] raw/ioat: create separate statistics structure Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 18/20] raw/ioat: move xstats functions to common file Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 19/20] raw/ioat: add xstats tracking for idxd devices Bruce Richardson
2020-07-21  9:51 ` [dpdk-dev] [PATCH 20.11 20/20] raw/ioat: clean up use of common test function Bruce Richardson
2020-08-21 16:29 ` [dpdk-dev] [PATCH v2 00/18] raw/ioat: enhancements and new hardware support Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 01/18] raw/ioat: add a flag to control copying handle parameters Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 02/18] raw/ioat: split header for readability Bruce Richardson
2020-08-25 15:27     ` Laatz, Kevin
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 03/18] raw/ioat: make the HW register spec private Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 04/18] usertools/dpdk-devbind.py: add support for DSA HW Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 05/18] raw/ioat: add skeleton for VFIO/UIO based DSA device Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 06/18] raw/ioat: add vdev probe for DSA/idxd devices Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 07/18] raw/ioat: include example configuration script Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 08/18] raw/ioat: create rawdev instances on idxd PCI probe Bruce Richardson
2020-08-25 15:27     ` Laatz, Kevin
2020-08-26 15:45       ` Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 09/18] raw/ioat: create rawdev instances for idxd vdevs Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 10/18] raw/ioat: add datapath data structures for idxd devices Bruce Richardson
2020-08-25 15:27     ` Laatz, Kevin
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 11/18] raw/ioat: add configure function " Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 12/18] raw/ioat: add start and stop functions " Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 13/18] raw/ioat: add data path " Bruce Richardson
2020-08-25 15:27     ` Laatz, Kevin
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 14/18] raw/ioat: add info function " Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 15/18] raw/ioat: create separate statistics structure Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 16/18] raw/ioat: move xstats functions to common file Bruce Richardson
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 17/18] raw/ioat: add xstats tracking for idxd devices Bruce Richardson
2020-08-24  9:56     ` Laatz, Kevin
2020-08-21 16:29   ` [dpdk-dev] [PATCH v2 18/18] raw/ioat: clean up use of common test function Bruce Richardson
2020-08-21 16:39   ` [dpdk-dev] [PATCH v2 00/18] raw/ioat: enhancements and new hardware support Bruce Richardson
2020-09-25 11:08 ` [dpdk-dev] [PATCH v3 00/25] " Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 01/25] doc/api: add ioat driver to index Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 02/25] raw/ioat: fix missing close function Bruce Richardson
2020-09-25 11:12     ` Bruce Richardson
2020-09-25 11:12     ` Pai G, Sunil
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 03/25] raw/ioat: enable use from C++ code Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 04/25] raw/ioat: include extra info in error messages Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 05/25] raw/ioat: add a flag to control copying handle parameters Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 06/25] raw/ioat: split header for readability Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 07/25] raw/ioat: rename functions to be operation-agnostic Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 08/25] raw/ioat: add separate API for fence call Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 09/25] raw/ioat: make the HW register spec private Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 10/25] usertools/dpdk-devbind.py: add support for DSA HW Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 11/25] raw/ioat: add skeleton for VFIO/UIO based DSA device Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 12/25] raw/ioat: add vdev probe for DSA/idxd devices Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 13/25] raw/ioat: include example configuration script Bruce Richardson
2020-09-25 11:08   ` [dpdk-dev] [PATCH v3 14/25] raw/ioat: create rawdev instances on idxd PCI probe Bruce Richardson
2020-09-25 11:09   ` [dpdk-dev] [PATCH v3 15/25] raw/ioat: create rawdev instances for idxd vdevs Bruce Richardson
2020-09-25 11:09   ` [dpdk-dev] [PATCH v3 16/25] raw/ioat: add datapath data structures for idxd devices Bruce Richardson
2020-09-25 11:09   ` [dpdk-dev] [PATCH v3 17/25] raw/ioat: add configure function " Bruce Richardson
2020-09-25 11:09   ` [dpdk-dev] [PATCH v3 18/25] raw/ioat: add start and stop functions " Bruce Richardson
2020-09-25 11:09   ` [dpdk-dev] [PATCH v3 19/25] raw/ioat: add data path " Bruce Richardson
2020-09-25 11:09   ` [dpdk-dev] [PATCH v3 20/25] raw/ioat: add info function " Bruce Richardson
2020-09-25 11:09   ` [dpdk-dev] [PATCH v3 21/25] raw/ioat: create separate statistics structure Bruce Richardson
2020-09-25 11:09   ` [dpdk-dev] [PATCH v3 22/25] raw/ioat: move xstats functions to common file Bruce Richardson
2020-09-25 11:09   ` [dpdk-dev] [PATCH v3 23/25] raw/ioat: add xstats tracking for idxd devices Bruce Richardson
2020-09-25 11:09   ` [dpdk-dev] [PATCH v3 24/25] raw/ioat: clean up use of common test function Bruce Richardson
2020-09-25 11:09   ` [dpdk-dev] [PATCH v3 25/25] raw/ioat: add fill operation Bruce Richardson
2020-09-28 16:42 ` [dpdk-dev] [PATCH v4 00/25] raw/ioat: enhancements and new hardware support Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 01/25] doc/api: add ioat driver to index Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 02/25] raw/ioat: fix missing close function Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 03/25] raw/ioat: enable use from C++ code Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 04/25] raw/ioat: include extra info in error messages Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 05/25] raw/ioat: add a flag to control copying handle parameters Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 06/25] raw/ioat: split header for readability Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 07/25] raw/ioat: rename functions to be operation-agnostic Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 08/25] raw/ioat: add separate API for fence call Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 09/25] raw/ioat: make the HW register spec private Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 10/25] usertools/dpdk-devbind.py: add support for DSA HW Bruce Richardson
2020-09-28 16:42   ` Bruce Richardson [this message]
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 12/25] raw/ioat: add vdev probe for DSA/idxd devices Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 13/25] raw/ioat: include example configuration script Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 14/25] raw/ioat: create rawdev instances on idxd PCI probe Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 15/25] raw/ioat: create rawdev instances for idxd vdevs Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 16/25] raw/ioat: add datapath data structures for idxd devices Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 17/25] raw/ioat: add configure function " Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 18/25] raw/ioat: add start and stop functions " Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 19/25] raw/ioat: add data path " Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 20/25] raw/ioat: add info function " Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 21/25] raw/ioat: create separate statistics structure Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 22/25] raw/ioat: move xstats functions to common file Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 23/25] raw/ioat: add xstats tracking for idxd devices Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 24/25] raw/ioat: clean up use of common test function Bruce Richardson
2020-09-28 16:42   ` [dpdk-dev] [PATCH v4 25/25] raw/ioat: add fill operation Bruce Richardson
2020-10-02 14:07   ` [dpdk-dev] [PATCH v4 00/25] raw/ioat: enhancements and new hardware support Nicolau, Radu
2020-10-06 21:10   ` Thomas Monjalon
2020-10-07  9:46     ` Bruce Richardson
2020-10-07 16:29 ` [dpdk-dev] [PATCH v5 " Bruce Richardson
2020-10-07 16:29   ` [dpdk-dev] [PATCH v5 01/25] doc/api: add ioat driver to index Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 02/25] raw/ioat: fix missing close function Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 03/25] raw/ioat: enable use from C++ code Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 04/25] raw/ioat: include extra info in error messages Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 05/25] raw/ioat: add a flag to control copying handle parameters Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 06/25] raw/ioat: split header for readability Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 07/25] raw/ioat: rename functions to be operation-agnostic Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 08/25] raw/ioat: add separate API for fence call Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 09/25] raw/ioat: make the HW register spec private Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 10/25] usertools/dpdk-devbind.py: add support for DSA HW Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 11/25] raw/ioat: add skeleton for VFIO/UIO based DSA device Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 12/25] raw/ioat: add vdev probe for DSA/idxd devices Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 13/25] raw/ioat: include example configuration script Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 14/25] raw/ioat: create rawdev instances on idxd PCI probe Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 15/25] raw/ioat: create rawdev instances for idxd vdevs Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 16/25] raw/ioat: add datapath data structures for idxd devices Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 17/25] raw/ioat: add configure function " Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 18/25] raw/ioat: add start and stop functions " Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 19/25] raw/ioat: add data path " Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 20/25] raw/ioat: add info function " Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 21/25] raw/ioat: create separate statistics structure Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 22/25] raw/ioat: move xstats functions to common file Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 23/25] raw/ioat: add xstats tracking for idxd devices Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 24/25] raw/ioat: clean up use of common test function Bruce Richardson
2020-10-07 16:30   ` [dpdk-dev] [PATCH v5 25/25] raw/ioat: add fill operation Bruce Richardson
2020-10-08  9:51 ` [dpdk-dev] [PATCH v6 00/25] raw/ioat: enhancements and new hardware support Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 01/25] doc/api: add ioat driver to index Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 02/25] raw/ioat: fix missing close function Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 03/25] raw/ioat: enable use from C++ code Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 04/25] raw/ioat: include extra info in error messages Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 05/25] raw/ioat: add a flag to control copying handle parameters Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 06/25] raw/ioat: split header for readability Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 07/25] raw/ioat: rename functions to be operation-agnostic Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 08/25] raw/ioat: add separate API for fence call Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 09/25] raw/ioat: make the HW register spec private Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 10/25] usertools/dpdk-devbind.py: add support for DSA HW Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 11/25] raw/ioat: add skeleton for VFIO/UIO based DSA device Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 12/25] raw/ioat: add vdev probe for DSA/idxd devices Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 13/25] raw/ioat: include example configuration script Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 14/25] raw/ioat: create rawdev instances on idxd PCI probe Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 15/25] raw/ioat: create rawdev instances for idxd vdevs Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 16/25] raw/ioat: add datapath data structures for idxd devices Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 17/25] raw/ioat: add configure function " Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 18/25] raw/ioat: add start and stop functions " Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 19/25] raw/ioat: add data path " Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 20/25] raw/ioat: add info function " Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 21/25] raw/ioat: create separate statistics structure Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 22/25] raw/ioat: move xstats functions to common file Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 23/25] raw/ioat: add xstats tracking for idxd devices Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 24/25] raw/ioat: clean up use of common test function Bruce Richardson
2020-10-08  9:51   ` [dpdk-dev] [PATCH v6 25/25] raw/ioat: add fill operation Bruce Richardson
2020-10-08 12:32   ` [dpdk-dev] [PATCH v6 00/25] raw/ioat: enhancements and new hardware support Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200928164245.84997-12-bruce.richardson@intel.com \
    --to=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=kevin.laatz@intel.com \
    --cc=patrick.fu@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

DPDK patches and discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \
		dev@dpdk.org
	public-inbox-index dev

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git