X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;ds=sidebyside;f=drivers%2Fcrypto%2Farmv8%2Frte_armv8_pmd.c;h=3d603a5ac3f4e92ede02c743ee033fc4768f1276;hb=131fe443469f1de5fda3614e20077fad93eae907;hp=d2b88a3e89bfd0426a5d9dfadbef9cdd07cb9428;hpb=c2fec022454375e273094918c94dda1bddd863c7;p=dpdk.git diff --git a/drivers/crypto/armv8/rte_armv8_pmd.c b/drivers/crypto/armv8/rte_armv8_pmd.c index d2b88a3e89..3d603a5ac3 100644 --- a/drivers/crypto/armv8/rte_armv8_pmd.c +++ b/drivers/crypto/armv8/rte_armv8_pmd.c @@ -44,7 +44,7 @@ #include "rte_armv8_pmd_private.h" -static int cryptodev_armv8_crypto_uninit(const char *name); +static int cryptodev_armv8_crypto_uninit(struct rte_vdev_device *vdev); /** * Pointers to the supported combined mode crypto functions are stored @@ -739,13 +739,15 @@ armv8_crypto_pmd_enqueue_burst(void *queue_pair, struct rte_crypto_op **ops, goto enqueue_err; } - retval = rte_ring_enqueue_burst(qp->processed_ops, (void *)ops, i); + retval = rte_ring_enqueue_burst(qp->processed_ops, (void *)ops, i, + NULL); qp->stats.enqueued_count += retval; return retval; enqueue_err: - retval = rte_ring_enqueue_burst(qp->processed_ops, (void *)ops, i); + retval = rte_ring_enqueue_burst(qp->processed_ops, (void *)ops, i, + NULL); if (ops[i] != NULL) ops[i]->status = RTE_CRYPTO_OP_STATUS_INVALID_ARGS; @@ -763,7 +765,7 @@ armv8_crypto_pmd_dequeue_burst(void *queue_pair, struct rte_crypto_op **ops, unsigned int nb_dequeued = 0; nb_dequeued = rte_ring_dequeue_burst(qp->processed_ops, - (void **)ops, nb_ops); + (void **)ops, nb_ops, NULL); qp->stats.dequeued_count += nb_dequeued; return nb_dequeued; @@ -771,11 +773,12 @@ armv8_crypto_pmd_dequeue_burst(void *queue_pair, struct rte_crypto_op **ops, /** Create ARMv8 crypto device */ static int -cryptodev_armv8_crypto_create(struct rte_crypto_vdev_init_params *init_params) +cryptodev_armv8_crypto_create(const char *name, + struct rte_vdev_device *vdev, + struct rte_crypto_vdev_init_params *init_params) { struct rte_cryptodev *dev; struct armv8_crypto_private *internals; - int ret; /* Check CPU for support for AES instruction set */ if (!rte_cpu_get_flag_enabled(RTE_CPUFLAG_AES)) { @@ -799,16 +802,9 @@ cryptodev_armv8_crypto_create(struct rte_crypto_vdev_init_params *init_params) return -EFAULT; } - if (init_params->name[0] == '\0') { - ret = rte_cryptodev_pmd_create_dev_name( - init_params->name, - RTE_STR(CRYPTODEV_NAME_ARMV8_PMD)); - - if (ret < 0) { - ARMV8_CRYPTO_LOG_ERR("failed to create unique name"); - return ret; - } - } + if (init_params->name[0] == '\0') + snprintf(init_params->name, sizeof(init_params->name), + "%s", name); dev = rte_cryptodev_pmd_virtual_dev_init(init_params->name, sizeof(struct armv8_crypto_private), @@ -843,14 +839,13 @@ init_error: "driver %s: cryptodev_armv8_crypto_create failed", init_params->name); - cryptodev_armv8_crypto_uninit(init_params->name); + cryptodev_armv8_crypto_uninit(vdev); return -EFAULT; } /** Initialise ARMv8 crypto device */ static int -cryptodev_armv8_crypto_init(const char *name, - const char *input_args) +cryptodev_armv8_crypto_init(struct rte_vdev_device *vdev) { struct rte_crypto_vdev_init_params init_params = { RTE_CRYPTODEV_VDEV_DEFAULT_MAX_NB_QUEUE_PAIRS, @@ -858,7 +853,13 @@ cryptodev_armv8_crypto_init(const char *name, rte_socket_id(), {0} }; + const char *name; + const char *input_args; + name = rte_vdev_device_name(vdev); + if (name == NULL) + return -EINVAL; + input_args = rte_vdev_device_args(vdev); rte_cryptodev_parse_vdev_init_params(&init_params, input_args); RTE_LOG(INFO, PMD, "Initialising %s on NUMA node %d\n", name, @@ -872,13 +873,16 @@ cryptodev_armv8_crypto_init(const char *name, RTE_LOG(INFO, PMD, " Max number of sessions = %d\n", init_params.max_nb_sessions); - return cryptodev_armv8_crypto_create(&init_params); + return cryptodev_armv8_crypto_create(name, vdev, &init_params); } /** Uninitialise ARMv8 crypto device */ static int -cryptodev_armv8_crypto_uninit(const char *name) +cryptodev_armv8_crypto_uninit(struct rte_vdev_device *vdev) { + const char *name; + + name = rte_vdev_device_name(vdev); if (name == NULL) return -EINVAL;