All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pablo de Lara <pablo.de.lara.guarch@intel.com>
To: declan.doherty@intel.com, thomas@monjalon.net
Cc: dev@dpdk.org, Pablo de Lara <pablo.de.lara.guarch@intel.com>
Subject: [PATCH 09/12] crypto/qat: do not use cryptodev driver
Date: Wed, 24 May 2017 16:27:11 +0100	[thread overview]
Message-ID: <1495639634-74846-10-git-send-email-pablo.de.lara.guarch@intel.com> (raw)
In-Reply-To: <1495639634-74846-1-git-send-email-pablo.de.lara.guarch@intel.com>

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
---
 drivers/crypto/qat/qat_crypto.c        |  1 +
 drivers/crypto/qat/qat_qp.c            |  8 +++++---
 drivers/crypto/qat/rte_qat_cryptodev.c | 32 ++++++++++++++++++++------------
 3 files changed, 26 insertions(+), 15 deletions(-)

diff --git a/drivers/crypto/qat/qat_crypto.c b/drivers/crypto/qat/qat_crypto.c
index c3dbd6c..c94a308 100644
--- a/drivers/crypto/qat/qat_crypto.c
+++ b/drivers/crypto/qat/qat_crypto.c
@@ -60,6 +60,7 @@
 #include <rte_spinlock.h>
 #include <rte_hexdump.h>
 #include <rte_crypto_sym.h>
+#include <rte_cryptodev_pci.h>
 #include <openssl/evp.h>
 
 #include "qat_logs.h"
diff --git a/drivers/crypto/qat/qat_qp.c b/drivers/crypto/qat/qat_qp.c
index a358ccd..3921c2e 100644
--- a/drivers/crypto/qat/qat_qp.c
+++ b/drivers/crypto/qat/qat_qp.c
@@ -36,6 +36,7 @@
 #include <rte_malloc.h>
 #include <rte_memzone.h>
 #include <rte_cryptodev_pmd.h>
+#include <rte_pci.h>
 #include <rte_atomic.h>
 #include <rte_prefetch.h>
 
