1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
From 555a4b3605e983e492f8c67e38a094933bc7efcd Mon Sep 17 00:00:00 2001
From: Yongxin Liu <yongxin.liu@windriver.com>
Date: Mon, 6 Jan 2020 09:26:39 +0800
Subject: [PATCH] qat: Link driver with object files instead of archived files
Due to mainline kernel commit 69ea912fda7 ("kbuild: remove unneeded
link_multi_deps"), modules cannot link *.a archives. So change .a to
.o files.
Upstream-Status: Inappropriate [Temporary workaround for kernel later than
v4.19-rc3]
Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
---
quickassist/Makefile | 2 ++
.../lookaside/access_layer/src/Makefile | 21 +++++++++----------
2 files changed, 12 insertions(+), 11 deletions(-)
diff --git a/quickassist/Makefile b/quickassist/Makefile
index 70a4353..5f6ee46 100644
--- a/quickassist/Makefile
+++ b/quickassist/Makefile
@@ -154,6 +154,7 @@ libosal_kernel: clean output_dir lac_lib_dir
echo ; echo 'Copying OSAL library';
cp $(OSAL_PATH)/src/linux/kernel_space/build/linux_2.6/kernel_space/libosal.a $(ICP_BUILD_OUTPUT)/libosal_kernel.a;
cp $(OSAL_PATH)/src/linux/kernel_space/build/linux_2.6/kernel_space/libosal.a $(LAC_LIB_DIR)/;
+ cp $(OSAL_PATH)/src/linux/kernel_space/build/linux_2.6/kernel_space/*.o $(LAC_LIB_DIR)/;
#build linux qat_direct layer
@@ -169,6 +170,7 @@ qat_kernel: clean output_dir lac_lib_dir libosal_kernel cmn_ko
echo ; echo 'Copying qat_kernel library';
cp $(KERNEL_PATH)/src/build/linux_2.6/kernel_space/libadf_kernel.a $(ICP_BUILD_OUTPUT)/;
cp $(KERNEL_PATH)/src/build/linux_2.6/kernel_space/libadf_kernel.a $(LAC_LIB_DIR)/;
+ cp $(KERNEL_PATH)/src/build/linux_2.6/kernel_space/*.o $(LAC_LIB_DIR)/;
lac_user: clean output_dir qat_direct libosal_user cmn_user cmn_ko
diff --git a/quickassist/lookaside/access_layer/src/Makefile b/quickassist/lookaside/access_layer/src/Makefile
index cc8cf2f..b8ec93c 100644
--- a/quickassist/lookaside/access_layer/src/Makefile
+++ b/quickassist/lookaside/access_layer/src/Makefile
@@ -112,13 +112,13 @@ LIB_STATIC=$(OUTPUT_NAME).a
LIB_SHARED=$(OUTPUT_NAME).so
# add the path and list of source libraries,
-ADDITIONAL_KERNEL_LIBS= common/utils/$(ICP_BUILD_OUTPUT_DIR)/utils.a \
- common/ctrl/$(ICP_BUILD_OUTPUT_DIR)/init.a \
- common/compression/$(ICP_BUILD_OUTPUT_DIR)/compression.a
+ADDITIONAL_KERNEL_LIBS= common/utils/$(ICP_BUILD_OUTPUT_DIR)/*.o \
+ common/ctrl/$(ICP_BUILD_OUTPUT_DIR)/*.o \
+ common/compression/$(ICP_BUILD_OUTPUT_DIR)/*.o
ifndef ICP_DC_ONLY
-ADDITIONAL_KERNEL_LIBS += common/crypto/sym/$(ICP_BUILD_OUTPUT_DIR)/sym.a \
- common/crypto/sym/qat/$(ICP_BUILD_OUTPUT_DIR)/sym_qat.a \
- common/crypto/sym/key/$(ICP_BUILD_OUTPUT_DIR)/sym_key.a
+ADDITIONAL_KERNEL_LIBS += common/crypto/sym/$(ICP_BUILD_OUTPUT_DIR)/*.o \
+ common/crypto/sym/qat/$(ICP_BUILD_OUTPUT_DIR)/*.o \
+ common/crypto/sym/key/$(ICP_BUILD_OUTPUT_DIR)/*.o
ifeq ($(ICP_OS_LEVEL), user_space)
ADDITIONAL_KERNEL_LIBS += common/crypto/asym/pke_common/$(ICP_BUILD_OUTPUT_DIR)/pke_common.a \
common/crypto/asym/diffie_hellman/$(ICP_BUILD_OUTPUT_DIR)/diffie_hellman.a \
@@ -128,14 +128,14 @@ ADDITIONAL_KERNEL_LIBS += common/crypto/asym/pke_common/$(ICP_BUILD_OUTPUT_DIR)/
common/crypto/asym/large_number/$(ICP_BUILD_OUTPUT_DIR)/ln.a \
common/crypto/asym/ecc/$(ICP_BUILD_OUTPUT_DIR)/elliptic_curve.a
else
-ADDITIONAL_KERNEL_LIBS += common/stubs/$(ICP_BUILD_OUTPUT_DIR)/lib_lac_stubs.a
+ADDITIONAL_KERNEL_LIBS += common/stubs/$(ICP_BUILD_OUTPUT_DIR)/*.o
endif
else
ifeq ($(ICP_OS_LEVEL), kernel_space)
-ADDITIONAL_KERNEL_LIBS += common/stubs/$(ICP_BUILD_OUTPUT_DIR)/lib_lac_stubs.a
+ADDITIONAL_KERNEL_LIBS += common/stubs/$(ICP_BUILD_OUTPUT_DIR)/*.o
endif
endif
-ADDITIONAL_KERNEL_LIBS += common/qat_comms/$(ICP_BUILD_OUTPUT_DIR)/qat_comms.a
+ADDITIONAL_KERNEL_LIBS += common/qat_comms/$(ICP_BUILD_OUTPUT_DIR)/*.o
ifeq ($(ICP_OS_LEVEL), user_space)
ifdef KPT
@@ -145,8 +145,7 @@ endif
endif
ifeq ($(ICP_OS_LEVEL), kernel_space)
- ADDITIONAL_OBJECTS = ../build/libs/libadf_kernel.a
- ADDITIONAL_OBJECTS += ../build/libs/libosal.a
+ ADDITIONAL_OBJECTS += ../build/libs/*.o
endif
ifeq ($(ICP_OS_LEVEL), user_space)
|