The rte_cryptodev_vdev_pmd_init() is a helper for vdev-based drivers.
By moving the helper to the header we don't require rte_vdev.h at
build-time of the librte_cryptodev library. This is a preparation to
move the vdev bus into a standalone library.

Signed-off-by: Jan Blunck <jblu...@infradead.org>
---
 lib/librte_cryptodev/rte_cryptodev_pmd.c       | 29 --------------------------
 lib/librte_cryptodev/rte_cryptodev_vdev.h      | 29 ++++++++++++++++++++++++--
 lib/librte_cryptodev/rte_cryptodev_version.map |  1 -
 3 files changed, 27 insertions(+), 32 deletions(-)

diff --git a/lib/librte_cryptodev/rte_cryptodev_pmd.c 
b/lib/librte_cryptodev/rte_cryptodev_pmd.c
index ec6eeffa1..eaeddf74b 100644
--- a/lib/librte_cryptodev/rte_cryptodev_pmd.c
+++ b/lib/librte_cryptodev/rte_cryptodev_pmd.c
@@ -75,35 +75,6 @@ rte_cryptodev_vdev_parse_integer_arg(const char *key 
__rte_unused,
        return 0;
 }
 
-struct rte_cryptodev *
-rte_cryptodev_vdev_pmd_init(const char *name, size_t dev_private_size,
-               int socket_id, struct rte_vdev_device *vdev)
-{
-       struct rte_cryptodev *cryptodev;
-
-       /* allocate device structure */
-       cryptodev = rte_cryptodev_pmd_allocate(name, socket_id);
-       if (cryptodev == NULL)
-               return NULL;
-
-       /* allocate private device structure */
-       if (rte_eal_process_type() == RTE_PROC_PRIMARY) {
-               cryptodev->data->dev_private =
-                               rte_zmalloc_socket("cryptodev device private",
-                                               dev_private_size,
-                                               RTE_CACHE_LINE_SIZE,
-                                               socket_id);
-
-               if (cryptodev->data->dev_private == NULL)
-                       rte_panic("Cannot allocate memzone for private device"
-                                       " data");
-       }
-
-       cryptodev->device = &vdev->device;
-
-       return cryptodev;
-}
-
 int
 rte_cryptodev_vdev_parse_init_params(struct rte_crypto_vdev_init_params 
*params,
                const char *input_args)
diff --git a/lib/librte_cryptodev/rte_cryptodev_vdev.h 
b/lib/librte_cryptodev/rte_cryptodev_vdev.h
index 94ab9d33d..04d0796d4 100644
--- a/lib/librte_cryptodev/rte_cryptodev_vdev.h
+++ b/lib/librte_cryptodev/rte_cryptodev_vdev.h
@@ -78,9 +78,34 @@ struct rte_crypto_vdev_init_params {
  *   - Cryptodev pointer if device is successfully created.
  *   - NULL if device cannot be created.
  */
-struct rte_cryptodev *
+static inline struct rte_cryptodev *
 rte_cryptodev_vdev_pmd_init(const char *name, size_t dev_private_size,
-               int socket_id, struct rte_vdev_device *vdev);
+               int socket_id, struct rte_vdev_device *dev)
+{
+       struct rte_cryptodev *cryptodev;
+
+       /* allocate device structure */
+       cryptodev = rte_cryptodev_pmd_allocate(name, socket_id);
+       if (cryptodev == NULL)
+               return NULL;
+
+       /* allocate private device structure */
+       if (rte_eal_process_type() == RTE_PROC_PRIMARY) {
+               cryptodev->data->dev_private =
+                               rte_zmalloc_socket("cryptodev device private",
+                                               dev_private_size,
+                                               RTE_CACHE_LINE_SIZE,
+                                               socket_id);
+
+               if (cryptodev->data->dev_private == NULL)
+                       rte_panic("Cannot allocate memzone for private device"
+                                       " data");
+       }
+
+       cryptodev->device = &dev->device;
+
+       return cryptodev;
+}
 
 /**
  * @internal
diff --git a/lib/librte_cryptodev/rte_cryptodev_version.map 
b/lib/librte_cryptodev/rte_cryptodev_version.map
index e9ba88ac5..abdbbdada 100644
--- a/lib/librte_cryptodev/rte_cryptodev_version.map
+++ b/lib/librte_cryptodev/rte_cryptodev_version.map
@@ -74,7 +74,6 @@ DPDK_17.08 {
        rte_cryptodev_sym_session_init;
        rte_cryptodev_sym_session_clear;
        rte_cryptodev_vdev_parse_init_params;
-       rte_cryptodev_vdev_pmd_init;
        rte_crypto_aead_algorithm_strings;
        rte_crypto_aead_operation_strings;
 
-- 
2.13.2

Reply via email to