DPDK patches and discussions
 help / color / mirror / Atom feed
From: fengchengwen <fengchengwen@huawei.com>
To: Kevin Laatz <kevin.laatz@intel.com>, <dev@dpdk.org>
Cc: <bruce.richardson@intel.com>, <jerinj@marvell.com>,
	<conor.walsh@intel.com>
Subject: Re: [dpdk-dev] [PATCH v5 04/16] dma/idxd: create dmadev instances on bus probe
Date: Wed, 22 Sep 2021 10:04:05 +0800	[thread overview]
Message-ID: <ae809189-004f-5dc8-34f3-89aea2cdfa2f@huawei.com> (raw)
In-Reply-To: <20210917152437.3270330-5-kevin.laatz@intel.com>

On 2021/9/17 23:24, Kevin Laatz wrote:
> When a suitable device is found during the bus scan/probe, create a dmadev
> instance for each HW queue. Internal structures required for device
> creation are also added.
> 
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> Signed-off-by: Kevin Laatz <kevin.laatz@intel.com>
> Reviewed-by: Conor Walsh <conor.walsh@intel.com>
> 
> ---
> v4:
>   - fix 'vdev' naming, changed to 'bus'
>   - rebase changes
> ---
>  drivers/dma/idxd/idxd_bus.c      | 19 ++++++++
>  drivers/dma/idxd/idxd_common.c   | 76 ++++++++++++++++++++++++++++++++
>  drivers/dma/idxd/idxd_internal.h | 40 +++++++++++++++++
>  drivers/dma/idxd/meson.build     |  1 +
>  4 files changed, 136 insertions(+)
>  create mode 100644 drivers/dma/idxd/idxd_common.c
> 
> diff --git a/drivers/dma/idxd/idxd_bus.c b/drivers/dma/idxd/idxd_bus.c
> index ef589af30e..b48fa954ed 100644
> --- a/drivers/dma/idxd/idxd_bus.c
> +++ b/drivers/dma/idxd/idxd_bus.c
> @@ -85,6 +85,18 @@ dsa_get_sysfs_path(void)
>  	return path ? path : DSA_SYSFS_PATH;
>  }
>  
> +static int
> +idxd_dev_close(struct rte_dma_dev *dev)
> +{
> +	struct idxd_dmadev *idxd = dev->data->dev_private;
> +	munmap(idxd->portal, 0x1000);
> +	return 0;
> +}
> +
> +static const struct rte_dma_dev_ops idxd_bus_ops = {
> +		.dev_close = idxd_dev_close,
> +};
> +
>  static void *
>  idxd_bus_mmap_wq(struct rte_dsa_device *dev)
>  {
> @@ -206,6 +218,7 @@ idxd_probe_dsa(struct rte_dsa_device *dev)
>  		return -1;
>  	idxd.max_batch_size = ret;
>  	idxd.qid = dev->addr.wq_id;
> +	idxd.u.bus.dsa_id = dev->addr.device_id;
>  	idxd.sva_support = 1;
>  
>  	idxd.portal = idxd_bus_mmap_wq(dev);
> @@ -214,6 +227,12 @@ idxd_probe_dsa(struct rte_dsa_device *dev)
>  		return -ENOENT;
>  	}
>  
> +	ret = idxd_dmadev_create(dev->wq_name, &dev->device, &idxd, &idxd_bus_ops);
> +	if (ret) {
> +		IDXD_PMD_ERR("Failed to create rawdev %s", dev->wq_name);
> +		return ret;
> +	}
> +
>  	return 0;
>  }
>  
> diff --git a/drivers/dma/idxd/idxd_common.c b/drivers/dma/idxd/idxd_common.c
> new file mode 100644
> index 0000000000..8afad637fc
> --- /dev/null
> +++ b/drivers/dma/idxd/idxd_common.c
> @@ -0,0 +1,76 @@
> +/* SPDX-License-Identifier: BSD-3-Clause
> + * Copyright 2021 Intel Corporation
> + */
> +
> +#include <rte_dmadev_pmd.h>
> +#include <rte_malloc.h>
> +#include <rte_common.h>
> +
> +#include "idxd_internal.h"
> +
> +#define IDXD_PMD_NAME_STR "dmadev_idxd"
> +
> +int
> +idxd_dmadev_create(const char *name, struct rte_device *dev,
> +		   const struct idxd_dmadev *base_idxd,
> +		   const struct rte_dma_dev_ops *ops)
> +{
> +	struct idxd_dmadev *idxd;
> +	struct rte_dma_dev *dmadev = NULL;
> +	int ret = 0;
> +
> +	if (!name) {
> +		IDXD_PMD_ERR("Invalid name of the device!");
> +		ret = -EINVAL;
> +		goto cleanup;
> +	}
> +
> +	/* Allocate device structure */
> +	dmadev = rte_dma_pmd_allocate(name, dev->numa_node,
> +			sizeof(dmadev->dev_private));
> +	if (dmadev == NULL) {
> +		IDXD_PMD_ERR("Unable to allocate raw device");
> +		ret = -ENOMEM;
> +		goto cleanup;
> +	}
> +	dmadev->dev_ops = ops;
> +	dmadev->device = dev;
> +
> +	idxd = rte_malloc_socket(NULL, sizeof(struct idxd_dmadev), 0, dev->numa_node);
> +	if (idxd == NULL) {
> +		IDXD_PMD_ERR("Unable to allocate memory for device");
> +		ret = -ENOMEM;
> +		goto cleanup;
> +	}
> +	dmadev->data->dev_private = idxd;
> +	dmadev->dev_private = idxd;

The dmadev->dev_private and dmadev->data->dev_private already inited by rte_dma_pmd_allocate,
and the driver only needs to pass in the correct parameters.

Recommended:
  dmadev = rte_dma_pmd_allocate(name, dev->name, sizeof(struct idxd_dmadev));


> +	*idxd = *base_idxd; /* copy over the main fields already passed in */
> +	idxd->dmadev = dmadev;
> +
> +	/* allocate batch index ring and completion ring.
> +	 * The +1 is because we can never fully use
> +	 * the ring, otherwise read == write means both full and empty.
> +	 */
> +	idxd->batch_comp_ring = rte_zmalloc(NULL, (sizeof(idxd->batch_idx_ring[0]) +
> +			sizeof(idxd->batch_comp_ring[0]))	* (idxd->max_batches + 1),
> +			sizeof(idxd->batch_comp_ring[0]));
> +	if (idxd->batch_comp_ring == NULL) {
> +		IDXD_PMD_ERR("Unable to reserve memory for batch data\n");
> +		ret = -ENOMEM;
> +		goto cleanup;
> +	}
> +	idxd->batch_idx_ring = (void *)&idxd->batch_comp_ring[idxd->max_batches+1];
> +	idxd->batch_iova = rte_mem_virt2iova(idxd->batch_comp_ring);
> +

Once init one dmadev successful, driver need changes it's state to READY, like:
  dmadev->state = RTE_DMA_DEV_READY;
This was useful when call rte_dma_pmd_release: if the state is ready, lib will call
rte_dma_close() to release the dmadev, else it only clean the struct which lib holds.

> +	return 0;
> +
> +cleanup:
> +	if (dmadev)
> +		rte_dma_pmd_release(name);
> +
> +	return ret;
> +}
> +
> +int idxd_pmd_logtype;
> +
> +RTE_LOG_REGISTER_DEFAULT(idxd_pmd_logtype, WARNING);
> diff --git a/drivers/dma/idxd/idxd_internal.h b/drivers/dma/idxd/idxd_internal.h
> index c6a7dcd72f..fa6f053f72 100644
> --- a/drivers/dma/idxd/idxd_internal.h
> +++ b/drivers/dma/idxd/idxd_internal.h
> @@ -24,4 +24,44 @@ extern int idxd_pmd_logtype;
>  #define IDXD_PMD_ERR(fmt, args...)    IDXD_PMD_LOG(ERR, fmt, ## args)
>  #define IDXD_PMD_WARN(fmt, args...)   IDXD_PMD_LOG(WARNING, fmt, ## args)
>  
> +struct idxd_dmadev {
> +	/* counters to track the batches */
> +	unsigned short max_batches;
> +	unsigned short batch_idx_read;
> +	unsigned short batch_idx_write;
> +
> +	/* track descriptors and handles */
> +	unsigned short desc_ring_mask;
> +	unsigned short ids_avail; /* handles for ops completed */
> +	unsigned short ids_returned; /* the read pointer for hdls/desc rings */
> +	unsigned short batch_start; /* start+size == write pointer for hdls/desc */
> +	unsigned short batch_size;
> +
> +	void *portal; /* address to write the batch descriptor */
> +
> +	struct idxd_completion *batch_comp_ring;
> +	unsigned short *batch_idx_ring; /* store where each batch ends */
> +
> +	struct rte_dma_stats stats;
> +
> +	rte_iova_t batch_iova; /* base address of the batch comp ring */
> +	rte_iova_t desc_iova; /* base address of desc ring, needed for completions */
> +
> +	unsigned short max_batch_size;
> +
> +	struct rte_dma_dev *dmadev;
> +	struct rte_dma_vchan_conf qcfg;
> +	uint8_t sva_support;
> +	uint8_t qid;
> +
> +	union {
> +		struct {
> +			unsigned int dsa_id;
> +		} bus;
> +	} u;
> +};
> +
> +int idxd_dmadev_create(const char *name, struct rte_device *dev,
> +		const struct idxd_dmadev *base_idxd, const struct rte_dma_dev_ops *ops);
> +
>  #endif /* _IDXD_INTERNAL_H_ */
> diff --git a/drivers/dma/idxd/meson.build b/drivers/dma/idxd/meson.build
> index c864fce3b3..36dbd3e518 100644
> --- a/drivers/dma/idxd/meson.build
> +++ b/drivers/dma/idxd/meson.build
> @@ -8,5 +8,6 @@ endif
>  deps += ['bus_pci']
>  sources = files(
>          'idxd_bus.c',
> +        'idxd_common.c',
>          'idxd_pci.c'
>  )
> \ No newline at end of file
> 

  reply	other threads:[~2021-09-22  2:04 UTC|newest]

