summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorge Nita <george.nita@enea.com>2015-07-11 05:11:54 +0200
committerGeorge Nita <george.nita@enea.com>2015-07-11 05:11:54 +0200
commit40d72715c2d1b9f4a356a59eac16dd07648a4fbb (patch)
treede46d61bcd6f7a566ac190d84f9333f845331bae
parent8292f22ea94554d4d8ffb58ca96d8c3c12543dd0 (diff)
parenteeb5db0dc19b0ebf9e9afa813c5cd79a6ffec01d (diff)
downloadmeta-intel-40d72715c2d1b9f4a356a59eac16dd07648a4fbb.tar.gz
Merge remote-tracking branch 'origin/master' into master-enea
-rw-r--r--meta-crystalforest/recipes-extended/qat/qat16/qat16_2.3.0-34-qat-add-install-target-to-makefiles.patch343
-rw-r--r--meta-crystalforest/recipes-extended/qat/qat16/qat16_2.3.0-34-qat-fix-for-cross-compilation-issue.patch40
-rw-r--r--meta-crystalforest/recipes-extended/qat/qat16/qat16_2.3.0-34-qat-remove-local-path-from-makefile.patch31
-rw-r--r--meta-crystalforest/recipes-extended/qat/qat16_2.3.0-34.bb116
-rw-r--r--meta-crystalforest/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-qat_mem-build-qat_mem-ko-against-yocto-kernel-src.patch51
-rw-r--r--meta-crystalforest/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-Remove-rpaths-from-makefile.patch52
-rw-r--r--meta-crystalforest/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-qat-add-a-install-target-to-makefile.patch46
-rw-r--r--meta-crystalforest/recipes-extended/zlib-qat/zlib-qat_0.4.7-002.bb111
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk.inc132
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch52
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-add-sysroot-option-within-app-makefile.patch33
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-dpdk-defconfig-select-RTE_MACHINE-type.patch48
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-examples-add-config-variable-to-enable-disable-dpdk.patch44
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-dpdk-enable-build-config-VHOST-in-common_linuxapp-config.patch43
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-2.0.0-dpdk-enable-VHOST-and-ip_fragmentation-in-common_linuxapp.patch50
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk_1.8.0.bb35
-rw-r--r--meta-isg/common/recipes-extended/dpdk/dpdk_2.0.0.bb29
-rw-r--r--meta-isg/conf/layer.conf12
18 files changed, 1268 insertions, 0 deletions
diff --git a/meta-crystalforest/recipes-extended/qat/qat16/qat16_2.3.0-34-qat-add-install-target-to-makefiles.patch b/meta-crystalforest/recipes-extended/qat/qat16/qat16_2.3.0-34-qat-add-install-target-to-makefiles.patch
new file mode 100644
index 00000000..13e933ec
--- /dev/null
+++ b/meta-crystalforest/recipes-extended/qat/qat16/qat16_2.3.0-34-qat-add-install-target-to-makefiles.patch
@@ -0,0 +1,343 @@
1From 5c47f906182b19eee7a26c5f76b31c9bd5f29c78 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anujx.mittal@intel.com>
3Date: Wed, 8 Jul 2015 11:35:27 +0800
4Subject: [PATCH] qat: add install target to makefiles
5
6Upstream-Status: Inappropriate [Configuration]
7
8Added an install target to makefiles to help
9install ingredients at a proper path.
10
11Signed-off-by: Anuj Mittal <anujx.mittal@intel.com>
12---
13 quickassist/Makefile | 36 +++++-----
14 .../access_layer/src/sample_code/Makefile | 18 +++--
15 .../src/sample_code/functional/Makefile | 71 +++++++++++---------
16 3 files changed, 71 insertions(+), 54 deletions(-)
17
18diff --git a/quickassist/Makefile b/quickassist/Makefile
19index dcea692..01848e6 100644
20--- a/quickassist/Makefile
21+++ b/quickassist/Makefile
22@@ -104,7 +104,7 @@ export DRBG_POLL_AND_WAIT=1
23 ifdef WITH_CPA_MUX
24 ALL_TARGETS = clean lac_lib_dir libosal libosal_user qat_mux hal adf adf_user lac lac_user qat-fw install_scripts
25 else
26-ALL_TARGETS = clean lac_lib_dir libosal libosal_user hal adf adf_user lac lac_user qat-fw install_scripts
27+ALL_TARGETS = clean lac_lib_dir libosal libosal_user hal adf adf_user lac lac_user
28 endif
29 ICP_ARCH_USER?=`uname -m`
30
31@@ -116,7 +116,16 @@ all: $(ALL_TARGETS)
32 @echo 'Build Done';
33
34 user: lac_lib_dir libosal_user adf_user lac_user
35-kernel: lac_lib_dir libosal hal adf lac qat-fw install_scripts
36+kernel: lac_lib_dir libosal hal adf lac qat-fw
37+
38+install: qat-fw install_scripts
39+ @cp $(OSAL_PATH)/src/build/linux_2.6/user_space/libosal.a $(ICP_BUILD_OUTPUT)/$(DEST_LIBDIR);
40+ @cp $(OSAL_PATH)/src/build/linux_2.6/user_space/libosal.a $(ICP_BUILD_OUTPUT)/$(DEST_LIBDIR);
41+ @cp $(ADF_PATH)/build/linux_2.6/libadf_proxy.a $(ICP_BUILD_OUTPUT)/$(DEST_LIBDIR);
42+ @cp $(ADF_PATH)/build/linux_2.6/adf_ctl $(ICP_BUILD_OUTPUT)/etc/init.d/;
43+ @cp $(LAC_PATH)/src/build/linux_2.6/kernel_space/$(DRIVER) $(ICP_BUILD_OUTPUT)/lib/modules/$(QAT_KERNEL_VER)/kernel/drivers;
44+ @cp $(LAC_PATH)/src/build/linux_2.6/user_space/lib$(BASENAME).a $(ICP_BUILD_OUTPUT)/$(DEST_LIBDIR);
45+ @cp $(LAC_PATH)/src/build/linux_2.6/user_space/lib$(BASENAME)_s.so $(ICP_BUILD_OUTPUT)/$(DEST_LIBDIR);
46
47 install_scripts:
48 @echo ; echo 'Copying Install Scripts';
49@@ -124,10 +133,10 @@ ifdef WITH_CPA_MUX
50 @cp $(ICP_BUILDSYSTEM_PATH)/build_files/qat_service_mux $(ICP_BUILD_OUTPUT)/qat_service;
51 endif
52 ifndef WITH_CPA_MUX
53- @cp $(ICP_BUILDSYSTEM_PATH)/build_files/qat_service $(ICP_BUILD_OUTPUT)/;
54+ @cp $(ICP_BUILDSYSTEM_PATH)/build_files/qat_service $(ICP_BUILD_OUTPUT)/etc/init.d;
55 endif
56- @chmod 750 $(ICP_BUILD_OUTPUT)/qat_service;
57- @cp $(CONFIG_PATH)/dh895xcc_qa_dev0.conf $(ICP_BUILD_OUTPUT)/;
58+ @chmod 750 $(ICP_BUILD_OUTPUT)/etc/init.d/qat_service;
59+ @cp $(CONFIG_PATH)/dh895xcc_qa_dev0.conf $(ICP_BUILD_OUTPUT)/etc/;
60 # @cp $(CONFIG_PATH)/dh89xxcc_qa_dev1.conf $(ICP_BUILD_OUTPUT)/;
61 # @cp $(CONFIG_PATH)/dh89xxcc_qa_dev0_single_accel.conf $(ICP_BUILD_OUTPUT)/;
62
63@@ -146,7 +155,6 @@ libosal_user: output_dir lac_lib_dir
64 @echo ; echo 'Building OSAL for user space';
65 @cd $(OSAL_PATH)/src && $(MAKE) ARCH=$(ICP_ARCH_USER) ICP_ENV_DIR=$(ICP_TOP_ENV) OS_LEVEL=linux ICP_OS_LEVEL=user_space lib;\
66 echo ; echo 'Copying OSAL library';
67- cp $(OSAL_PATH)/src/build/linux_2.6/user_space/libosal.a $(ICP_BUILD_OUTPUT)/;
68
69 hal: output_dir libosal
70 @echo ; echo 'Building Hal Libs';
71@@ -171,7 +179,6 @@ libosal_uservf: output_dir lac_lib_dir
72 @echo ; echo 'Building OSAL for user space';
73 @cd $(OSAL_PATH)/src && export ICP_WITHOUT_IOMMU=1 && $(MAKE) ICP_ENV_DIR=$(ICP_TOP_ENV) OS_LEVEL=linux ICP_OS_LEVEL=user_space lib;\
74 echo ; echo 'Copying OSAL library';
75- cp $(OSAL_PATH)/src/build/linux_2.6/user_space/libosal.a $(ICP_BUILD_OUTPUT)/;
76
77 adfvf: output_dir lac_lib_dir libosalvf
78 @echo ; echo 'Building ADFVF';
79@@ -181,13 +188,10 @@ adfvf: output_dir lac_lib_dir libosalvf
80 adf_user: output_dir lac_lib_dir libosal_user
81 @echo ; echo 'Building user ADF';
82 @cd $(ADF_PATH) && export ADF_PLATFORM=ACCELDEV && export ICP_ENV_DIR=$(ICP_TOP_ENV) && export ONE_KO_RELEASE_PACKAGE=1 && ICP_OS_LEVEL=user_space && $(MAKE) ARCH=$(ICP_ARCH_USER) adf_user;
83- cp $(ADF_PATH)/build/linux_2.6/libadf_proxy.a $(ICP_BUILD_OUTPUT)/;
84- cp $(ADF_PATH)/build/linux_2.6/adf_ctl $(ICP_BUILD_OUTPUT)/;
85
86 lac: output_dir libosal hal adf
87 @echo ; echo 'Building LAC';
88 @cd $(LAC_PATH) && export ICP_ENV_DIR=$(ICP_TOP_ENV) && export ONE_KO_RELEASE_PACKAGE=1 && cd src && $(MAKE) ICP_OS_LEVEL=kernel_space OS_LEVEL=linux;
89- @cp $(LAC_PATH)/src/build/linux_2.6/kernel_space/$(DRIVER) $(ICP_BUILD_OUTPUT)/;
90
91 lacvf: output_dir libosalvf adfvf
92 @echo ; echo 'Building LACVF';
93@@ -195,20 +199,18 @@ ifdef WITH_CPA_MUX
94 @cp $(CPA_MUX_PATH)/Module.symvers $(LAC_PATH)/src/
95 endif
96 @cd $(LAC_PATH) && export ADF_PLATFORM=ACCELDEVVF && export ICP_ENV_DIR=$(ICP_TOP_ENV) && export ONE_KO_RELEASE_PACKAGE=1 && cd src && $(MAKE) ICP_OS_LEVEL=kernel_space OS_LEVEL=linux;
97- @cp $(LAC_PATH)/src/build/linux_2.6/kernel_space/$(BASENAME)_vf.ko $(ICP_BUILD_OUTPUT)/;
98
99 lac_user: output_dir libosal_user adf_user
100 @echo ; echo 'Building LAC in user space';
101 @cd $(LAC_PATH) && export ICP_ENV_DIR=$(ICP_TOP_ENV) && export ONE_KO_RELEASE_PACKAGE=1 && cd src && $(MAKE) ARCH=$(ICP_ARCH_USER) lib_static ICP_OS_LEVEL=user_space;
102- cp $(LAC_PATH)/src/build/linux_2.6/user_space/lib$(BASENAME).a $(ICP_BUILD_OUTPUT)/;
103 @cd $(LAC_PATH) && export ICP_ENV_DIR=$(ICP_TOP_ENV) && export ONE_KO_RELEASE_PACKAGE=1 && cd src && $(MAKE) ARCH=$(ICP_ARCH_USER) lib_shared ICP_OS_LEVEL=user_space;
104- cp $(LAC_PATH)/src/build/linux_2.6/user_space/lib$(BASENAME)_s.so $(ICP_BUILD_OUTPUT)/;
105+ cp $(LAC_PATH)/src/build/linux_2.6/user_space/lib$(BASENAME)_s.so $(ICP_BUILD_OUTPUT);
106
107 qat-fw: output_dir
108 @echo ; echo 'Copying QAT-FW Binary';
109- @cp -f $(QAT_FW_PATH)/icp_qat_ae.mof $(ICP_BUILD_OUTPUT)/mof_firmware.bin;
110+ @cp -f $(QAT_FW_PATH)/icp_qat_ae.mof $(ICP_BUILD_OUTPUT)/lib/firmware/$(ICP_FIRMWARE_DIR)/mof_firmware.bin;
111 @echo ; echo 'Copying MMP Binary';
112- @cp -f $(QAT_FW_PATH)/icp_qat_pke.mof $(ICP_BUILD_OUTPUT)/mmp_firmware.bin;
113+ @cp -f $(QAT_FW_PATH)/icp_qat_pke.mof $(ICP_BUILD_OUTPUT)/lib/firmware/$(ICP_FIRMWARE_DIR)/mmp_firmware.bin;
114
115 qat_mux: output_dir libosal
116 @echo ; echo 'Building qat_mux module'
117@@ -244,6 +246,10 @@ endif
118
119 output_dir:
120 test -d $(ICP_BUILD_OUTPUT) || mkdir -p $(ICP_BUILD_OUTPUT);
121+ test -d $(ICP_BUILD_OUTPUT)$(DEST_LIBDIR) || mkdir -p $(ICP_BUILD_OUTPUT)$(DEST_LIBDIR);
122+ test -d $(ICP_BUILD_OUTPUT)/lib/firmware/$(ICP_FIRMWARE_DIR) || mkdir -p $(ICP_BUILD_OUTPUT)/lib/firmware/$(ICP_FIRMWARE_DIR);
123+ test -d $(ICP_BUILD_OUTPUT)/lib/modules/$(QAT_KERNEL_VER)/kernel/drivers || mkdir -p $(ICP_BUILD_OUTPUT)/lib/modules/$(QAT_KERNEL_VER)/kernel/drivers;
124+ test -d $(ICP_BUILD_OUTPUT)/etc/init.d || mkdir -p $(ICP_BUILD_OUTPUT)/etc/init.d;
125
126 lac_lib_dir:
127 test -d $(LAC_LIB_DIR) || mkdir -p $(LAC_LIB_DIR);
128diff --git a/quickassist/lookaside/access_layer/src/sample_code/Makefile b/quickassist/lookaside/access_layer/src/sample_code/Makefile
129index 91c7373..8c6901a 100644
130--- a/quickassist/lookaside/access_layer/src/sample_code/Makefile
131+++ b/quickassist/lookaside/access_layer/src/sample_code/Makefile
132@@ -95,6 +95,7 @@ SAMPLE_PATH?=$(ICP_ROOT)/quickassist/lookaside/access_layer/src/sample_code
133 PERF_PATH?=$(ICP_ROOT)/quickassist/lookaside/access_layer/src/sample_code/performance
134 FIPS_PATH?=$(ICP_ROOT)/quickassist/lookaside/access_layer/src/sample_code/fips
135 FUNC_PATH=$(SAMPLE_PATH)/functional
136+FIPS_OUTPUT_NAME=fips_sample
137
138 #include the makefile with all the default and common Make variable definitions
139 include $(ICP_BUILDSYSTEM_PATH)/build_files/common.mk
140@@ -106,6 +107,8 @@ SAMPLE_BUILD_OUTPUT?=$(SAMPLE_PATH)/build
141
142 output_dir:
143 test -d $(SAMPLE_BUILD_OUTPUT) || mkdir $(SAMPLE_BUILD_OUTPUT);
144+ test -d $(SAMPLE_BUILD_OUTPUT)$(DEST_BINDIR) || mkdir -p $(SAMPLE_BUILD_OUTPUT)$(DEST_BINDIR)
145+
146 fips_code:
147 @if test -d $(FIPS_PATH); then echo ; echo 'Building FIPS Code'; fi;
148 @if test -d $(FIPS_PATH); \
149@@ -157,17 +160,13 @@ PERF_ALL=$(MEM_DRIVER) perf_user perf_kernel
150 perf_all: $(PERF_ALL)
151 @echo ; echo "Build output location $(SAMPLE_BUILD_OUTPUT)";
152
153-
154 perf_user: output_dir
155 @echo ; echo "Building perf_user";
156 @cd $(PERF_PATH) && $(MAKE) clean ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=user_space lib_shared exe
157- @cp $(PERF_PATH)/build/linux_2.6/user_space/$(PERF_OUTPUT_NAME)_s.so $(SAMPLE_BUILD_OUTPUT)/;
158- @cp $(PERF_PATH)/build/linux_2.6/user_space/$(PERF_OUTPUT_NAME) $(SAMPLE_BUILD_OUTPUT)/;
159
160 perf_kernel: output_dir
161 @echo ; echo "Building perf_kernel";
162 @cd $(PERF_PATH) && $(MAKE) ICP_OS_LEVEL=kernel_space
163- @cp $(PERF_PATH)/build/linux_2.6/$(ICP_OS_LEVEL)/$(PERF_OUTPUT_NAME).ko $(SAMPLE_BUILD_OUTPUT)/;
164
165 common_mem_drv: output_dir
166 @echo ; echo "Building common_mem_drv kernel space";
167@@ -180,12 +179,19 @@ common_mem_drv: output_dir
168 perf_qae: output_dir
169 @echo ; echo "Building perf_qae";
170 @cd $(CMN_ROOT)/linux/kernel_space && $(MAKE) ICP_OS_LEVEL=kernel_space
171- @cp $(CMN_ROOT)/linux/kernel_space/build/linux_2.6/$(ICP_OS_LEVEL)/$(CMN_MODULE_NAME).ko $(SAMPLE_BUILD_OUTPUT)/;
172-
173
174 func: output_dir
175 @cd $(FUNC_PATH) && $(MAKE) all;
176
177+install: output_dir
178+ @cp $(PERF_PATH)/build/linux_2.6/user_space/$(PERF_OUTPUT_NAME)_s.so $(SAMPLE_BUILD_OUTPUT)$(DEST_LIBDIR);
179+ @cp $(PERF_PATH)/build/linux_2.6/user_space/$(PERF_OUTPUT_NAME) $(SAMPLE_BUILD_OUTPUT)$(DEST_BINDIR);
180+ @cp $(PERF_PATH)/build/linux_2.6/$(ICP_OS_LEVEL)/$(PERF_OUTPUT_NAME).ko $(ICP_BUILD_OUTPUT)/lib/modules/$(QAT_KERNEL_VER)/kernel/drivers;
181+ @cp $(CMN_ROOT)/linux/kernel_space/build/linux_2.6/$(ICP_OS_LEVEL)/$(CMN_MODULE_NAME).ko $(ICP_BUILD_OUTPUT)/lib/modules/$(QAT_KERNEL_VER)/kernel/drivers;
182+ @cp $(FIPS_PATH)/build/linux_2.6/$(ICP_OS_LEVEL)/$(FIPS_OUTPUT_NAME).ko $(ICP_BUILD_OUTPUT)/lib/modules/$(QAT_KERNEL_VER)/kernel/drivers;
183+ @cp $(FIPS_PATH)/build/linux_2.6/user_space/$(FIPS_OUTPUT_NAME)_s.so $(SAMPLE_BUILD_OUTPUT)$(DEST_LIBDIR);
184+ @cp $(FIPS_PATH)/build/linux_2.6/user_space/$(FIPS_OUTPUT_NAME).a $(SAMPLE_BUILD_OUTPUT)$(DEST_LIBDIR);
185+ @cd $(FUNC_PATH) && $(MAKE) install;
186
187 all: $(MEM_DRIVER) fips_code perf_user perf_kernel func
188 perf: $(MEM_DRIVER) perf_kernel
189diff --git a/quickassist/lookaside/access_layer/src/sample_code/functional/Makefile b/quickassist/lookaside/access_layer/src/sample_code/functional/Makefile
190index 8944883..0355a70 100644
191--- a/quickassist/lookaside/access_layer/src/sample_code/functional/Makefile
192+++ b/quickassist/lookaside/access_layer/src/sample_code/functional/Makefile
193@@ -64,6 +64,8 @@ SYM_PATH?=$(SAMPLE_PATH)/sym
194 ASYM_PATH?=$(SAMPLE_PATH)/asym
195 ICP_API_DIR?=$(ICP_ROOT)/quickassist/include/
196 ICP_LAC_DIR?=$(ICP_ROOT)/quickassist/lookaside/access_layer/
197+BIN_INSTALLPATH=$(SAMPLE_BUILD_OUTPUT)$(DEST_BINDIR)/
198+MODULE_INSTALLPATH=$(SAMPLE_BUILD_OUTPUT)/lib/modules/$(QAT_KERNEL_VER)/kernel/drivers
199
200 ifeq ($(WITH_CMDRV),1)
201 CMN_ROOT?=$(ICP_ROOT)/quickassist/utilities/libqae_mem/
202@@ -110,6 +112,7 @@ SAMPLE_BUILD_OUTPUT?=$(SAMPLE_PATH)/build
203
204 output_dir:
205 test -d $(SAMPLE_BUILD_OUTPUT) || mkdir $(SAMPLE_BUILD_OUTPUT);
206+ test -d $(BIN_INSTALLPATH) || mkdir -p $(BIN_INSTALLPATH);
207
208 BUILD_DC=dc_dp_sample stateless_sample stateful_sample \
209 stateless_multi_op_checksum_sample
210@@ -119,23 +122,15 @@ dc: $(BUILD_DC)
211
212 dc_dp_sample: output_dir
213 @cd $(DC_PATH)/dc_dp_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
214- @cp $(DC_PATH)/dc_dp_sample/dc_dp_sample $(SAMPLE_BUILD_OUTPUT)/;
215- @cp $(DC_PATH)/dc_dp_sample/dc_dp_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
216
217 stateless_sample: output_dir
218 @cd $(DC_PATH)/stateless_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
219- @cp $(DC_PATH)/stateless_sample/dc_stateless_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
220- @cp $(DC_PATH)/stateless_sample/dc_stateless_sample $(SAMPLE_BUILD_OUTPUT)/;
221
222 stateful_sample: output_dir
223 @cd $(DC_PATH)/stateful_sample && $(MAKE) clean ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=user_space
224- @cp $(DC_PATH)/stateful_sample/dc_stateful_sample $(SAMPLE_BUILD_OUTPUT)/;
225- @cp $(DC_PATH)/stateful_sample/paper4 $(SAMPLE_BUILD_OUTPUT)/;
226
227 stateless_multi_op_checksum_sample: output_dir
228 @cd $(DC_PATH)/stateless_multi_op_checksum_sample && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
229- @cp $(DC_PATH)/stateless_multi_op_checksum_sample/dc_stateless_multi_op_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
230- @cp $(DC_PATH)/stateless_multi_op_checksum_sample/dc_stateless_multi_op_sample $(SAMPLE_BUILD_OUTPUT)/;
231
232 BUILD_SYN=algchaining_sample ccm_sample cipher_sample \
233 drbg_sample gcm_sample hash_file_sample \
234@@ -146,57 +141,36 @@ sym:$(BUILD_SYN)
235 @echo ; echo "Build sym component";
236 algchaining_sample: output_dir
237 @cd $(SYM_PATH)/alg_chaining_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
238- @cp $(SYM_PATH)/alg_chaining_sample/algchaining_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
239- @cp $(SYM_PATH)/alg_chaining_sample/algchaining_sample $(SAMPLE_BUILD_OUTPUT)/;
240
241 ccm_sample: output_dir
242 @cd $(SYM_PATH)/ccm_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
243- @cp $(SYM_PATH)/ccm_sample/ccm_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
244- @cp $(SYM_PATH)/ccm_sample/ccm_sample $(SAMPLE_BUILD_OUTPUT)/;
245
246 cipher_sample: output_dir
247 @cd $(SYM_PATH)/cipher_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
248- @cp $(SYM_PATH)/cipher_sample/cipher_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
249- @cp $(SYM_PATH)/cipher_sample/cipher_sample $(SAMPLE_BUILD_OUTPUT)/;
250
251 drbg_sample: output_dir
252 @cd $(SYM_PATH)/drbg_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
253- @cp $(SYM_PATH)/drbg_sample/drbg_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
254- @cp $(SYM_PATH)/drbg_sample/drbg_sample $(SAMPLE_BUILD_OUTPUT)/;
255
256 gcm_sample: output_dir
257 @cd $(SYM_PATH)/gcm_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
258- @cp $(SYM_PATH)/gcm_sample/gcm_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
259- @cp $(SYM_PATH)/gcm_sample/gcm_sample $(SAMPLE_BUILD_OUTPUT)/;
260
261 hash_file_sample: output_dir
262 @cd $(SYM_PATH)/hash_file_sample && $(MAKE) clean ICP_OS_LEVEL=user_space&& $(MAKE) ICP_OS_LEVEL=user_space
263- @cp $(SYM_PATH)/hash_file_sample/hash_file_sample $(SAMPLE_BUILD_OUTPUT)/;
264
265 hash_sample: output_dir
266 @cd $(SYM_PATH)/hash_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
267- @cp $(SYM_PATH)/hash_sample/hash_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
268- @cp $(SYM_PATH)/hash_sample/hash_sample $(SAMPLE_BUILD_OUTPUT)/;
269
270 ipsec_sample: output_dir
271 @cd $(SYM_PATH)/ipsec_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
272- @cp $(SYM_PATH)/ipsec_sample/ipsec_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
273- @cp $(SYM_PATH)/ipsec_sample/ipsec_sample $(SAMPLE_BUILD_OUTPUT)/;
274
275 nrbg_sample: output_dir
276 @cd $(SYM_PATH)/nrbg_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
277- @cp $(SYM_PATH)/nrbg_sample/nrbg_sample $(SAMPLE_BUILD_OUTPUT)/;
278- @cp $(SYM_PATH)/nrbg_sample/nrbg_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
279
280 ssl_sample: output_dir
281 @cd $(SYM_PATH)/ssl_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
282- @cp $(SYM_PATH)/ssl_sample/ssl_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
283- @cp $(SYM_PATH)/ssl_sample/ssl_sample $(SAMPLE_BUILD_OUTPUT)/;
284
285 sym_dp_sample: output_dir
286 @cd $(SYM_PATH)/symdp_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
287- @cp $(SYM_PATH)/symdp_sample/sym_dp_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
288- @cp $(SYM_PATH)/symdp_sample/sym_dp_sample $(SAMPLE_BUILD_OUTPUT)/;
289
290 BUILD_ASYM=diffie_hellman_sample prime_sample
291
292@@ -205,13 +179,44 @@ asym: $(BUILD_ASYM)
293
294 diffie_hellman_sample: output_dir
295 @cd $(ASYM_PATH)/diffie_hellman_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
296- @cp $(ASYM_PATH)/diffie_hellman_sample/dh_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
297- @cp $(ASYM_PATH)/diffie_hellman_sample/dh_sample $(SAMPLE_BUILD_OUTPUT)/;
298
299 prime_sample: output_dir
300 @cd $(ASYM_PATH)/prime_sample && $(MAKE) clean && $(MAKE) ICP_OS_LEVEL=user_space && $(MAKE) ICP_OS_LEVEL=kernel_space
301- @cp $(ASYM_PATH)/prime_sample/prime_sample.ko $(SAMPLE_BUILD_OUTPUT)/;
302- @cp $(ASYM_PATH)/prime_sample/prime_sample $(SAMPLE_BUILD_OUTPUT)/;
303+
304+install: output_dir
305+ @cp $(DC_PATH)/stateless_multi_op_checksum_sample/dc_stateless_multi_op_sample.ko $(MODULE_INSTALLPATH);
306+ @cp $(DC_PATH)/stateless_multi_op_checksum_sample/dc_stateless_multi_op_sample $(BIN_INSTALLPATH);
307+ @cp $(DC_PATH)/stateful_sample/dc_stateful_sample $(BIN_INSTALLPATH);
308+ @cp $(DC_PATH)/stateful_sample/paper4 $(BIN_INSTALLPATH);
309+ @cp $(DC_PATH)/dc_dp_sample/dc_dp_sample $(BIN_INSTALLPATH);
310+ @cp $(DC_PATH)/dc_dp_sample/dc_dp_sample.ko $(MODULE_INSTALLPATH);
311+ @cp $(DC_PATH)/stateless_sample/dc_stateless_sample.ko $(MODULE_INSTALLPATH);
312+ @cp $(DC_PATH)/stateless_sample/dc_stateless_sample $(BIN_INSTALLPATH);
313+ @cp $(ASYM_PATH)/prime_sample/prime_sample.ko $(MODULE_INSTALLPATH);
314+ @cp $(ASYM_PATH)/prime_sample/prime_sample $(BIN_INSTALLPATH);
315+ @cp $(ASYM_PATH)/diffie_hellman_sample/dh_sample.ko $(MODULE_INSTALLPATH);
316+ @cp $(ASYM_PATH)/diffie_hellman_sample/dh_sample $(BIN_INSTALLPATH);
317+ @cp $(SYM_PATH)/symdp_sample/sym_dp_sample.ko $(MODULE_INSTALLPATH);
318+ @cp $(SYM_PATH)/symdp_sample/sym_dp_sample $(BIN_INSTALLPATH);
319+ @cp $(SYM_PATH)/ssl_sample/ssl_sample.ko $(MODULE_INSTALLPATH);
320+ @cp $(SYM_PATH)/ssl_sample/ssl_sample $(BIN_INSTALLPATH);
321+ @cp $(SYM_PATH)/nrbg_sample/nrbg_sample $(BIN_INSTALLPATH);
322+ @cp $(SYM_PATH)/nrbg_sample/nrbg_sample.ko $(MODULE_INSTALLPATH);
323+ @cp $(SYM_PATH)/ipsec_sample/ipsec_sample.ko $(MODULE_INSTALLPATH);
324+ @cp $(SYM_PATH)/hash_file_sample/hash_file_sample $(BIN_INSTALLPATH);
325+ @cp $(SYM_PATH)/ipsec_sample/ipsec_sample $(BIN_INSTALLPATH);
326+ @cp $(SYM_PATH)/hash_sample/hash_sample.ko $(MODULE_INSTALLPATH);
327+ @cp $(SYM_PATH)/hash_sample/hash_sample $(BIN_INSTALLPATH);
328+ @cp $(SYM_PATH)/gcm_sample/gcm_sample.ko $(MODULE_INSTALLPATH);
329+ @cp $(SYM_PATH)/gcm_sample/gcm_sample $(BIN_INSTALLPATH);
330+ @cp $(SYM_PATH)/alg_chaining_sample/algchaining_sample.ko $(MODULE_INSTALLPATH);
331+ @cp $(SYM_PATH)/alg_chaining_sample/algchaining_sample $(BIN_INSTALLPATH);
332+ @cp $(SYM_PATH)/ccm_sample/ccm_sample.ko $(MODULE_INSTALLPATH);
333+ @cp $(SYM_PATH)/ccm_sample/ccm_sample $(BIN_INSTALLPATH);
334+ @cp $(SYM_PATH)/drbg_sample/drbg_sample.ko $(MODULE_INSTALLPATH);
335+ @cp $(SYM_PATH)/drbg_sample/drbg_sample $(BIN_INSTALLPATH);
336+ @cp $(SYM_PATH)/cipher_sample/cipher_sample.ko $(MODULE_INSTALLPATH);
337+ @cp $(SYM_PATH)/cipher_sample/cipher_sample $(BIN_INSTALLPATH);
338
339 CLEAN_DC=clean_dc_dp_sample clean_stateless_sample \
340 clean_stateful_sample \
341--
3421.7.9.5
343
diff --git a/meta-crystalforest/recipes-extended/qat/qat16/qat16_2.3.0-34-qat-fix-for-cross-compilation-issue.patch b/meta-crystalforest/recipes-extended/qat/qat16/qat16_2.3.0-34-qat-fix-for-cross-compilation-issue.patch
new file mode 100644
index 00000000..b7b77d05
--- /dev/null
+++ b/meta-crystalforest/recipes-extended/qat/qat16/qat16_2.3.0-34-qat-fix-for-cross-compilation-issue.patch
@@ -0,0 +1,40 @@
1From 340701a0f44e70eafd9029e9186b74e8783f2afd Mon Sep 17 00:00:00 2001
2From: venkatasubramanian pattu <venkatasubramanianx.pattu@intel.com>
3Date: Mon, 6 Jul 2015 15:57:20 +0800
4Subject: [PATCH] qat: fix for cross-compilation issue
5
6Upstream-Status: Inappropriate [Configuration]
7
8Ensure that we are not using host compiler.
9
10Signed-off-by: venkatasubramanian pattu <venkatasubramanianx.pattu@intel.com>
11Signed-off-by: Anuj Mittal <anujx.mittal@intel.com>
12---
13 .../dc/stateless_multi_op_checksum_sample/Makefile | 4 ++--
14 1 file changed, 2 insertions(+), 2 deletions(-)
15
16diff --git a/quickassist/lookaside/access_layer/src/sample_code/functional/dc/stateless_multi_op_checksum_sample/Makefile b/quickassist/lookaside/access_layer/src/sample_code/functional/dc/stateless_multi_op_checksum_sample/Makefile
17index 01590c3..315fca7 100644
18--- a/quickassist/lookaside/access_layer/src/sample_code/functional/dc/stateless_multi_op_checksum_sample/Makefile
19+++ b/quickassist/lookaside/access_layer/src/sample_code/functional/dc/stateless_multi_op_checksum_sample/Makefile
20@@ -111,7 +111,7 @@ else
21 ADDITIONAL_OBJECTS += $(ICP_BUILD_OUTPUT)/libicp_qa_al_s.so
22 endif
23
24-ADDITIONAL_OBJECTS += -L/usr/Lib -lpthread -lcrypto
25+ADDITIONAL_OBJECTS += -lpthread -lcrypto
26
27 USER_SOURCE_FILES = ../../common/cpa_sample_utils.c cpa_dc_stateless_multi_op_checksum_sample.c
28 USER_SOURCE_FILES += ../stateless_sample/cpa_dc_sample_user.c
29@@ -127,7 +127,7 @@ else
30 endif
31
32 default: clean
33- gcc -Wall -O1 $(USER_INCLUDES) -DUSER_SPACE $(EXTRA_CFLAGS) \
34+ $(CC) -Wall -O1 $(USER_INCLUDES) -DUSER_SPACE $(EXTRA_CFLAGS) \
35 $(USER_SOURCE_FILES) $(ADDITIONAL_OBJECTS) -o $(OUTPUT_NAME)
36
37 clean:
38--
391.7.9.5
40
diff --git a/meta-crystalforest/recipes-extended/qat/qat16/qat16_2.3.0-34-qat-remove-local-path-from-makefile.patch b/meta-crystalforest/recipes-extended/qat/qat16/qat16_2.3.0-34-qat-remove-local-path-from-makefile.patch
new file mode 100644
index 00000000..0021c0d7
--- /dev/null
+++ b/meta-crystalforest/recipes-extended/qat/qat16/qat16_2.3.0-34-qat-remove-local-path-from-makefile.patch
@@ -0,0 +1,31 @@
1From 5044a14a6b4192b771f16aa834f688c1fd1287dd Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anujx.mittal@intel.com>
3Date: Wed, 8 Jul 2015 11:11:32 +0800
4Subject: [PATCH] qat: remove local path from makefile
5
6Upstream-Status: Inappropriate [Configuration]
7
8Remove the host machine /usr/include path from makefile.
9
10Signed-off-by: Anuj Mittal <anujx.mittal@intel.com>
11---
12 .../build_files/env_files/linux_2.6_user_space.mk | 3 +--
13 1 file changed, 1 insertion(+), 2 deletions(-)
14
15diff --git a/quickassist/build_system/build_files/env_files/linux_2.6_user_space.mk b/quickassist/build_system/build_files/env_files/linux_2.6_user_space.mk
16index 1451f4a..719d1bb 100755
17--- a/quickassist/build_system/build_files/env_files/linux_2.6_user_space.mk
18+++ b/quickassist/build_system/build_files/env_files/linux_2.6_user_space.mk
19@@ -72,8 +72,7 @@
20 #
21 #-------------------------------------------------------------
22
23-INCLUDES+=-I/usr/include \
24- -I$(API_DIR) \
25+INCLUDES+=-I$(API_DIR) \
26 -I$(OSAL_DIR)/include \
27 -I$(OSAL_DIR)/src/linux/user_space/include
28
29--
301.7.9.5
31
diff --git a/meta-crystalforest/recipes-extended/qat/qat16_2.3.0-34.bb b/meta-crystalforest/recipes-extended/qat/qat16_2.3.0-34.bb
new file mode 100644
index 00000000..e6556cbe
--- /dev/null
+++ b/meta-crystalforest/recipes-extended/qat/qat16_2.3.0-34.bb
@@ -0,0 +1,116 @@
1DESCRIPTION = "Intel(r) QuickAssist Technology API"
2HOMEPAGE = "https://01.org/packet-processing/intel%C2%AE-quickassist-technology-drivers-and-patches"
3
4#Dual BSD and GPLv2 License
5LICENSE = "BSD & GPLv2"
6LIC_FILES_CHKSUM = "\
7 file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6 \
8 file://${COMMON_LICENSE_DIR}/BSD;md5=3775480a712fc46a69647678acb234cb \
9 "
10PV = "2.3.0-34"
11DEPENDS += "zlib openssl"
12SRC_URI="https://01.org/sites/default/files/page/qatmux.l.${PV}.tgz;name=qat \
13 file://qat16_2.3.0-34-qat-add-install-target-to-makefiles.patch \
14 file://qat16_2.3.0-34-qat-fix-for-cross-compilation-issue.patch \
15 file://qat16_2.3.0-34-qat-remove-local-path-from-makefile.patch \
16 "
17
18SRC_URI[qat.md5sum] = "9614bf598bc8e7eedc8adb6d29109033"
19SRC_URI[qat.sha256sum] = "1f9708de3c132258eaa488c82760f374b6b6838c85cafef2e8c61034fe0f7031"
20
21COMPATIBLE_MACHINE = "crystalforest"
22
23S = "${WORKDIR}/${ICP_DRIVER_TYPE}"
24ICP_TOOLS = "accelcomp"
25SAMPLE_CODE_DIR = "${S}/quickassist/lookaside/access_layer/src/sample_code"
26
27export ICP_DRIVER_TYPE = "QAT1.6"
28export ICP_FIRMWARE_DIR="dh895xcc"
29export ICP_ROOT = "${S}"
30export ICP_ENV_DIR = "${S}/quickassist/build_system/build_files/env_files"
31export ICP_BUILDSYSTEM_PATH = "${S}/quickassist/build_system"
32export ICP_TOOLS_TARGET = "${ICP_TOOLS}"
33export FUNC_PATH = "${ICP_ROOT}/quickassist/lookaside/access_layer/src/sample_code/functional"
34export KERNEL_SOURCE_ROOT = "${STAGING_KERNEL_DIR}"
35export ICP_BUILD_OUTPUT = "${D}"
36export DEST_LIBDIR = "${libdir}"
37export DEST_BINDIR = "${bindir}"
38export QAT_KERNEL_VER = "${KERNEL_VERSION}"
39export SAMPLE_BUILD_OUTPUT = "${D}"
40export MODULE_DIR = "${base_libdir}/modules/${KERNEL_VERSION}/kernel/drivers"
41
42inherit module
43inherit update-rc.d
44INITSCRIPT_NAME = "qat_service"
45
46PARALLEL_MAKE = ""
47
48#To get around the double slashes in paths in QAT makefiles
49PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src"
50
51do_unpack2() {
52 cd ${S}/
53 tar xzvf ${ICP_DRIVER_TYPE}.L.${PV}.tar.gz
54}
55
56addtask unpack2 after do_unpack before do_patch
57
58do_compile () {
59 export LD="${LD} --hash-style=gnu"
60 export MACHINE="${TARGET_ARCH}"
61 cd ${S}/quickassist
62 oe_runmake EXTRA_OEMAKE="'CFLAGS=${CFLAGS} -fPIC'"
63
64 cd ${SAMPLE_CODE_DIR}
65 touch ${SAMPLE_CODE_DIR}/performance/compression/calgary
66 touch ${SAMPLE_CODE_DIR}/performance/compression/canterbury
67
68 #build the whole sample code: fips, functional, performance
69 oe_runmake 'all'
70 oe_runmake 'fips_user_code'
71}
72
73do_install() {
74 cd ${S}/quickassist
75 oe_runmake install
76
77 cd ${SAMPLE_CODE_DIR}
78 oe_runmake install
79
80 install -d ${D}/etc/udev/rules.d \
81 ${D}${includedir} \
82 ${D}${includedir}/dc \
83 ${D}${includedir}/lac \
84 ${D}${sysconfdir}/dh895xcc \
85 ${D}${base_libdir}/firmware
86
87 echo 'KERNEL=="icp_adf_ctl" MODE="0600"' > ${D}/etc/udev/rules.d/00-dh895xcc_qa.rules
88 echo 'KERNEL=="icp_dev[0-9]*" MODE="0600"' >> ${D}/etc/udev/rules.d/00-dh895xcc_qa.rules
89 echo 'KERNEL=="icp_dev_mem?" MODE="0600"' >> ${D}/etc/udev/rules.d/00-dh895xcc_qa.rules
90
91 install -m 640 ${S}/quickassist/include/*.h ${D}${includedir}
92 install -m 640 ${S}/quickassist/include/dc/*.h ${D}${includedir}/dc/
93 install -m 640 ${S}/quickassist/include/lac/*.h ${D}${includedir}/lac/
94 install -m 640 ${S}/quickassist/lookaside/access_layer/include/*.h ${D}${includedir}
95
96 install -m 0755 ${SAMPLE_CODE_DIR}/performance/compression/calgary ${D}${base_libdir}/firmware
97 install -m 0755 ${SAMPLE_CODE_DIR}/performance/compression/canterbury ${D}${base_libdir}/firmware
98
99 install -m 660 ${S}/quickassist/config/dh* ${D}${sysconfdir}/dh895xcc
100}
101
102PACKAGES += "${PN}-app"
103
104FILES_${PN}-dev = "${includedir}"
105
106FILES_${PN} += "\
107 ${base_libdir}/firmware/ \
108 ${sysconfdir}/ \
109 ${sysconfdir}/udev/rules.d/ \
110 ${sysconfdir}/init.d/ \
111 ${libdir}/ \
112 "
113
114FILES_${PN}-dbg += "${sysconfdir}/init.d/.debug"
115
116FILES_${PN}-app += "${bindir}/*"
diff --git a/meta-crystalforest/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-qat_mem-build-qat_mem-ko-against-yocto-kernel-src.patch b/meta-crystalforest/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-qat_mem-build-qat_mem-ko-against-yocto-kernel-src.patch
new file mode 100644
index 00000000..9e774db2
--- /dev/null
+++ b/meta-crystalforest/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-qat_mem-build-qat_mem-ko-against-yocto-kernel-src.patch
@@ -0,0 +1,51 @@
1From aa65d69632142d24ec44ed4c2d66371e1a1be7b4 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anujx.mittal@intel.com>
3Date: Thu, 18 Jun 2015 11:56:08 +0800
4Subject: [PATCH] qat_mem: build qat_mem ko against yocto kernel src
5
6Upstream-Status: Inappropriate [Configuration]
7
8This tweaks the kernel source and build path in the makefile
9to make sure the module is built against the right source.
10
11Signed-off-by: Anuj Mittal <anujx.mittal@intel.com>
12---
13 contrib/qat/qat_mem/Makefile | 13 +++++--------
14 1 file changed, 5 insertions(+), 8 deletions(-)
15
16diff --git a/contrib/qat/qat_mem/Makefile b/contrib/qat/qat_mem/Makefile
17index ddf5b59..ad6d4a4 100644
18--- a/contrib/qat/qat_mem/Makefile
19+++ b/contrib/qat/qat_mem/Makefile
20@@ -61,16 +61,10 @@
21 #########################################################################
22
23 MODULENAME := qat_mem
24-KDIR := /lib/modules/$(shell uname -r)/build
25+KDIR := $(KERNEL_SOURCE_ROOT)
26 PWD := $(shell pwd)
27
28-ifeq ($(shell uname -r|grep -c grsec-WR), 1)
29-AUTO_CONF=/lib/modules/$(shell uname -r)/build/include/generated/autoconf.h
30-else
31-AUTO_CONF=/usr/src/kernels/$(shell uname -r)/include/linux/autoconf.h
32-endif
33-
34-CC := gcc -Wall -imacros $(AUTO_CONF)
35+CC := ${CC} -Wall -imacros $(KERNEL_BUILDDIR)/include/generated/autoconf.h
36
37 ifeq ($(KERNELRELEASE),)
38 all: $(MODULENAME)_test
39@@ -80,6 +74,9 @@ else
40 obj-m := $(MODULENAME).o
41 endif
42
43+modules_install:
44+ $(MAKE) -C $(KDIR) M=$(PWD) modules_install
45+
46 $(MODULENAME)_test: $(MODULENAME)_test.c
47 $(CC) -g -o $(MODULENAME)_test $(MODULENAME)_test.c
48
49--
501.7.9.5
51
diff --git a/meta-crystalforest/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-Remove-rpaths-from-makefile.patch b/meta-crystalforest/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-Remove-rpaths-from-makefile.patch
new file mode 100644
index 00000000..c3605112
--- /dev/null
+++ b/meta-crystalforest/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-Remove-rpaths-from-makefile.patch
@@ -0,0 +1,52 @@
1From aad2675c7bb635d8b7be47fa89a3ee87ba19d2e8 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anujx.mittal@intel.com>
3Date: Thu, 18 Jun 2015 11:46:17 +0800
4Subject: [PATCH] zlib: Remove rpaths from makefile
5
6Upstream-Status: Inappropriate [configuration]
7
8This removes references to RPATHS that are no longer
9necesary when building using bitbake.
10
11Signed-off-by: Anuj Mittal <anujx.mittal@intel.com>
12---
13 Makefile.in | 4 ++--
14 contrib/qat/qat_zlib_test/Makefile | 3 ---
15 2 files changed, 2 insertions(+), 5 deletions(-)
16
17diff --git a/Makefile.in b/Makefile.in
18index 94d8a80..cba5291 100644
19--- a/Makefile.in
20+++ b/Makefile.in
21@@ -59,12 +59,12 @@ ICP_LAC_API_DIR=$(ICP_API_DIR)/lac/
22 ICP_DC_API_DIR=$(ICP_API_DIR)/dc/
23 CFLAGS+=-D_GNU_SOURCE -I$(ICP_API_DIR) -I$(ICP_DC_API_DIR) -I$(ICP_LAC_API_DIR) -I$(ICP_SAL_API_DIR)
24 SFLAGS+=-D_GNU_SOURCE -I$(ICP_API_DIR) -I$(ICP_DC_API_DIR) -I$(ICP_LAC_API_DIR) -I$(ICP_SAL_API_DIR)
25-ADDITIONAL_LDFLAGS+=-Wl,-rpath,$(ZLIB_ROOT) -lz
26+#ADDITIONAL_LDFLAGS+=-Wl,-rpath,$(ZLIB_ROOT) -lz
27 SHARED_APP_FLAGS=-Wl,-rpath,$(ZLIB_ROOT) -L$(ZLIB_ROOT) -lz
28
29 ifdef ICP_BUILD_OUTPUT
30 TEST_LDFLAGS+=-L$(ICP_BUILD_OUTPUT)
31- ADDITIONAL_LDFLAGS+=-Wl,-rpath,$(ICP_BUILD_OUTPUT) -L$(ICP_BUILD_OUTPUT)
32+# ADDITIONAL_LDFLAGS+=-Wl,-rpath,$(ICP_BUILD_OUTPUT) -L$(ICP_BUILD_OUTPUT)
33 endif
34
35 ifdef ZLIB_DH895XCC
36diff --git a/contrib/qat/qat_zlib_test/Makefile b/contrib/qat/qat_zlib_test/Makefile
37index 8a29a92..ca31dd2 100644
38--- a/contrib/qat/qat_zlib_test/Makefile
39+++ b/contrib/qat/qat_zlib_test/Makefile
40@@ -84,9 +84,6 @@ OBJS = $(SRCS:%.c=%.o)
41 COVERAGE_OBJS =
42 EXE=
43 LIBQAT=
44-ifdef ICP_BUILD_OUTPUT
45- LIBQAT+= -Wl,-rpath,$(ICP_BUILD_OUTPUT) -L$(ICP_BUILD_OUTPUT)
46-endif
47
48 DRIVER=icp_qa_al
49 ifdef WITH_CPA_MUX
50--
511.7.9.5
52
diff --git a/meta-crystalforest/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-qat-add-a-install-target-to-makefile.patch b/meta-crystalforest/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-qat-add-a-install-target-to-makefile.patch
new file mode 100644
index 00000000..c7aec55a
--- /dev/null
+++ b/meta-crystalforest/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-qat-add-a-install-target-to-makefile.patch
@@ -0,0 +1,46 @@
1From d78121d790c4a248bc47d1c662791fe57ac4af38 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anujx.mittal@intel.com>
3Date: Thu, 18 Jun 2015 11:53:23 +0800
4Subject: [PATCH] zlib-qat: add a install target to makefile
5
6Upstream-Status: Inappropriate [Configuration]
7
8This adds an install target to qat_zlib_test and qat_mem makefiles
9to facilitate the installation of test binaries to {D}.
10
11Signed-off-by: Anuj Mittal <anujx.mittal@intel.com>
12---
13 contrib/qat/qat_mem/Makefile | 3 +++
14 contrib/qat/qat_zlib_test/Makefile | 3 +++
15 2 files changed, 6 insertions(+)
16
17diff --git a/contrib/qat/qat_mem/Makefile b/contrib/qat/qat_mem/Makefile
18index ad6d4a4..e4d77b6 100644
19--- a/contrib/qat/qat_mem/Makefile
20+++ b/contrib/qat/qat_mem/Makefile
21@@ -74,6 +74,9 @@ else
22 obj-m := $(MODULENAME).o
23 endif
24
25+install: modules_install
26+ cp qat_mem_test $(INSTALL_MOD_PATH)$(bindir)
27+
28 modules_install:
29 $(MAKE) -C $(KDIR) M=$(PWD) modules_install
30
31diff --git a/contrib/qat/qat_zlib_test/Makefile b/contrib/qat/qat_zlib_test/Makefile
32index ca31dd2..7da5ddd 100644
33--- a/contrib/qat/qat_zlib_test/Makefile
34+++ b/contrib/qat/qat_zlib_test/Makefile
35@@ -112,5 +112,8 @@ comptestappsh$(EXE): $(OBJS) Makefile
36 $(CC) -o comptestappsh $(OBJS) $(COVERAGE) \
37 $(SHAREDLIBQAT)
38
39+install:
40+ cp comptestapp $(DESTDIR)$(bindir)
41+
42 clean:
43 rm -f $(OBJS) $(COVERAGE_OBJS) comptestapp comptestappsh
44--
451.7.9.5
46
diff --git a/meta-crystalforest/recipes-extended/zlib-qat/zlib-qat_0.4.7-002.bb b/meta-crystalforest/recipes-extended/zlib-qat/zlib-qat_0.4.7-002.bb
new file mode 100644
index 00000000..e2d2c451
--- /dev/null
+++ b/meta-crystalforest/recipes-extended/zlib-qat/zlib-qat_0.4.7-002.bb
@@ -0,0 +1,111 @@
1SUMMARY = "Zlib QAT_MEM Memory Management Module for Intel Quick Assist \
2Technology"
3
4DESCRIPTION = "This software acelerates the data compression algorithm \
5in the zlib software library via the Intel QuickAssist Technology \
6implemented on Intel Communications Chipset 89xx and 895x Series based platforms."
7
8HOMEPAGE = "http://zlib.net/"
9SECTION = "libs"
10LICENSE = "Zlib & GPLv2 & BSD"
11LIC_FILES_CHKSUM = "file://${WORKDIR}/zlib-${ZLIB_VERSION}/zlib.h;beginline=4;endline=23;md5=fde612df1e5933c428b73844a0c494fd \
12 file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6 \
13 file://${COMMON_LICENSE_DIR}/BSD;md5=3775480a712fc46a69647678acb234cb"
14
15# For target side versions of openssl enable support for OCF Linux driver
16# if they are available.
17DEPENDS += "cryptodev-linux pkgconfig qat16"
18
19SRC_URI = "http://www.zlib.net/zlib-${ZLIB_VERSION}.tar.gz;name=zlib \
20 https://01.org/sites/default/files/page/zlib_shim_0.4.7-002_withdocumentation.zip;name=zlibqat \
21 file://zlib-qat-0.4.7-002-qat_mem-build-qat_mem-ko-against-yocto-kernel-src.patch \
22 file://zlib-qat-0.4.7-002-zlib-qat-add-a-install-target-to-makefile.patch \
23 file://zlib-qat-0.4.7-002-zlib-Remove-rpaths-from-makefile.patch \
24 "
25
26SRC_URI[zlib.md5sum] = "44d667c142d7cda120332623eab69f40"
27SRC_URI[zlib.sha256sum] = "36658cb768a54c1d4dec43c3116c27ed893e88b02ecfcb44f2166f9c0b7f2a0d"
28
29SRC_URI[zlibqat.md5sum] = "dfde8618198aa8d35ecc00d10dcc7000"
30SRC_URI[zlibqat.sha256sum] = "8e5786400bbc2a879ae705c864ec63b53ae019b4f2d1c94524a97223847b6e46"
31
32ZLIB_VERSION = "1.2.8"
33ZLIB_QAT_VERSION = "0.4.7-002"
34
35S = "${WORKDIR}/zlib-${ZLIB_VERSION}"
36
37export ICP_ROOT = "${S}"
38export ZLIB_ROOT = "${S}"
39export KERNEL_SOURCE_ROOT = "${STAGING_KERNEL_DIR}"
40export KERNEL_BUILDDIR = "${STAGING_KERNEL_BUILDDIR}"
41export ICP_LAC_API_DIR = "${STAGING_DIR_TARGET}${includedir}/lac"
42export ICP_DC_API_DIR = "${STAGING_DIR_TARGET}${includedir}/dc"
43export ZLIB_DH895XCC = "1"
44export ZLIB_MEMORY_DRIVER = "qat_mem"
45export ICP_BUILD_OUTPUT = "${STAGING_DIR_TARGET}"
46
47inherit module
48MEM_PATH = "${S}/contrib/qat"
49
50do_unpack2(){
51 cd ${WORKDIR}/
52 unzip zlib_quickassist_patch_l.0.4.7_002_stable.zip
53 cd zlib_quickassist_patch_l.0.4.7_002_devbranch
54 tar -xvzf zlib-1.2.8-qat.L.0.4.7-002.tar.gz
55 cp zlib-1.2.8-qat.patch ${WORKDIR}
56}
57
58addtask unpack2 after do_unpack before do_patch
59
60do_patch() {
61 cd ${S}
62 patch -p1 < ${WORKDIR}/zlib-1.2.8-qat.patch
63 patch -p1 < ${WORKDIR}/zlib-qat-0.4.7-002-qat_mem-build-qat_mem-ko-against-yocto-kernel-src.patch
64 patch -p1 < ${WORKDIR}/zlib-qat-0.4.7-002-zlib-qat-add-a-install-target-to-makefile.patch
65 patch -p1 < ${WORKDIR}/zlib-qat-0.4.7-002-zlib-Remove-rpaths-from-makefile.patch
66}
67
68do_configure() {
69 ./configure --prefix=${prefix} --shared --libdir=${libdir}
70}
71
72do_compile() {
73 unset CFLAGS CXXFLAGS
74 oe_runmake
75
76 cd ${S}/contrib/qat/qat_mem
77 oe_runmake
78
79 cd ${S}/contrib/qat/qat_zlib_test
80 oe_runmake
81}
82
83do_install() {
84 install -m 0755 -d ${D}${bindir}/
85 install -m 0755 -d ${D}${sysconfdir}/zlib_conf/
86
87 install -m 0755 zpipe ${D}${bindir}
88 install -m 0755 minigzip ${D}${bindir}
89
90 cd ${MEM_PATH}/qat_mem
91 oe_runmake INSTALL_MOD_PATH=${D} INSTALL_MOD_DIR="kernel/drivers" install
92
93 cd ${S}/contrib/qat/qat_zlib_test
94 oe_runmake DESTDIR=${D} install
95
96 install -m 660 ${MEM_PATH}/config/dh895xcc/multi_thread_optimized/* ${D}${sysconfdir}/zlib_conf/
97}
98
99PACKAGES += "${PN}-app"
100
101FILES_${PN} += " \
102 ${sysconfdir}/zlib_conf/ \
103 "
104
105FILES_${PN}-app += " \
106 ${bindir}/* \
107 "
108
109FILES_${PN}-dbg += " \
110 ${bindir}/.debug \
111 "
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk.inc b/meta-isg/common/recipes-extended/dpdk/dpdk.inc
new file mode 100644
index 00000000..85b88fa0
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk.inc
@@ -0,0 +1,132 @@
1DESCRIPTION = "Intel(r) Data Plane Development Kit"
2HOMEPAGE = "http://dpdk.org"
3LICENSE = "BSD & LGPLv2 & GPLv2"
4LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=751419260aa954499f7abaabaa882bbe"
5
6RDEPENDS_${PN} += "python-subprocess"
7DEPENDS = "virtual/kernel"
8do_configure[depends] += "virtual/kernel:do_shared_workdir"
9
10inherit module
11
12export MODULE_DIR="/lib/modules/${KERNEL_VERSION}/kernel/drivers/net"
13export RTE_SDK = "${S}"
14export RTE_TARGET="${@bb.utils.contains("TUNE_FEATURES", "corei7", "x86_64-ivshmem-linuxapp-gcc", "i686-native-linuxapp-gcc", d)}"
15
16export ICP_ROOT = "${PKG_CONFIG_SYSROOT_DIR}/usr/include"
17export ICP_LIB_ROOT= "${PKG_CONFIG_SYSROOT_DIR}/usr/lib"
18export RTE_KERNELDIR = "${STAGING_KERNEL_DIR}"
19export RTE_KERNELDIR_OUT = "${STAGING_KERNEL_BUILDDIR}"
20export INSTALL_PATH = "${prefix}/dpdk"
21export SYSROOTPATH = "--sysroot=${STAGING_DIR_HOST}"
22export DPDK_TARGET_MACH = "${@get_dpdk_target_mach(bb,d)}"
23
24# The list of intel Comms platforms and their target machine
25# process mapping. The supported target machine is listed under
26# dpdk/mk/machine
27def get_dpdk_target_mach(bb, d):
28 target_arch = d.getVar('MACHINE_ARCH', True)
29 multiarch_options = {
30 "mohonpeak64": "atm",
31 "mohonpeak32": "atm",
32 "crystalforest": "ivb",
33 "romley": "snd",
34 "romley-ivb": "ivb",
35 }
36
37 if target_arch in multiarch_options :
38 return multiarch_options[target_arch]
39 return ""
40
41do_configure () {
42 #############################################################
43 ### default value for prefix is "usr", unsetting it, so it
44 ### will not be concatenated in ${RTE_TARGET}/Makefile
45 ### which will cause compilation failure
46 #############################################################
47 unset prefix
48
49 make O=$RTE_TARGET T=$RTE_TARGET config
50}
51
52do_compile () {
53 unset LDFLAGS TARGET_LDFLAGS BUILD_LDFLAGS
54
55 cd ${S}/${RTE_TARGET}
56 oe_runmake EXTRA_LDFLAGS="-L${STAGING_LIBDIR}" \
57 EXTRA_CFLAGS="--sysroot=${STAGING_DIR_HOST} -I${STAGING_INCDIR}" \
58 CROSS="${TARGET_PREFIX}" \
59 prefix="" LDFLAGS="" WERROR_FLAGS="-w" V=1
60
61 cd ${S}/examples/
62 oe_runmake EXTRA_LDFLAGS="-L${STAGING_LIBDIR}" \
63 EXTRA_CFLAGS="--sysroot=${STAGING_DIR_HOST} -I${STAGING_INCDIR}" \
64 CROSS="${TARGET_PREFIX}" O="${S}/examples/$@/"
65}
66
67do_install () {
68
69 install -m 0755 -d ${D}/${INSTALL_PATH} \
70 ${D}/${INSTALL_PATH}/doc \
71 ${D}/${INSTALL_PATH}/tools \
72 ${D}/${INSTALL_PATH}/${RTE_TARGET} \
73 ${D}/${INSTALL_PATH}/${RTE_TARGET}/app \
74 ${D}${includedir} \
75 ${D}${includedir}/${ARCHDIR} \
76 ${D}${includedir}/exec-env \
77 ${D}${libdir} \
78 ${D}${MODULE_DIR}
79
80 install -m 0755 ${S}/${RTE_TARGET}/kmod/*.ko ${D}${MODULE_DIR}/
81
82 install -m 640 ${S}/${RTE_TARGET}/lib/*.a ${D}${libdir}
83
84 install -m 640 ${S}/${RTE_TARGET}/.config ${D}/${INSTALL_PATH}/${RTE_TARGET}/
85 install -m 640 ${S}/${RTE_TARGET}/include/*.h ${D}${includedir}/
86 install -m 640 ${S}/${RTE_TARGET}/include/${ARCHDIR}/*.h ${D}${includedir}/${ARCHDIR}/
87 install -m 640 ${S}/${RTE_TARGET}/include/exec-env/*.h ${D}${includedir}/exec-env/
88 install -m 0755 ${S}/tools/*.py ${D}/${INSTALL_PATH}/tools/
89
90 # Install applications
91 install -m 0755 ${S}/${RTE_TARGET}/app/* ${D}/${INSTALL_PATH}/${RTE_TARGET}/app/
92
93 # Install examples
94 for dirname in ${S}/examples/*
95 do
96 install -m 0755 -d ${D}/${INSTALL_PATH}/examples/`basename ${dirname}`
97
98 for appname in `find ${dirname} -regex ".*${EXAMPLES_BUILD_DIR}\/app\/[-0-9a-zA-Z0-9/_]*$"`
99 do
100 install -m 755 ${appname} ${D}/${INSTALL_PATH}/examples/`basename ${dirname}`/
101 done
102 done
103}
104
105PACKAGES += "${PN}-examples"
106
107FILES_${PN}-dbg += " \
108 ${INSTALL_PATH}/.debug \
109 ${INSTALL_PATH}/${RTE_TARGET}/app/.debug \
110 ${INSTALL_PATH}/${RTE_TARGET}/hostapp/.debug \
111 ${INSTALL_PATH}/${RTE_TARGET}/app/*.map \
112 ${INSTALL_PATH}/examples/*/.debug \
113 "
114
115FILES_${PN}-doc += "\
116 ${INSTALL_PATH}/doc \
117 "
118
119FILES_${PN}-dev += " \
120 ${INSTALL_PATH}/${RTE_TARGET}/.config \
121 ${includedir} \
122 ${includedir}/${ARCHDIR} \
123 ${includedir}/exec-env \
124 "
125
126FILES_${PN} += " ${INSTALL_PATH}/tools/ "
127
128FILES_${PN}-examples += " \
129 ${INSTALL_PATH}/${RTE_TARGET}/app/* \
130 ${INSTALL_PATH}/${RTE_TARGET}/hostapp/* \
131 ${INSTALL_PATH}/examples/* \
132 "
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch
new file mode 100644
index 00000000..bfef2218
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch
@@ -0,0 +1,52 @@
1From 69238a0b910bca43ef13154718a7a6c9b0dabe8a Mon Sep 17 00:00:00 2001
2From: Ong Boon Leong <boon.leong.ong@intel.com>
3Date: Thu, 25 Jun 2015 15:39:38 +0800
4Subject: [PATCH] dpdk v1.8.0: add RTE_KERNELDIR_OUT to split kernel build
5 artifact
6
7Introduce RTE_KERNELDIR_OUT to be the path to which kernel build
8artifacts are located. This is for matching the workflow change
9since Yocto Project v1.8 onwards whereby tmp/work-shared contains
10separate directories for kernel source and kernel artifacts.
11
12Upstream-Status: Inappropriate [configuration]
13
14Signed-off-by: Ong Boon Leong <boon.leong.ong@intel.com>
15---
16 mk/rte.module.mk | 6 +++---
17 1 file changed, 3 insertions(+), 3 deletions(-)
18
19diff --git a/mk/rte.module.mk b/mk/rte.module.mk
20index 7bf77c1..d4253a5 100644
21--- a/mk/rte.module.mk
22+++ b/mk/rte.module.mk
23@@ -77,7 +77,7 @@ build: _postbuild
24 # build module
25 $(MODULE).ko: $(SRCS_LINKS)
26 @if [ ! -f $(notdir Makefile) ]; then ln -nfs $(SRCDIR)/Makefile . ; fi
27- @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR) \
28+ @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR_OUT) \
29 CC=$(KERNELCC) CROSS_COMPILE=$(CROSS) V=$(if $V,1,0)
30
31 # install module in $(RTE_OUTPUT)/kmod
32@@ -88,7 +88,7 @@ $(RTE_OUTPUT)/kmod/$(MODULE).ko: $(MODULE).ko
33
34 # install module
35 modules_install:
36- @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR) \
37+ @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR_OUT) \
38 modules_install
39
40 .PHONY: clean
41@@ -98,7 +98,7 @@ clean: _postclean
42 .PHONY: doclean
43 doclean:
44 @if [ ! -f $(notdir Makefile) ]; then ln -nfs $(SRCDIR)/Makefile . ; fi
45- $(Q)$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR) clean
46+ $(Q)$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR_OUT) clean
47 @$(foreach FILE,$(SRCS-y) $(SRCS-n) $(SRCS-),\
48 if [ -h $(notdir $(FILE)) ]; then rm -f $(notdir $(FILE)) ; fi ;)
49 @if [ -h $(notdir Makefile) ]; then rm -f $(notdir Makefile) ; fi
50--
511.7.9.5
52
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-add-sysroot-option-within-app-makefile.patch b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-add-sysroot-option-within-app-makefile.patch
new file mode 100644
index 00000000..02c7dc3c
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-add-sysroot-option-within-app-makefile.patch
@@ -0,0 +1,33 @@
1From 3112250f6452215890fc7db73c8127e111af956f Mon Sep 17 00:00:00 2001
2From: Ong Boon Leong <boon.leong.ong@intel.com>
3Date: Thu, 2 Jul 2015 23:51:01 +0800
4Subject: [PATCH] dpdk v1.8.0: add --sysroot option within app makefile
5
6Upstream-Status: Inappropriate [configuration]
7
8in DPDK v1.8.0, rte.app.mk has been changed to add -Wl, to
9all items listed under EXTRA_LDFLAGS. It causes --sysroot=
10<path> to not setup correctly when we depends on gcc to setup
11for GNU ld.
12
13Signed-off-by: Ong Boon Leong <boon.leong.ong@intel.com>
14---
15 mk/rte.app.mk | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-)
17
18diff --git a/mk/rte.app.mk b/mk/rte.app.mk
19index e1a0dbf..9528588 100644
20--- a/mk/rte.app.mk
21+++ b/mk/rte.app.mk
22@@ -259,7 +259,7 @@ ifeq ($(LINK_USING_CC),1)
23 override EXTRA_LDFLAGS := $(call linkerprefix,$(EXTRA_LDFLAGS))
24 O_TO_EXE = $(CC) $(CFLAGS) $(LDFLAGS_$(@)) \
25 -Wl,-Map=$(@).map,--cref -o $@ $(OBJS-y) $(call linkerprefix,$(LDFLAGS)) \
26- $(EXTRA_LDFLAGS) $(call linkerprefix,$(LDLIBS))
27+ $(EXTRA_LDFLAGS) $(SYSROOTPATH) $(call linkerprefix,$(LDLIBS))
28 else
29 O_TO_EXE = $(LD) $(LDFLAGS) $(LDFLAGS_$(@)) $(EXTRA_LDFLAGS) \
30 -Map=$(@).map --cref -o $@ $(OBJS-y) $(LDLIBS)
31--
321.7.9.5
33
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-dpdk-defconfig-select-RTE_MACHINE-type.patch b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-dpdk-defconfig-select-RTE_MACHINE-type.patch
new file mode 100644
index 00000000..979541e9
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-dpdk-defconfig-select-RTE_MACHINE-type.patch
@@ -0,0 +1,48 @@
1From 6eaf6b1a61321acb824f9672c12d0e30a2110f52 Mon Sep 17 00:00:00 2001
2From: Ong Boon Leong <boon.leong.ong@intel.com>
3Date: Mon, 16 Mar 2015 11:10:43 +0800
4Subject: [PATCH] DPDK: defconfig: add selectable RTE_MACHINE option
5
6In order to make sure that DPDK build environment config can handle the
7package being built on different build machine for different target machine
8which will have different x86 architecture intrinsics than the build machine,
9we introduce DPDK_TARGET_MACH to be tunable from dpdk recipe. The machine
10type can be under mk/machine folder.
11
12Upstream-Status: Inappropriate [configuration]
13
14Signed-off-by: Ong Boon Leong <boon.leong.ong@intel.com>
15---
16 config/defconfig_i686-native-linuxapp-gcc | 2 +-
17 config/defconfig_x86_64-native-linuxapp-gcc | 2 +-
18 2 files changed, 2 insertions(+), 2 deletions(-)
19
20diff --git a/config/defconfig_i686-native-linuxapp-gcc b/config/defconfig_i686-native-linuxapp-gcc
21index a90de9b..c9a74a5 100644
22--- a/config/defconfig_i686-native-linuxapp-gcc
23+++ b/config/defconfig_i686-native-linuxapp-gcc
24@@ -32,7 +32,7 @@
25
26 #include "common_linuxapp"
27
28-CONFIG_RTE_MACHINE="native"
29+CONFIG_RTE_MACHINE=$(DPDK_TARGET_MACH)
30
31 CONFIG_RTE_ARCH="i686"
32 CONFIG_RTE_ARCH_I686=y
33diff --git a/config/defconfig_x86_64-native-linuxapp-gcc b/config/defconfig_x86_64-native-linuxapp-gcc
34index 60baf5b..0e4802d 100644
35--- a/config/defconfig_x86_64-native-linuxapp-gcc
36+++ b/config/defconfig_x86_64-native-linuxapp-gcc
37@@ -32,7 +32,7 @@
38
39 #include "common_linuxapp"
40
41-CONFIG_RTE_MACHINE="native"
42+CONFIG_RTE_MACHINE=$(DPDK_TARGET_MACH)
43
44 CONFIG_RTE_ARCH="x86_64"
45 CONFIG_RTE_ARCH_X86_64=y
46--
471.7.9.5
48
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-examples-add-config-variable-to-enable-disable-dpdk.patch b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-examples-add-config-variable-to-enable-disable-dpdk.patch
new file mode 100644
index 00000000..c86c1a1d
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-and-2.0.0-examples-add-config-variable-to-enable-disable-dpdk.patch
@@ -0,0 +1,44 @@
1From 54c95ca8f76f412c94a9f61e3756420ac554310b Mon Sep 17 00:00:00 2001
2From: Ong Boon Leong <boon.leong.ong@intel.com>
3Date: Thu, 12 Feb 2015 16:33:49 +0800
4Subject: [PATCH] examples: add config variable to enable/disable dpdk_qat
5
6Upstream-Status: Inappropriate [configuration]
7
8This patch adss following example build configs:
9
101) CONFIG_EXAMPLE_DPDK_QAT is used to control dpdk_qat example
11 by PACKAGECONFIG.
12
132) CONFIG_EXAMPLE_VM_POWER_MANAGER is used to control vm_power_manager
14 example by PACKAGECONFIG.
15
16Signed-off-by: Ong Boon Leong <boon.leong.ong@intel.com>
17---
18 examples/Makefile | 4 ++--
19 1 file changed, 2 insertions(+), 2 deletions(-)
20
21diff --git a/examples/Makefile b/examples/Makefile
22index 81f1d2f..7e9c7bd 100644
23--- a/examples/Makefile
24+++ b/examples/Makefile
25@@ -40,7 +40,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
26 DIRS-y += cmdline
27 DIRS-$(CONFIG_RTE_LIBRTE_DISTRIBUTOR) += distributor
28 ifneq ($(ICP_ROOT),)
29-DIRS-y += dpdk_qat
30+DIRS-$(CONFIG_EXAMPLE_DPDK_QAT) += dpdk_qat
31 endif
32 DIRS-y += exception_path
33 DIRS-y += helloworld
34@@ -68,6 +68,6 @@ DIRS-$(CONFIG_RTE_LIBRTE_VHOST) += vhost
35 DIRS-$(CONFIG_RTE_LIBRTE_XEN_DOM0) += vhost_xen
36 DIRS-y += vmdq
37 DIRS-y += vmdq_dcb
38-DIRS-y += vm_power_manager
39+DIRS-$(CONFIG_EXAMPLE_VM_POWER_MANAGER) += vm_power_manager
40
41 include $(RTE_SDK)/mk/rte.extsubdir.mk
42--
431.7.9.5
44
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-dpdk-enable-build-config-VHOST-in-common_linuxapp-config.patch b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-dpdk-enable-build-config-VHOST-in-common_linuxapp-config.patch
new file mode 100644
index 00000000..e8ded8d0
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-1.8.0-dpdk-enable-build-config-VHOST-in-common_linuxapp-config.patch
@@ -0,0 +1,43 @@
1From c1a59d62f2aa7656060d8ebcc8e45e852d931ff1 Mon Sep 17 00:00:00 2001
2From: Ong Boon Leong <boon.leong.ong@intel.com>
3Date: Tue, 17 Feb 2015 00:23:12 +0800
4Subject: [PATCH] dpdk: enable VHOST build config in common_linuxapp config
5
6Introduce CONFIG_VHOST_ENABLED for package config selection purpose in
7building vhost feature.
8
9Upstream-Status: Inappropriate [configuration]
10
11Signed-off-by: Ong Boon Leong <boon.leong.ong@intel.com>
12---
13 config/common_linuxapp | 6 +++---
14 1 file changed, 3 insertions(+), 3 deletions(-)
15
16diff --git a/config/common_linuxapp b/config/common_linuxapp
17index 2f9643b..67f5edb 100644
18--- a/config/common_linuxapp
19+++ b/config/common_linuxapp
20@@ -361,9 +361,9 @@ CONFIG_RTE_LIBRTE_PIPELINE=y
21 #
22 CONFIG_RTE_LIBRTE_KNI=y
23 CONFIG_RTE_KNI_KO_DEBUG=n
24-CONFIG_RTE_KNI_VHOST=n
25+CONFIG_RTE_KNI_VHOST=$(CONFIG_VHOST_ENABLED)
26 CONFIG_RTE_KNI_VHOST_MAX_CACHE_SIZE=1024
27-CONFIG_RTE_KNI_VHOST_VNET_HDR_EN=n
28+CONFIG_RTE_KNI_VHOST_VNET_HDR_EN=$(CONFIG_VHOST_ENABLED)
29 CONFIG_RTE_KNI_VHOST_DEBUG_RX=n
30 CONFIG_RTE_KNI_VHOST_DEBUG_TX=n
31
32@@ -372,7 +372,7 @@ CONFIG_RTE_KNI_VHOST_DEBUG_TX=n
33 # fuse-devel is needed to run vhost.
34 # fuse-devel enables user space char driver development
35 #
36-CONFIG_RTE_LIBRTE_VHOST=n
37+CONFIG_RTE_LIBRTE_VHOST=$(CONFIG_VHOST_ENABLED)
38 CONFIG_RTE_LIBRTE_VHOST_DEBUG=n
39
40 #
41--
421.7.9.5
43
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-2.0.0-dpdk-enable-VHOST-and-ip_fragmentation-in-common_linuxapp.patch b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-2.0.0-dpdk-enable-VHOST-and-ip_fragmentation-in-common_linuxapp.patch
new file mode 100644
index 00000000..45ce5e05
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk/dpdk-2.0.0-dpdk-enable-VHOST-and-ip_fragmentation-in-common_linuxapp.patch
@@ -0,0 +1,50 @@
1From 3d3c03d947394696565b3bb7bed8c900de057a28 Mon Sep 17 00:00:00 2001
2From: WU CHIA CHUAN <chia.chuan.wu@intel.com>
3Date: Thu, 2 Jul 2015 15:59:18 +0800
4Subject: [PATCH] dpdk enable VHOST and ip_fragmentation in common_linuxapp config
5
6Introduce CONFIG_VHOST_ENABLED for package config selection purpose in
7building vhost feature.
8
9Upstream-Status: Inappropriate [configuration]
10
11Signed-off-by: WU CHIA CHUAN <chia.chuan.wu@intel.com>
12---
13 config/common_linuxapp | 11 ++++++++---
14 1 file changed, 8 insertions(+), 3 deletions(-)
15
16diff --git a/config/common_linuxapp b/config/common_linuxapp
17index 0b25f34..000f950 100644
18--- a/config/common_linuxapp
19+++ b/config/common_linuxapp
20@@ -406,19 +406,24 @@ CONFIG_RTE_LIBRTE_PIPELINE=y
21 CONFIG_RTE_LIBRTE_KNI=y
22 CONFIG_RTE_KNI_PREEMPT_DEFAULT=y
23 CONFIG_RTE_KNI_KO_DEBUG=n
24-CONFIG_RTE_KNI_VHOST=n
25+CONFIG_RTE_KNI_VHOST=$(CONFIG_VHOST_ENABLED)
26 CONFIG_RTE_KNI_VHOST_MAX_CACHE_SIZE=1024
27-CONFIG_RTE_KNI_VHOST_VNET_HDR_EN=n
28+CONFIG_RTE_KNI_VHOST_VNET_HDR_EN=$(CONFIG_VHOST_ENABLED)
29 CONFIG_RTE_KNI_VHOST_DEBUG_RX=n
30 CONFIG_RTE_KNI_VHOST_DEBUG_TX=n
31
32 #
33+# Compile ip_fragmentation
34+#
35+CONFIG_RTE_IP_FRAG=y
36+
37+#
38 # Compile vhost library
39 # fuse-devel is needed to run vhost-cuse.
40 # fuse-devel enables user space char driver development
41 # vhost-user is turned on by default.
42 #
43-CONFIG_RTE_LIBRTE_VHOST=n
44+CONFIG_RTE_LIBRTE_VHOST=$(CONFIG_VHOST_ENABLED)
45 CONFIG_RTE_LIBRTE_VHOST_USER=y
46 CONFIG_RTE_LIBRTE_VHOST_DEBUG=n
47
48--
491.7.9.5
50
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk_1.8.0.bb b/meta-isg/common/recipes-extended/dpdk/dpdk_1.8.0.bb
new file mode 100644
index 00000000..5265a9cf
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk_1.8.0.bb
@@ -0,0 +1,35 @@
1include dpdk.inc
2
3SRC_URI = "http://dpdk.org/browse/dpdk/snapshot/dpdk-${PV}.tar.gz;name=dpdk \
4 file://dpdk-1.8.0-dpdk-enable-build-config-VHOST-in-common_linuxapp-config.patch \
5 file://dpdk-1.8.0-and-2.0.0-examples-add-config-variable-to-enable-disable-dpdk.patch \
6 file://dpdk-1.8.0-and-2.0.0-add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch \
7 file://dpdk-1.8.0-and-2.0.0-add-sysroot-option-within-app-makefile.patch \
8 file://dpdk-1.8.0-and-2.0.0-dpdk-defconfig-select-RTE_MACHINE-type.patch \
9 "
10
11SRC_URI[dpdk.md5sum] = "11ad8785aaa869cc87265bcb8d828f22"
12SRC_URI[dpdk.sha256sum] = "9f5386830bd999355182e20408f3fc2cfa0802a4497fdded8d43202feede1939"
13
14export EXAMPLES_BUILD_DIR = "${RTE_TARGET}"
15export ARCHDIR = "generic"
16
17# dpdk example apps dpdk_qat and vhost have dependancy on fuse and qat.
18# fuse is in meta-filesystems and qat is not yet upstreamed.
19# So adding mechanism to explicitly disable the use of fuse and qat.
20# To enable, uncomment the below line or include in .bbappend.
21# PACKAGECONFIG ?= " dpdk_qat vhost libvirt"
22
23PACKAGECONFIG[dpdk_qat] = ",,qat"
24PACKAGECONFIG[vhost] = ",,fuse"
25PACKAGECONFIG[libvirt] = ",,libvirt"
26
27export CONFIG_EXAMPLE_DPDK_QAT = "${@base_contains('PACKAGECONFIG', 'dpdk_qat', 'y', 'n', d)}"
28export CONFIG_EXAMPLE_VM_POWER_MANAGER = "${@base_contains('PACKAGECONFIG', 'libvirt', 'y', 'n', d)}"
29export CONFIG_VHOST_ENABLED = "${@base_contains('PACKAGECONFIG', 'vhost', 'y', 'n', d)}"
30
31do_install_append () {
32
33 install -m 0755 -d ${D}/${INSTALL_PATH}/${RTE_TARGET}/hostapp
34 install -m 0755 ${S}/${RTE_TARGET}/hostapp/* ${D}/${INSTALL_PATH}/${RTE_TARGET}/hostapp/
35}
diff --git a/meta-isg/common/recipes-extended/dpdk/dpdk_2.0.0.bb b/meta-isg/common/recipes-extended/dpdk/dpdk_2.0.0.bb
new file mode 100644
index 00000000..cb158b92
--- /dev/null
+++ b/meta-isg/common/recipes-extended/dpdk/dpdk_2.0.0.bb
@@ -0,0 +1,29 @@
1include dpdk.inc
2
3SRC_URI = "http://dpdk.org/browse/dpdk/snapshot/dpdk-${PV}.tar.gz;name=dpdk \
4 file://dpdk-2.0.0-dpdk-enable-VHOST-and-ip_fragmentation-in-common_linuxapp.patch \
5 file://dpdk-1.8.0-and-2.0.0-examples-add-config-variable-to-enable-disable-dpdk.patch \
6 file://dpdk-1.8.0-and-2.0.0-add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch \
7 file://dpdk-1.8.0-and-2.0.0-add-sysroot-option-within-app-makefile.patch \
8 file://dpdk-1.8.0-and-2.0.0-dpdk-defconfig-select-RTE_MACHINE-type.patch \
9 "
10
11SRC_URI[dpdk.md5sum] = "e9e7935c9eec920841ad373949514934"
12SRC_URI[dpdk.sha256sum] = "643789a3be5ba44dd84d6b248cdf5471b260f8736dada177dadf076aebfbff3f"
13
14export EXAMPLES_BUILD_DIR = "${RTE_TARGET}"
15export ARCHDIR = "generic"
16
17# dpdk example apps dpdk_qat and vhost have dependancy on fuse and qat.
18# fuse is in meta-filesystems and qat is not yet upstreamed.
19# So adding mechanism to explicitly disable the use of fuse and qat.
20# To enable, uncomment the below line or include in .bbappend.
21# PACKAGECONFIG ?= " dpdk_qat vhost libvirt"
22
23PACKAGECONFIG[dpdk_qat] = ",,qat"
24PACKAGECONFIG[vhost] = ",,fuse"
25PACKAGECONFIG[libvirt] = ",,libvirt"
26
27export CONFIG_EXAMPLE_DPDK_QAT = "${@base_contains('PACKAGECONFIG', 'dpdk_qat', 'y', 'n', d)}"
28export CONFIG_EXAMPLE_VM_POWER_MANAGER = "${@base_contains('PACKAGECONFIG', 'libvirt', 'y', 'n', d)}"
29export CONFIG_VHOST_ENABLED = "${@base_contains('PACKAGECONFIG', 'vhost', 'y', 'n', d)}"
diff --git a/meta-isg/conf/layer.conf b/meta-isg/conf/layer.conf
new file mode 100644
index 00000000..48ad0c3c
--- /dev/null
+++ b/meta-isg/conf/layer.conf
@@ -0,0 +1,12 @@
1# We have a conf and classes directory, add to BBPATH
2BBPATH .= ":${LAYERDIR}"
3
4# We have recipes-* directories, add to BBFILES
5BBFILES += "${LAYERDIR}/common/recipes-*/*/*.bb \
6 ${LAYERDIR}/common/recipes-*/*/*.bbappend"
7
8BBFILE_COLLECTIONS += "isg"
9BBFILE_PATTERN_isg := "^${LAYERDIR}/common/"
10BBFILE_PRIORITY_isg = "5"
11
12LAYERDEPENDS_isg = "intel"