DPDK-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Gagandeep Singh <g.singh@nxp.com>
To: dev@dpdk.org, gakhil@marvell.com
Cc: hemant.agrawal@nxp.com, Gagandeep Singh <g.singh@nxp.com>
Subject: [PATCH v2 5/6] crypto/dpaa2_sec: add support for env variables
Date: Wed, 30 Sep 2026 12:38:08 +0530	[thread overview]
Message-ID: <20260930070809.1929564-6-g.singh@nxp.com> (raw)
In-Reply-To: <20260930070809.1929564-1-g.singh@nxp.com>

Allow driver configuration via environment variables as a fallback
when devargs are not provided. After processing devargs (or when
devargs are absent), check DRIVER_STRICT_ORDER and DRIVER_DUMP_MODE
environment variables to set en_loose_ordered and dpaa2_sec_dp_dump.

This lets users configure the driver without modifying EAL arguments,
useful in environments where command-line access is restricted.

Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
---
 doc/guides/cryptodevs/dpaa2_sec.rst         | 12 ++++++++-
 drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 27 ++++++++++++++++++---
 2 files changed, 34 insertions(+), 5 deletions(-)

diff --git a/doc/guides/cryptodevs/dpaa2_sec.rst b/doc/guides/cryptodevs/dpaa2_sec.rst
index f95c6282bb..925d3371bf 100644
--- a/doc/guides/cryptodevs/dpaa2_sec.rst
+++ b/doc/guides/cryptodevs/dpaa2_sec.rst
@@ -1,5 +1,5 @@
 ..  SPDX-License-Identifier: BSD-3-Clause
-    Copyright 2016 NXP
+    Copyright 2016,2026 NXP
 
 
 
@@ -188,9 +188,19 @@ along with other useful debugging information like session, queue, descriptor
 data.
 e.g. ``fslmc:dpseci.1,drv_dump_mode=1``
 
+Alternatively, set the environment variable ``drv_dump_mode`` to the desired
+mode value. The environment variable is used as a fallback when the devarg is
+not provided, which is useful in production environments where modifying EAL
+command-line arguments is not practical.
+e.g. ``export drv_dump_mode=1``
+
 Enable strict ordering
 ----------------------
 
 Use dev arg option ``drv_strict_order=1`` to enable strict ordering.
 By default, loose ordering is set for ordered schedule type event.
 e.g. ``fslmc:dpseci.1,drv_strict_order=1``
