[Accel-config] [PATCH 2/6] accel-config: Add driver_name option to config_wq command

Ramesh Thomas <ramesh.thomas at intel.com> Mon, 31 Jan 2022 18:53:15 -0800
Newsgroups dev.linux.lists.accel-config
Message-ID <[email protected]>
Add an option to config_wq command to update driver_name attribute.

Signed-off-by: Ramesh Thomas <ramesh.thomas(a)intel.com>
---
 accfg/config_attr.c     | 14 ++++++++++++++
 accfg/libaccel_config.h |  1 +
 2 files changed, 15 insertions(+)

diff --git a/accfg/config_attr.c b/accfg/config_attr.c
index f9186d6..88922e7 100644
--- a/accfg/config_attr.c
+++ b/accfg/config_attr.c
@@ -226,6 +226,18 @@ static int accel_config_parse_wq_attribs(struct accfg_device *device,
 			return rc;
 	}
 
+	if (wq_params->driver_name) {
+		if (!accfg_wq_driver_name_validate(wq, wq_params->driver_name)) {
+			fprintf(stderr, "Invalid driver name \"%s\"\n",
+					wq_params->driver_name);
+			return -ENOENT;
+
+		}
+		rc = accfg_wq_set_str_driver_name(wq, wq_params->driver_name);
+		if (rc < 0)
+			return rc;
+	}
+
 	if (wq_params->wq_size != INT_MAX) {
 		rc = accfg_wq_set_size(wq, wq_params->wq_size);
 		if (rc < 0)
@@ -428,6 +440,8 @@ int cmd_config_wq(int argc, const char **argv, void *ctx)
 			   "specify type by wq"),
 		OPT_STRING('n', "name", &wq_param.name, "name",
 			   "specify name by wq"),
+		OPT_STRING('d', "driver-name", &wq_param.driver_name,
+				"driver name", "specify wq driver name"),
 		OPT_STRING('m', "mode", &wq_param.mode, "mode",
 			   "specify mode by wq"),
 		OPT_UINTEGER('c', "max-batch-size", &wq_param.max_batch_size,
diff --git a/accfg/libaccel_config.h b/accfg/libaccel_config.h
index 1aad3f3..8e7a74e 100644
--- a/accfg/libaccel_config.h
+++ b/accfg/libaccel_config.h
@@ -120,6 +120,7 @@ struct wq_parameters {
 	const char *mode;
 	const char *type;
 	const char *name;
+	const char *driver_name;
 };
 
 struct engine_parameters {
-- 
2.31.1