From bc07fc6cdad6b1f8f083f37855d3e03904f054ed Mon Sep 17 00:00:00 2001 From: Firas Achkar Date: Tue, 9 Dec 2025 08:35:58 -0500 Subject: [PATCH 1/3] XVSEC: drv: remove duplicate includes remove duplicate include headers of fs.h and uaccess.h Signed-off-by: Firas Achkar --- XVSEC/linux-kernel/drv/xvsec_cdev.c | 2 -- XVSEC/linux-kernel/drv/xvsec_drv.c | 2 -- XVSEC/linux-kernel/drv/xvsec_mcap/us/xvsec_mcap_us.c | 2 -- XVSEC/linux-kernel/drv/xvsec_mcap/versal/xvsec_mcap_versal.c | 2 -- XVSEC/linux-kernel/drv/xvsec_mcap/xvsec_mcap.c | 2 -- XVSEC/linux-kernel/drv/xvsec_util.c | 2 -- 6 files changed, 12 deletions(-) diff --git a/XVSEC/linux-kernel/drv/xvsec_cdev.c b/XVSEC/linux-kernel/drv/xvsec_cdev.c index 5ff1aad2..a4d728a3 100644 --- a/XVSEC/linux-kernel/drv/xvsec_cdev.c +++ b/XVSEC/linux-kernel/drv/xvsec_cdev.c @@ -32,8 +32,6 @@ #include #include #include -#include -#include #include "xvsec_drv.h" #include "xvsec_drv_int.h" diff --git a/XVSEC/linux-kernel/drv/xvsec_drv.c b/XVSEC/linux-kernel/drv/xvsec_drv.c index 64d4b84c..9ff0794f 100644 --- a/XVSEC/linux-kernel/drv/xvsec_drv.c +++ b/XVSEC/linux-kernel/drv/xvsec_drv.c @@ -32,8 +32,6 @@ #include #include #include -#include -#include #include "version.h" diff --git a/XVSEC/linux-kernel/drv/xvsec_mcap/us/xvsec_mcap_us.c b/XVSEC/linux-kernel/drv/xvsec_mcap/us/xvsec_mcap_us.c index 81cb53de..6e560671 100644 --- a/XVSEC/linux-kernel/drv/xvsec_mcap/us/xvsec_mcap_us.c +++ b/XVSEC/linux-kernel/drv/xvsec_mcap/us/xvsec_mcap_us.c @@ -32,8 +32,6 @@ #include #include #include -#include -#include #include "xvsec_util.h" #include "xvsec_drv.h" diff --git a/XVSEC/linux-kernel/drv/xvsec_mcap/versal/xvsec_mcap_versal.c b/XVSEC/linux-kernel/drv/xvsec_mcap/versal/xvsec_mcap_versal.c index 5827f82b..ee44c2a6 100644 --- a/XVSEC/linux-kernel/drv/xvsec_mcap/versal/xvsec_mcap_versal.c +++ b/XVSEC/linux-kernel/drv/xvsec_mcap/versal/xvsec_mcap_versal.c @@ -33,8 +33,6 @@ #include #include #include -#include -#include #include "xvsec_drv.h" #include "xvsec_drv_int.h" diff --git a/XVSEC/linux-kernel/drv/xvsec_mcap/xvsec_mcap.c b/XVSEC/linux-kernel/drv/xvsec_mcap/xvsec_mcap.c index 0d898e86..b88dc44b 100644 --- a/XVSEC/linux-kernel/drv/xvsec_mcap/xvsec_mcap.c +++ b/XVSEC/linux-kernel/drv/xvsec_mcap/xvsec_mcap.c @@ -32,8 +32,6 @@ #include #include #include -#include -#include #include "xvsec_drv.h" #include "xvsec_drv_int.h" diff --git a/XVSEC/linux-kernel/drv/xvsec_util.c b/XVSEC/linux-kernel/drv/xvsec_util.c index ff16de80..39150e74 100644 --- a/XVSEC/linux-kernel/drv/xvsec_util.c +++ b/XVSEC/linux-kernel/drv/xvsec_util.c @@ -32,8 +32,6 @@ #include #include #include -#include -#include #include "xvsec_util.h" From ad794db59775d92e4bf855fb0a4ce36c3039e05a Mon Sep 17 00:00:00 2001 From: Firas Achkar Date: Tue, 9 Dec 2025 08:35:58 -0500 Subject: [PATCH 2/3] XVSEC: drv: fix class_create usage add Linux version conditional check, alongside class_create's new function signature Signed-off-by: Firas Achkar --- XVSEC/linux-kernel/drv/xvsec_drv.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/XVSEC/linux-kernel/drv/xvsec_drv.c b/XVSEC/linux-kernel/drv/xvsec_drv.c index 9ff0794f..50d48455 100644 --- a/XVSEC/linux-kernel/drv/xvsec_drv.c +++ b/XVSEC/linux-kernel/drv/xvsec_drv.c @@ -454,7 +454,11 @@ static int __init xvsec_drv_init(void) if (dev_count == 0) return 0; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 4, 0) + g_xvsec_class = class_create(XVSEC_NODE_NAME); +#else g_xvsec_class = class_create(THIS_MODULE, XVSEC_NODE_NAME); +#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(6, 4, 0) */ if (IS_ERR(g_xvsec_class)) { pr_err("failed to create class"); ret = -(PTR_ERR(g_xvsec_class)); From 9da4f8655b4ce2519e633b0d78ca84f98f368d77 Mon Sep 17 00:00:00 2001 From: Firas Achkar Date: Tue, 9 Dec 2025 09:00:21 -0500 Subject: [PATCH 3/3] XVSEC: drv: fix static EXPORT_SYMBOL_GPL compile error 1. remove static keyword from GPL exported function signatures, and 2. add exported functions' declarations to header, and 3. add copying of 'xvsec_drv_int.h' to 'all' Makefile target recipe, since this header contains declaration needed by users/callee of the exported functions, and 4. remove copying of none existing '.tmp*' artifacts from 'all' target recipe, since this was causing make errors Signed-off-by: Firas Achkar --- XVSEC/linux-kernel/drv/Makefile | 2 +- XVSEC/linux-kernel/drv/xvsec_drv.c | 5 ++--- XVSEC/linux-kernel/drv/xvsec_drv_int.h | 3 +++ 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/XVSEC/linux-kernel/drv/Makefile b/XVSEC/linux-kernel/drv/Makefile index 6e1a1b7f..570f2228 100644 --- a/XVSEC/linux-kernel/drv/Makefile +++ b/XVSEC/linux-kernel/drv/Makefile @@ -23,13 +23,13 @@ all: make -C /lib/modules/$(XVSEC_KVER)/build M=$(XVSEC_HOME) modules @mv *.ko $(module_path)/ @cp xvsec_drv.h $(module_path)/ + @cp xvsec_drv_int.h $(module_path)/ @cp ./xvsec_mcap/xvsec_mcap.h $(module_path)/ @mv *.o $(module_path)/obj/ @mv .*cmd $(module_path)/obj/ @mv *.symvers $(module_path)/obj/ @mv *.mod* $(module_path)/obj/ @mv *.order* $(module_path)/obj/ - @mv .tmp* $(module_path)/obj/ @mv ./xvsec_mcap/*.o $(module_path)/obj/xvsec_mcap/ @mv ./xvsec_mcap/us/*.o $(module_path)/obj/xvsec_mcap/us/ @mv ./xvsec_mcap/versal/*.o $(module_path)/obj/xvsec_mcap/versal/ diff --git a/XVSEC/linux-kernel/drv/xvsec_drv.c b/XVSEC/linux-kernel/drv/xvsec_drv.c index 50d48455..0146ca2e 100644 --- a/XVSEC/linux-kernel/drv/xvsec_drv.c +++ b/XVSEC/linux-kernel/drv/xvsec_drv.c @@ -33,7 +33,6 @@ #include #include - #include "version.h" #include "xvsec_drv.h" #include "xvsec_drv_int.h" @@ -359,7 +358,7 @@ static const struct file_operations xvsec_gen_fops = { }; -static int xvsec_initialize(struct pci_dev *pdev, struct context *dev_ctx) +int xvsec_initialize(struct pci_dev *pdev, struct context *dev_ctx) { int ret = 0; int status; @@ -403,7 +402,7 @@ static int xvsec_initialize(struct pci_dev *pdev, struct context *dev_ctx) } EXPORT_SYMBOL_GPL(xvsec_initialize); -static int xvsec_deinitialize(struct context *dev_ctx) +int xvsec_deinitialize(struct context *dev_ctx) { int ret = 0; uint16_t index; diff --git a/XVSEC/linux-kernel/drv/xvsec_drv_int.h b/XVSEC/linux-kernel/drv/xvsec_drv_int.h index 2d17240d..ef3cbab7 100644 --- a/XVSEC/linux-kernel/drv/xvsec_drv_int.h +++ b/XVSEC/linux-kernel/drv/xvsec_drv_int.h @@ -114,4 +114,7 @@ extern struct class *g_xvsec_class; int xvsec_mcap_module_init(struct vsec_context *dev_ctx); void xvsec_mcap_module_exit(struct vsec_context *dev_ctx); +extern int xvsec_initialize(struct pci_dev *, struct context *); +extern int xvsec_deinitialize(struct context *); + #endif /* __XVSEC_DRV_INT_H__ */