Thread overview: 243+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-27 17:20 [dpdk-dev] [PATCH 00/13] add dmadev driver for idxd devices Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 01/13] raw/ioat: only build if dmadev not present Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 02/13] doc: initial commit for dmadevs section Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 03/13] dma/idxd: add skeleton for VFIO based DSA device Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 04/13] dma/idxd: add bus device probing Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 05/13] dma/idxd: create dmadev instances on bus probe Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 06/13] dma/idxd: create dmadev instances on pci probe Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 07/13] dma/idxd: add datapath structures Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 08/13] dma/idxd: add configure and info_get functions Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 09/13] dma/idxd: add start and stop functions for pci devices Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 10/13] dma/idxd: add data-path job submission functions Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 11/13] dma/idxd: add data-path job completion functions Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 12/13] dma/idxd: add operation statistic tracking Kevin Laatz
2021-08-27 17:20 ` [dpdk-dev] [PATCH 13/13] dma/idxd: move dpdk_idxd_cfg.py from raw to dma Kevin Laatz
2021-09-03 10:49 ` [dpdk-dev] [PATCH v2 00/16] add dmadev driver for idxd devices Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 01/16] raw/ioat: only build if dmadev not present Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 02/16] doc: initial commit for dmadevs section Kevin Laatz
2021-09-03 10:51     ` Bruce Richardson
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 03/16] dma/idxd: add skeleton for VFIO based DSA device Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 04/16] dma/idxd: add bus device probing Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 05/16] dma/idxd: create dmadev instances on bus probe Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 06/16] dma/idxd: create dmadev instances on pci probe Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 07/16] dma/idxd: add datapath structures Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 08/16] dma/idxd: add configure and info_get functions Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 09/16] dma/idxd: add start and stop functions for pci devices Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 10/16] dma/idxd: add data-path job submission functions Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 11/16] dma/idxd: add data-path job completion functions Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 12/16] dma/idxd: add operation statistic tracking Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 13/16] dma/idxd: add vchan idle function Kevin Laatz
2021-09-03 10:49   ` [dpdk-dev] [PATCH v2 14/16] dma/idxd: move dpdk_idxd_cfg.py from raw to dma Kevin Laatz
2021-09-03 10:50   ` [dpdk-dev] [PATCH v2 15/16] devbind: add dma device class Kevin Laatz
2021-09-03 10:50   ` [dpdk-dev] [PATCH v2 16/16] devbind: move idxd device ID to dmadev class Kevin Laatz
2021-09-08 10:29   ` [dpdk-dev] [PATCH v3 00/17] add dmadev driver for idxd devices Kevin Laatz
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 01/17] raw/ioat: only build if dmadev not present Kevin Laatz
2021-09-08 16:00       ` Conor Walsh
2021-09-09 11:11         ` Kevin Laatz
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 02/17] doc: initial commit for dmadevs section Kevin Laatz
2021-09-08 16:00       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 03/17] dma/idxd: add skeleton for VFIO based DSA device Kevin Laatz
2021-09-08 16:47       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 04/17] dma/idxd: add bus device probing Kevin Laatz
2021-09-08 16:47       ` Conor Walsh
2021-09-09 11:10         ` Kevin Laatz
2021-09-15 10:12       ` Maxime Coquelin
2021-09-15 11:06         ` Bruce Richardson
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 05/17] dma/idxd: create dmadev instances on bus probe Kevin Laatz
2021-09-08 16:47       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 06/17] dma/idxd: create dmadev instances on pci probe Kevin Laatz
2021-09-08 16:48       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 07/17] dma/idxd: add datapath structures Kevin Laatz
2021-09-09 11:23       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 08/17] dma/idxd: add configure and info_get functions Kevin Laatz
2021-09-09 11:23       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 09/17] dma/idxd: add start and stop functions for pci devices Kevin Laatz
2021-09-09 11:24       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 10/17] dma/idxd: add data-path job submission functions Kevin Laatz
2021-09-09 11:24       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 11/17] dma/idxd: add data-path job completion functions Kevin Laatz
2021-09-09 11:24       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 12/17] dma/idxd: add operation statistic tracking Kevin Laatz
2021-09-09 11:25       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 13/17] dma/idxd: add vchan status function Kevin Laatz
2021-09-09 11:26       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 14/17] dma/idxd: add burst capacity API Kevin Laatz
2021-09-09 11:26       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 15/17] dma/idxd: move dpdk_idxd_cfg.py from raw to dma Kevin Laatz
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 16/17] devbind: add dma device class Kevin Laatz
2021-09-09 11:26       ` Conor Walsh
2021-09-08 10:30     ` [dpdk-dev] [PATCH v3 17/17] devbind: move idxd device ID to dmadev class Kevin Laatz
2021-09-09 11:27       ` Conor Walsh
2021-09-17 14:02 ` [dpdk-dev] [PATCH v4 00/16] add dmadev driver for idxd devices Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 01/16] raw/ioat: only build if dmadev not present Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 02/16] dma/idxd: add skeleton for VFIO based DSA device Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 03/16] dma/idxd: add bus device probing Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 04/16] dma/idxd: create dmadev instances on bus probe Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 05/16] dma/idxd: create dmadev instances on pci probe Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 06/16] dma/idxd: add datapath structures Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 07/16] dma/idxd: add configure and info_get functions Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 08/16] dma/idxd: add start and stop functions for pci devices Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 09/16] dma/idxd: add data-path job submission functions Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 10/16] dma/idxd: add data-path job completion functions Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 11/16] dma/idxd: add operation statistic tracking Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 12/16] dma/idxd: add vchan status function Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 13/16] dma/idxd: add burst capacity API Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 14/16] dma/idxd: move dpdk_idxd_cfg.py from raw to dma Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 15/16] devbind: add dma device class Kevin Laatz
2021-09-17 14:02   ` [dpdk-dev] [PATCH v4 16/16] devbind: move idxd device ID to dmadev class Kevin Laatz
2021-09-17 15:24 ` [dpdk-dev] [PATCH v5 00/16] add dmadev driver for idxd devices Kevin Laatz
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 01/16] raw/ioat: only build if dmadev not present Kevin Laatz
2021-09-20 10:15     ` Bruce Richardson
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 02/16] dma/idxd: add skeleton for VFIO based DSA device Kevin Laatz
2021-09-20 10:23     ` Bruce Richardson
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 03/16] dma/idxd: add bus device probing Kevin Laatz
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 04/16] dma/idxd: create dmadev instances on bus probe Kevin Laatz
2021-09-22  2:04     ` fengchengwen [this message]
2021-09-22  9:12       ` Kevin Laatz
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 05/16] dma/idxd: create dmadev instances on pci probe Kevin Laatz
2021-09-22  2:12     ` fengchengwen
2021-09-22  9:18       ` Kevin Laatz
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 06/16] dma/idxd: add datapath structures Kevin Laatz
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 07/16] dma/idxd: add configure and info_get functions Kevin Laatz
2021-09-20 10:27     ` Bruce Richardson
2021-09-22  2:31     ` fengchengwen
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 08/16] dma/idxd: add start and stop functions for pci devices Kevin Laatz
2021-09-22  2:40     ` fengchengwen
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 09/16] dma/idxd: add data-path job submission functions Kevin Laatz
2021-09-20 10:30     ` Bruce Richardson
2021-09-22  3:22     ` fengchengwen
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 10/16] dma/idxd: add data-path job completion functions Kevin Laatz
2021-09-20 10:36     ` Bruce Richardson
2021-09-22  3:47     ` fengchengwen
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 11/16] dma/idxd: add operation statistic tracking Kevin Laatz
2021-09-22  3:51     ` fengchengwen
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 12/16] dma/idxd: add vchan status function Kevin Laatz
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 13/16] dma/idxd: add burst capacity API Kevin Laatz
2021-09-20 10:39     ` Bruce Richardson
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 14/16] dma/idxd: move dpdk_idxd_cfg.py from raw to dma Kevin Laatz
2021-09-20 10:43     ` Bruce Richardson
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 15/16] devbind: add dma device class Kevin Laatz
2021-09-20 10:45     ` Bruce Richardson
2021-09-22  2:19     ` fengchengwen
2021-09-17 15:24   ` [dpdk-dev] [PATCH v5 16/16] devbind: move idxd device ID to dmadev class Kevin Laatz
2021-09-20 10:46     ` Bruce Richardson
2021-09-24 13:39 ` [dpdk-dev] [PATCH v6 00/16] add dmadev driver for idxd devices Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 01/16] raw/ioat: only build if dmadev not present Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 02/16] dma/idxd: add skeleton for VFIO based DSA device Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 03/16] dma/idxd: add bus device probing Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 04/16] dma/idxd: create dmadev instances on bus probe Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 05/16] dma/idxd: create dmadev instances on pci probe Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 06/16] dma/idxd: add datapath structures Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 07/16] dma/idxd: add configure and info_get functions Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 08/16] dma/idxd: add start and stop functions for pci devices Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 09/16] dma/idxd: add data-path job submission functions Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 10/16] dma/idxd: add data-path job completion functions Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 11/16] dma/idxd: add operation statistic tracking Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 12/16] dma/idxd: add vchan status function Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 13/16] dma/idxd: add burst capacity API Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 14/16] dma/idxd: move dpdk_idxd_cfg.py from raw to dma Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 15/16] devbind: add dma device class Kevin Laatz
2021-09-24 13:39   ` [dpdk-dev] [PATCH v6 16/16] devbind: move idxd device ID to dmadev class Kevin Laatz
2021-10-13 16:30 ` [dpdk-dev] [PATCH v7 00/16] add dmadev driver for idxd devices Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 01/16] raw/ioat: only build if dmadev not present Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 02/16] dma/idxd: add skeleton for VFIO based DSA device Kevin Laatz
2021-10-18 10:32     ` Thomas Monjalon
2021-10-18 10:41       ` Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 03/16] dma/idxd: add bus device probing Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 04/16] dma/idxd: create dmadev instances on bus probe Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 05/16] dma/idxd: create dmadev instances on pci probe Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 06/16] dma/idxd: add datapath structures Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 07/16] dma/idxd: add configure and info_get functions Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 08/16] dma/idxd: add start and stop functions for pci devices Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 09/16] dma/idxd: add data-path job submission functions Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 10/16] dma/idxd: add data-path job completion functions Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 11/16] dma/idxd: add operation statistic tracking Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 12/16] dma/idxd: add vchan status function Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 13/16] dma/idxd: add burst capacity API Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 14/16] dma/idxd: move dpdk_idxd_cfg.py from raw to dma Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 15/16] devbind: add dma device class Kevin Laatz
2021-10-13 16:30   ` [dpdk-dev] [PATCH v7 16/16] devbind: move idxd device ID to dmadev class Kevin Laatz
2021-10-18 12:28 ` [dpdk-dev] [PATCH v8 00/16] add dmadev driver for idxd devices Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 01/16] raw/ioat: only build if dmadev not present Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 02/16] dma/idxd: add skeleton for VFIO based DSA device Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 03/16] dma/idxd: add bus device probing Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 04/16] dma/idxd: create dmadev instances on bus probe Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 05/16] dma/idxd: create dmadev instances on pci probe Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 06/16] dma/idxd: add datapath structures Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 07/16] dma/idxd: add configure and info_get functions Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 08/16] dma/idxd: add start and stop functions for pci devices Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 09/16] dma/idxd: add data-path job submission functions Kevin Laatz
2021-10-19  7:04     ` Thomas Monjalon
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 10/16] dma/idxd: add data-path job completion functions Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 11/16] dma/idxd: add operation statistic tracking Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 12/16] dma/idxd: add vchan status function Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 13/16] dma/idxd: add burst capacity API Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 14/16] dma/idxd: move dpdk_idxd_cfg.py from raw to dma Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 15/16] devbind: add dma device class Kevin Laatz
2021-10-18 12:28   ` [dpdk-dev] [PATCH v8 16/16] devbind: move idxd device ID to dmadev class Kevin Laatz
2021-10-19 11:25 ` [dpdk-dev] [PATCH v9 00/16] add dmadev driver for idxd devices Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 01/16] raw/ioat: only build if dmadev not present Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 02/16] dma/idxd: add skeleton for VFIO based DSA device Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 03/16] dma/idxd: add bus device probing Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 04/16] dma/idxd: create dmadev instances on bus probe Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 05/16] dma/idxd: create dmadev instances on pci probe Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 06/16] dma/idxd: add datapath structures Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 07/16] dma/idxd: add configure and info_get functions Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 08/16] dma/idxd: add start and stop functions for pci devices Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 09/16] dma/idxd: add data-path job submission functions Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 10/16] dma/idxd: add data-path job completion functions Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 11/16] dma/idxd: add operation statistic tracking Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 12/16] dma/idxd: add vchan status function Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 13/16] dma/idxd: add burst capacity API Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 14/16] dma/idxd: move dpdk_idxd_cfg.py from raw to dma Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 15/16] devbind: add dma device class Kevin Laatz
2021-10-19 11:25   ` [dpdk-dev] [PATCH v9 16/16] devbind: move idxd device ID to dmadev class Kevin Laatz
2021-10-19 14:10 ` [dpdk-dev] [PATCH v10 00/16] add dmadev driver for idxd devices Kevin Laatz
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 01/16] raw/ioat: only build if dmadev not present Kevin Laatz
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 02/16] dma/idxd: add skeleton for VFIO based DSA device Kevin Laatz
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 03/16] dma/idxd: add bus device probing Kevin Laatz
2021-10-20  6:54     ` fengchengwen
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 04/16] dma/idxd: create dmadev instances on bus probe Kevin Laatz
2021-10-20  7:10     ` fengchengwen
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 05/16] dma/idxd: create dmadev instances on pci probe Kevin Laatz
2021-10-20  7:34     ` fengchengwen
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 06/16] dma/idxd: add datapath structures Kevin Laatz
2021-10-20  7:44     ` fengchengwen
2021-10-20  8:20       ` Bruce Richardson
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 07/16] dma/idxd: add configure and info_get functions Kevin Laatz
2021-10-20  7:54     ` fengchengwen
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 08/16] dma/idxd: add start and stop functions for pci devices Kevin Laatz
2021-10-20  8:04     ` fengchengwen
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 09/16] dma/idxd: add data-path job submission functions Kevin Laatz
2021-10-20  8:27     ` fengchengwen
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 10/16] dma/idxd: add data-path job completion functions Kevin Laatz
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 11/16] dma/idxd: add operation statistic tracking Kevin Laatz
2021-10-20  9:18     ` fengchengwen
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 12/16] dma/idxd: add vchan status function Kevin Laatz
2021-10-20  9:30     ` fengchengwen
2021-10-20  9:52       ` Bruce Richardson
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 13/16] dma/idxd: add burst capacity API Kevin Laatz
2021-10-20  9:32     ` fengchengwen
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 14/16] dma/idxd: move dpdk_idxd_cfg.py from raw to dma Kevin Laatz
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 15/16] devbind: add dma device class Kevin Laatz
2021-10-19 14:10   ` [dpdk-dev] [PATCH v10 16/16] devbind: move idxd device ID to dmadev class Kevin Laatz
2021-10-20 16:29 ` [dpdk-dev] [PATCH v11 00/16] add dmadev driver for idxd devices Kevin Laatz
2021-10-20 16:29   ` [dpdk-dev] [PATCH v11 01/16] raw/ioat: only build if dmadev not present Kevin Laatz
2021-10-20 16:29   ` [dpdk-dev] [PATCH v11 02/16] dma/idxd: add skeleton for VFIO based DSA device Kevin Laatz
2021-10-22 15:47     ` Thomas Monjalon
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 03/16] dma/idxd: add bus device probing Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 04/16] dma/idxd: create dmadev instances on bus probe Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 05/16] dma/idxd: create dmadev instances on pci probe Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 06/16] dma/idxd: add datapath structures Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 07/16] dma/idxd: add configure and info_get functions Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 08/16] dma/idxd: add start and stop functions for pci devices Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 09/16] dma/idxd: add data-path job submission functions Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 10/16] dma/idxd: add data-path job completion functions Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 11/16] dma/idxd: add operation statistic tracking Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 12/16] dma/idxd: add vchan status function Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 13/16] dma/idxd: add burst capacity API Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 14/16] dma/idxd: move dpdk_idxd_cfg.py from raw to dma Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 15/16] devbind: add dma device class Kevin Laatz
2021-10-20 16:30   ` [dpdk-dev] [PATCH v11 16/16] devbind: move idxd device ID to dmadev class Kevin Laatz
2021-10-22 18:07   ` [dpdk-dev] [PATCH v11 00/16] add dmadev driver for idxd devices Thomas Monjalon
2021-10-23  6:55     ` David Marchand

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=ae809189-004f-5dc8-34f3-89aea2cdfa2f@huawei.com \
    --to=fengchengwen@huawei.com \
    --cc=bruce.richardson@intel.com \
    --cc=conor.walsh@intel.com \
    --cc=dev@dpdk.org \
    --cc=jerinj@marvell.com \
    --cc=kevin.laatz@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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).