[PATCH i-g-t 07/10] lib/igt_kmod: Add rebind abstraction
Lucas De Marchi
lucas.demarchi at intel.com
Thu Apr 10 22:48:36 UTC 2025
Abstract the "set one file in the drivers dir" and share the
implementation with unbind/rebind.
Signed-off-by: Lucas De Marchi <lucas.demarchi at intel.com>
---
lib/igt_kmod.c | 11 +++++++++++
lib/igt_kmod.h | 2 ++
2 files changed, 13 insertions(+)
diff --git a/lib/igt_kmod.c b/lib/igt_kmod.c
index 14b6b957a..6d7f5705c 100644
--- a/lib/igt_kmod.c
+++ b/lib/igt_kmod.c
@@ -665,6 +665,17 @@ int igt_kmod_bind(const char *mod_name, const char *pci_device)
return ret;
}
+/**
+ * igt_kmod_rebind: Unbind driver from devices and bind it again
+ * @mod_name: name of the module to rebind
+ * @pci_device: device to rebind to
+ */
+int igt_kmod_rebind(const char *mod_name, const char *pci_device)
+{
+ return igt_kmod_unbind(mod_name, pci_device) ||
+ igt_kmod_bind(mod_name, pci_device);
+}
+
/**
* igt_intel_driver_unload:
*
diff --git a/lib/igt_kmod.h b/lib/igt_kmod.h
index e3a4ce671..905070897 100644
--- a/lib/igt_kmod.h
+++ b/lib/igt_kmod.h
@@ -39,6 +39,8 @@ int igt_kmod_unload(const char *mod_name);
int igt_kmod_unbind(const char *mod_name, const char *pci_device);
__attribute__((nonnull)) int igt_kmod_bind(const char *mod_name,
const char *pci_device);
+__attribute__((nonnull)) int igt_kmod_rebind(const char *mod_name,
+ const char *pci_device);
int igt_audio_driver_unload(char **whom);
--
2.49.0
More information about the igt-dev
mailing list