@@ -205,7 +206,7 @@ int qat_crypto_sym_qp_setup(struct rte_cryptodev *dev, uint16_t queue_pair_id,
 	adf_configure_queues(qp);
 	adf_queue_arb_enable(&qp->tx_q, qp->mmap_bar_addr);
 	snprintf(op_cookie_pool_name, RTE_RING_NAMESIZE, "%s_qp_op_%d_%hu",
-		dev->driver->pci_drv.driver.name, dev->data->dev_id,
+		pci_dev->driver->driver.name, dev->data->dev_id,
 		queue_pair_id);
 
 	qp->op_cookie_pool = rte_mempool_lookup(op_cookie_pool_name);
@@ -355,11 +356,13 @@ qat_queue_create(struct rte_cryptodev *dev, struct qat_queue *queue,
 		return -EINVAL;
 	}
 
+	pci_dev = RTE_DEV_TO_PCI(dev->device);
+
 	/*
 	 * Allocate a memzone for the queue - create a unique name.
 	 */
 	snprintf(queue->memz_name, sizeof(queue->memz_name), "%s_%s_%d_%d_%d",
-		dev->driver->pci_drv.driver.name, "qp_mem", dev->data->dev_id,
+		pci_dev->driver->driver.name, "qp_mem", dev->data->dev_id,
 		queue->hw_bundle_number, queue->hw_queue_number);
 	qp_mz = queue_dma_zone_reserve(queue->memz_name, queue_size_bytes,
 			socket_id);
@@ -408,7 +411,6 @@ qat_queue_create(struct rte_cryptodev *dev, struct qat_queue *queue,
 
 	queue_base = BUILD_RING_BASE_ADDR(queue->base_phys_addr,
 					queue->queue_size);
-	pci_dev = RTE_DEV_TO_PCI(dev->device);
 
 	io_addr = pci_dev->mem_resource[0].addr;
 
diff --git a/drivers/crypto/qat/rte_qat_cryptodev.c b/drivers/crypto/qat/rte_qat_cryptodev.c
index 1bdd30d..78d50fb 100644
--- a/drivers/crypto/qat/rte_qat_cryptodev.c
+++ b/drivers/crypto/qat/rte_qat_cryptodev.c
@@ -35,6 +35,7 @@
 #include <rte_dev.h>
 #include <rte_malloc.h>
 #include <rte_cryptodev_pmd.h>
+#include <rte_cryptodev_pci.h>
 
 #include "qat_crypto.h"
 #include "qat_logs.h"
@@ -95,8 +96,7 @@ static const struct rte_pci_id pci_id_qat_map[] = {
 };
 
 static int
-crypto_qat_dev_init(__attribute__((unused)) struct rte_cryptodev_driver *crypto_drv,
-			struct rte_cryptodev *cryptodev)
+crypto_qat_dev_init(struct rte_cryptodev *cryptodev)
 {
 	struct qat_pmd_private *internals;
 
@@ -147,17 +147,25 @@ crypto_qat_dev_init(__attribute__((unused)) struct rte_cryptodev_driver *crypto_
 	return 0;
 }
 
-static struct rte_cryptodev_driver rte_qat_pmd = {
-	.pci_drv = {
-		.id_table = pci_id_qat_map,
-		.drv_flags = RTE_PCI_DRV_NEED_MAPPING,
-		.probe = rte_cryptodev_pci_probe,
-		.remove = rte_cryptodev_pci_remove,
-	},
-	.cryptodev_init = crypto_qat_dev_init,
-	.dev_private_size = sizeof(struct qat_pmd_private),
+static int crypto_qat_pci_probe(struct rte_pci_driver *pci_drv __rte_unused,
+	struct rte_pci_device *pci_dev)
+{
+	return rte_cryptodev_pci_generic_probe(pci_dev,
+		sizeof(struct qat_pmd_private), crypto_qat_dev_init);
+}
+
+static int crypto_qat_pci_remove(struct rte_pci_device *pci_dev)
+{
+	return rte_cryptodev_pci_generic_remove(pci_dev, NULL);
+}
+
+static struct rte_pci_driver rte_qat_pmd = {
+	.id_table = pci_id_qat_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING,
+	.probe = crypto_qat_pci_probe,
+	.remove = crypto_qat_pci_remove
 };
 
-RTE_PMD_REGISTER_PCI(CRYPTODEV_NAME_QAT_SYM_PMD, rte_qat_pmd.pci_drv);
+RTE_PMD_REGISTER_PCI(CRYPTODEV_NAME_QAT_SYM_PMD, rte_qat_pmd);
 RTE_PMD_REGISTER_PCI_TABLE(CRYPTODEV_NAME_QAT_SYM_PMD, pci_id_qat_map);
 
-- 
2.7.4

  parent reply	other threads:[~2017-05-24 15:27 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-24 15:27 [PATCH 00/12] Remove cryptodev driver Pablo de Lara
2017-05-24 15:27 ` [PATCH 01/12] cryptodev: store device pointer in virtual devices Pablo de Lara
2017-06-20 14:34   ` Declan Doherty
2017-06-20 17:29     ` De Lara Guarch, Pablo
2017-05-24 15:27 ` [PATCH 02/12] cryptodev: set driver name for all devices Pablo de Lara
2017-06-20 14:34   ` Declan Doherty
2017-05-24 15:27 ` [PATCH 03/12] cryptodev: rename device retrieval argument Pablo de Lara
2017-06-20 14:35   ` Declan Doherty
2017-06-20 17:28     ` De Lara Guarch, Pablo
2017-05-24 15:27 ` [PATCH 04/12] cryptodev: simplify device list retrieval logic Pablo de Lara
2017-06-20 14:35   ` Declan Doherty
2017-06-20 17:29     ` De Lara Guarch, Pablo
2017-05-24 15:27 ` [PATCH 05/12] cryptodev: only set PCI info when device is PCI Pablo de Lara
2017-06-20 14:36   ` Declan Doherty
2017-05-24 15:27 ` [PATCH 06/12] cryptodev: move vdev functions to a separate file Pablo de Lara
2017-06-20 14:36   ` Declan Doherty
2017-06-20 21:46     ` De Lara Guarch, Pablo
2017-05-24 15:27 ` [PATCH 07/12] cryptodev: release device if PCI device probing fails Pablo de Lara
2017-06-20 14:36   ` Declan Doherty
2017-05-24 15:27 ` [PATCH 08/12] cryptodev: add PCI driver helpers Pablo de Lara
2017-06-20 14:37   ` Declan Doherty
2017-05-24 15:27 ` Pablo de Lara [this message]
2017-06-20 14:37   ` [PATCH 09/12] crypto/qat: do not use cryptodev driver Declan Doherty
2017-05-24 15:27 ` [PATCH 10/12] crypto/dpaa2_sec: " Pablo de Lara
2017-05-24 15:27 ` [PATCH 11/12] cryptodev: remove unused PCI probe/remove Pablo de Lara
2017-06-20 14:37   ` Declan Doherty
2017-05-24 15:27 ` [PATCH 12/12] cryptodev: remove unused cryptodev driver Pablo de Lara
2017-06-20 14:37   ` Declan Doherty
2017-06-07 22:54 ` [PATCH 00/12] Remove " Gaëtan Rivet
2017-06-08 15:58   ` De Lara Guarch, Pablo
2017-06-09  9:58     ` Gaëtan Rivet
2017-06-09 10:01       ` De Lara Guarch, Pablo
2017-06-09 10:29         ` De Lara Guarch, Pablo
2017-06-21  6:28 ` [PATCH v2 00/12] Remove cryptodev driver structure Pablo de Lara
2017-06-21  6:28   ` [PATCH v2 01/12] cryptodev: store device pointer in virtual devices Pablo de Lara
2017-06-21  6:28   ` [PATCH v2 02/12] cryptodev: set driver name for all devices Pablo de Lara
2017-06-21  6:28   ` [PATCH v2 03/12] cryptodev: rename device retrieval argument Pablo de Lara
2017-06-23 12:54     ` Declan Doherty
2017-06-21  6:28   ` [PATCH v2 04/12] cryptodev: simplify device list retrieval logic Pablo de Lara
2017-06-21  6:28   ` [PATCH v2 05/12] cryptodev: only set PCI info when device is PCI Pablo de Lara
2017-06-21  6:28   ` [PATCH v2 06/12] cryptodev: move vdev functions to a separate file Pablo de Lara
2017-06-23 12:52     ` Declan Doherty
2017-06-26 23:30       ` Thomas Monjalon
2017-06-27  9:51         ` De Lara Guarch, Pablo
2017-06-27 14:28           ` Thomas Monjalon
2017-06-27 15:11             ` Ferruh Yigit
2017-06-27 16:09               ` Thomas Monjalon
2017-06-27 17:11                 ` De Lara Guarch, Pablo
2017-06-27 22:22                   ` De Lara Guarch, Pablo
2017-06-21  6:28   ` [PATCH v2 07/12] cryptodev: release device if PCI device probing fails Pablo de Lara
2017-06-21  6:28   ` [PATCH v2 08/12] cryptodev: add PCI driver helpers Pablo de Lara
2017-06-29 21:21     ` Thomas Monjalon
2017-06-21  6:28   ` [PATCH v2 09/12] crypto/qat: do not use cryptodev driver Pablo de Lara
2017-06-23 15:18   ` [PATCH v2 00/12] Remove cryptodev driver structure De Lara Guarch, Pablo
2017-06-21  6:30 ` [PATCH v2 10/12] crypto/dpaa2_sec: do not use cryptodev driver Pablo de Lara
2017-06-21  6:30 ` [PATCH v2 11/12] cryptodev: remove unused PCI probe/remove Pablo de Lara
2017-06-21  6:30 ` [PATCH v2 12/12] cryptodev: remove unused cryptodev driver Pablo de Lara

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=1495639634-74846-10-git-send-email-pablo.de.lara.guarch@intel.com \
    --to=pablo.de.lara.guarch@intel.com \
    --cc=declan.doherty@intel.com \
    --cc=dev@dpdk.org \
    --cc=thomas@monjalon.net \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.