aesni_mb: remove parameters from config file
authorPablo de Lara <pablo.de.lara.guarch@intel.com>
Thu, 10 Mar 2016 17:14:09 +0000 (17:14 +0000)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Fri, 11 Mar 2016 09:47:33 +0000 (10:47 +0100)
Parse the device parameters from rte_eal_vdev_init,
instead of the config file, so user can change the parameters
at runtime.

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
config/common_base
drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c

index 4a678b3..192e198 100644 (file)
@@ -334,8 +334,6 @@ CONFIG_RTE_QAT_PMD_MAX_NB_SESSIONS=2048
 #
 CONFIG_RTE_LIBRTE_PMD_AESNI_MB=n
 CONFIG_RTE_LIBRTE_PMD_AESNI_MB_DEBUG=n
-CONFIG_RTE_AESNI_MB_PMD_MAX_NB_QUEUE_PAIRS=8
-CONFIG_RTE_AESNI_MB_PMD_MAX_NB_SESSIONS=2048
 
 #
 # Compile PMD for AESNI GCM device
index 4e3885c..a4b8807 100644 (file)
@@ -593,7 +593,8 @@ aesni_mb_pmd_dequeue_burst(void *queue_pair, struct rte_crypto_op **ops,
 static int cryptodev_aesni_mb_uninit(const char *name);
 
 static int
-cryptodev_aesni_mb_create(const char *name, unsigned socket_id)
+cryptodev_aesni_mb_create(const char *name,
+               struct rte_crypto_vdev_init_params *init_params)
 {
        struct rte_cryptodev *dev;
        char crypto_dev_name[RTE_CRYPTODEV_NAME_MAX_LEN];
@@ -627,7 +628,7 @@ cryptodev_aesni_mb_create(const char *name, unsigned socket_id)
 
 
        dev = rte_cryptodev_pmd_virtual_dev_init(crypto_dev_name,
-                       sizeof(struct aesni_mb_private), socket_id);
+                       sizeof(struct aesni_mb_private), init_params->socket_id);
        if (dev == NULL) {
                MB_LOG_ERR("failed to create cryptodev vdev");
                goto init_error;
@@ -662,8 +663,8 @@ cryptodev_aesni_mb_create(const char *name, unsigned socket_id)
        internals = dev->data->dev_private;
 
        internals->vector_mode = vector_mode;
-       internals->max_nb_queue_pairs = RTE_AESNI_MB_PMD_MAX_NB_QUEUE_PAIRS;
-       internals->max_nb_sessions = RTE_AESNI_MB_PMD_MAX_NB_SESSIONS;
+       internals->max_nb_queue_pairs = init_params->max_nb_queue_pairs;
+       internals->max_nb_sessions = init_params->max_nb_sessions;
 
        return 0;
 init_error:
@@ -676,11 +677,24 @@ init_error:
 
 static int
 cryptodev_aesni_mb_init(const char *name,
-               const char *params __rte_unused)
+               const char *input_args)
 {
-       RTE_LOG(INFO, PMD, "Initialising %s\n", name);
-
-       return cryptodev_aesni_mb_create(name, rte_socket_id());
+       struct rte_crypto_vdev_init_params init_params = {
+               RTE_CRYPTODEV_VDEV_DEFAULT_MAX_NB_QUEUE_PAIRS,
+               RTE_CRYPTODEV_VDEV_DEFAULT_MAX_NB_SESSIONS,
+               rte_socket_id()
+       };
+
+       rte_cryptodev_parse_vdev_init_params(&init_params, input_args);
+
+       RTE_LOG(INFO, PMD, "Initialising %s on NUMA node %d\n", name,
+                       init_params.socket_id);
+       RTE_LOG(INFO, PMD, "  Max number of queue pairs = %d\n",
+                       init_params.max_nb_queue_pairs);
+       RTE_LOG(INFO, PMD, "  Max number of sessions = %d\n",
+                       init_params.max_nb_sessions);
+
+       return cryptodev_aesni_mb_create(name, &init_params);
 }
 
 static int