+
+Alternatively, set the environment variable ``drv_strict_order=1`` to enable
+strict ordering without modifying EAL arguments.
+e.g. ``export drv_strict_order=1``
diff --git a/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c b/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c
index 15152cc5a1..0ff54fb644 100644
--- a/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c
+++ b/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c
@@ -4366,25 +4366,44 @@ check_devargs_handler(const char *key, const char *value,
 static void
 dpaa2_sec_get_devargs(struct rte_cryptodev *cryptodev, const char *key)
 {
+	struct dpaa2_sec_dev_private *internals;
 	struct rte_kvargs *kvlist;
 	struct rte_devargs *devargs;
+	int ret;
+	char *env;
+
+	internals = cryptodev->data->dev_private;
 
 	devargs = cryptodev->device->devargs;
 	if (!devargs)
-		return;
+		goto env_set;
 
 	kvlist = rte_kvargs_parse(devargs->args, NULL);
 	if (!kvlist)
-		return;
+		goto env_set;
 
 	if (!rte_kvargs_count(kvlist, key)) {
 		rte_kvargs_free(kvlist);
-		return;
+		goto env_set;
 	}
 
-	rte_kvargs_process(kvlist, key,
+	ret = rte_kvargs_process(kvlist, key,
 			check_devargs_handler, (void *)cryptodev);
 	rte_kvargs_free(kvlist);
+	if (!ret)
+		return;
+
+env_set:
+	env = getenv(DRIVER_STRICT_ORDER);
+	if (env)
+		internals->en_loose_ordered = !atoi(env);
+
+	env = getenv(DRIVER_DUMP_MODE);
+	if (env) {
+		dpaa2_sec_dp_dump = atoi(env);
+		if (dpaa2_sec_dp_dump > DPAA2_SEC_DP_FULL_DUMP)
+			dpaa2_sec_dp_dump = DPAA2_SEC_DP_FULL_DUMP;
+	}
 }
 
 static int
-- 
2.25.1


  parent reply	other threads:[~2026-09-30  7:08 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-10 11:29 [PATCH 0/6] DPAA2 SEC related changes Gagandeep Singh
2026-08-10 11:29 ` [PATCH 1/6] crypto/dpaa2_sec: fix buffer overflow in GCM decrypt Gagandeep Singh
2026-08-10 11:29 ` [PATCH 2/6] crypto/dpaa2_sec: fix FLE pool leak on sec FD build failure Gagandeep Singh
2026-08-10 11:29 ` [PATCH 3/6] crypto/dpaa2_sec: support AES-GMAC Gagandeep Singh
2026-08-10 11:29 ` [PATCH 4/6] crypto/dpaa2_sec: increase ivsize range for AES-CTR Gagandeep Singh
2026-08-10 11:29 ` [PATCH 5/6] crypto/dpaa2_sec: add missing ECN capability Gagandeep Singh
2026-08-10 11:29 ` [PATCH 6/6] crypto/dpaa2_sec: add support for env variables Gagandeep Singh
2026-08-10 15:16   ` Stephen Hemminger
2026-08-11  7:50     ` Gagandeep Singh
2026-09-30  7:08 ` [PATCH v2 0/6] DPAA2 SEC related changes Gagandeep Singh
2026-09-30  7:08   ` [PATCH v2 1/6] crypto/dpaa2_sec: fix buffer overflow in GCM decrypt Gagandeep Singh
2026-09-30  7:08   ` [PATCH v2 2/6] crypto/dpaa2_sec: fix FLE pool leak on sec FD build failure Gagandeep Singh
2026-09-30  7:08   ` [PATCH v2 3/6] crypto/dpaa2_sec: increase ivsize range for AES-CTR Gagandeep Singh
2026-09-30  7:08   ` [PATCH v2 4/6] crypto/dpaa2_sec: add missing ECN capability Gagandeep Singh
2026-09-30  7:08   ` Gagandeep Singh [this message]
2026-10-05 18:37     ` [EXTERNAL] [PATCH v2 5/6] crypto/dpaa2_sec: add support for env variables Akhil Goyal
2026-10-06  4:15       ` Gagandeep Singh
2026-09-30  7:08   ` [PATCH v2 6/6] crypto/dpaa2_sec: support AES-GMAC Gagandeep Singh
2026-10-05 18:14     ` [EXTERNAL] " Akhil Goyal
2026-10-06 11:43   ` [PATCH v3 0/6] DPAA2 SEC related changes Gagandeep Singh
2026-10-06 11:43     ` [PATCH v3 1/6] crypto/dpaa2_sec: fix buffer overflow in GCM decrypt Gagandeep Singh
2026-10-06 11:43     ` [PATCH v3 2/6] crypto/dpaa2_sec: fix FLE pool leak on sec FD build failure Gagandeep Singh
2026-10-06 11:43     ` [PATCH v3 3/6] crypto/dpaa2_sec: increase ivsize range for AES-CTR Gagandeep Singh
2026-10-06 11:43     ` [PATCH v3 4/6] crypto/dpaa2_sec: add missing ECN capability Gagandeep Singh
2026-10-06 11:43     ` [PATCH v3 5/6] crypto/dpaa2_sec: add support for env variables Gagandeep Singh
2026-10-06 11:43     ` [PATCH v3 6/6] crypto/dpaa2_sec: support AES-GMAC Gagandeep Singh

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=20260930070809.1929564-6-g.singh@nxp.com \
    --to=g.singh@nxp.com \
    --cc=dev@dpdk.org \
    --cc=gakhil@marvell.com \
    --cc=hemant.agrawal@nxp.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