[Accel-config] [PATCH] accel-config: Provide compatibility for legacy mode driver names
ramesh.thomas at intel.com
| Newsgroups | dev.linux.lists.accel-config |
|---|---|
| Message-ID | <[email protected]> |
From: Ramesh Thomas <ramesh.thomas(a)intel.com>
Check for presence of /sys/bus/dsa/drivers/idxd and use legacy driver
names if not present.
Signed-off-by: Ramesh Thomas <ramesh.thomas(a)intel.com>
---
accfg/lib/libaccfg.c | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/accfg/lib/libaccfg.c b/accfg/lib/libaccfg.c
index f21cab5..592c22c 100644
--- a/accfg/lib/libaccfg.c
+++ b/accfg/lib/libaccfg.c
@@ -36,6 +36,13 @@
#define IDXD_WQ_DEVICE_PORTAL(d, w) ((d)->ctx->compat ? \
(d)->bus_type_str : accfg_wq_device_portals[(w)->type])
+char *accfg_wq_device_portals_legacy[] = {
+ [ACCFG_WQT_KERNEL] = "idxd-kernel-portal",
+ [ACCFG_WQT_USER] = "idxd-user-portal",
+ [ACCFG_WQT_MDEV] = "idxd-mdev-portal",
+ NULL
+};
+
char *accfg_wq_device_portals[] = {
[ACCFG_WQT_KERNEL] = "dmaengine",
[ACCFG_WQT_USER] = "user",
@@ -398,8 +405,15 @@ ACCFG_EXPORT int accfg_new(struct accfg_ctx **ctx)
c->refcount = 1;
log_init(&c->ctx, "libaccfg", "ACCFG_LOG");
c->timeout = 5000;
- if (access(IDXD_DRIVER_BIND_PATH, R_OK))
+ if (access(IDXD_DRIVER_BIND_PATH, R_OK)) {
c->compat = true;
+ accfg_wq_device_portals[ACCFG_WQT_KERNEL] =
+ accfg_wq_device_portals_legacy[ACCFG_WQT_KERNEL];
+ accfg_wq_device_portals[ACCFG_WQT_USER] =
+ accfg_wq_device_portals_legacy[ACCFG_WQT_USER];
+ accfg_wq_device_portals[ACCFG_WQT_MDEV] =
+ accfg_wq_device_portals_legacy[ACCFG_WQT_MDEV];
+ }
list_head_init(&c->devices);
--
2.26.3