[meta-intel] [meta-intel-qat][PATCH 3/3] qat16: fix build with musl and x32
Anuj Mittal
anuj.mittal at intel.com
Tue Jan 23 19:50:11 PST 2018
Make sure that the architecture dependent types are defined
correctly. Prevents errors like:
| quickassist/lookaside/access_layer/src/qat_direct/src/adf_user_ETring_mgr_dp.c: In function 'icp_adf_getQueueMemory':
| quickassist/lookaside/access_layer/src/qat_direct/src/adf_user_ETring_mgr_dp.c:83:11: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
| (((UARCH_INT)pRingHandle->ring_virt_addr)
| ^
| quickassist/lookaside/access_layer/src/qat_direct/src/adf_user_ETring_mgr_dp.c:82:19: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
| *targetAddr = (Cpa32U*)
| ^
| quickassist/lookaside/access_layer/src/qat_direct/src/adf_user_ETring_mgr_dp.c: In function 'icp_adf_getSingleQueueAddr':
| quickassist/lookaside/access_layer/src/qat_direct/src/adf_user_ETring_mgr_dp.c:112:11: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
| (((UARCH_INT)pRingHandle->ring_virt_addr)
| ^
Partially fixes [YOCTO #12121]
Signed-off-by: Anuj Mittal <anuj.mittal at intel.com>
---
.../qat/files/qat16-Osal-fix-build-with-x32.patch | 53 ++++++++++++++++++++++
recipes-extended/qat/qat16.inc | 2 +-
2 files changed, 54 insertions(+), 1 deletion(-)
create mode 100644 recipes-extended/qat/files/qat16-Osal-fix-build-with-x32.patch
diff --git a/recipes-extended/qat/files/qat16-Osal-fix-build-with-x32.patch b/recipes-extended/qat/files/qat16-Osal-fix-build-with-x32.patch
new file mode 100644
index 0000000..2f794ce
--- /dev/null
+++ b/recipes-extended/qat/files/qat16-Osal-fix-build-with-x32.patch
@@ -0,0 +1,53 @@
+From 8da85286efc86b4f5bbf14f755c84d1982841973 Mon Sep 17 00:00:00 2001
+From: Anuj Mittal <anuj.mittal at intel.com>
+Date: Wed, 3 Jan 2018 15:45:59 +0800
+Subject: [PATCH] Osal: fix build with x32
+
+x32 follows ILP32 model and has __x86_64__ defined too. Make sure
+that we check for ILP32 also before using architecture dependent
+types.
+
+Upstream-Status: Accepted [Code released in tarball form only]
+
+Signed-off-by: Anuj Mittal <anuj.mittal at intel.com>
+---
+ quickassist/adf/platform/include/adf_platform_common.h | 2 +-
+ quickassist/utilities/osal/include/OsalTypes.h | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/quickassist/adf/platform/include/adf_platform_common.h b/quickassist/adf/platform/include/adf_platform_common.h
+index 8673ec1..de5c31a 100755
+--- a/quickassist/adf/platform/include/adf_platform_common.h
++++ b/quickassist/adf/platform/include/adf_platform_common.h
+@@ -207,7 +207,7 @@
+ * xx refers to arch, i.e.64bit or 32bit
+ * yy refers to number of bytes copied from src to dst, i.e. 64 or 128 bytes
+ */
+-#ifdef __x86_64__
++#if (defined (__x86_64__) && !defined (__ILP32__))
+ #define adf_memcpy64_64(dst, src)\
+ do { \
+ __asm__ __volatile__ ( \
+diff --git a/quickassist/utilities/osal/include/OsalTypes.h b/quickassist/utilities/osal/include/OsalTypes.h
+index d8fa1d9..eaf08bf 100755
+--- a/quickassist/utilities/osal/include/OsalTypes.h
++++ b/quickassist/utilities/osal/include/OsalTypes.h
+@@ -160,13 +160,13 @@ typedef volatile INT32 VINT32;
+ */
+ #define OSAL_HUNDRED (100)
+
+-#ifdef __x86_64__
++#if (defined (__x86_64__) && !defined (__ILP32__))
+ #define ARCH_INT INT64
+ #else
+ #define ARCH_INT INT32
+ #endif
+
+-#ifdef __x86_64__
++#if (defined (__x86_64__) && !defined (__ILP32__))
+ #define UARCH_INT UINT64
+ #else
+ #define UARCH_INT UINT32
+--
+2.7.4
+
diff --git a/recipes-extended/qat/qat16.inc b/recipes-extended/qat/qat16.inc
index 9b5372e..4b9c835 100644
--- a/recipes-extended/qat/qat16.inc
+++ b/recipes-extended/qat/qat16.inc
@@ -16,10 +16,10 @@ SRC_URI="file://qat16_2.3.0-34-qat-fix-for-cross-compilation-issue.patch \
file://qat16_2.3.0-34-make-sure-CFLAGS-are-correct.patch \
file://qat16_2.5.0-80-qat-change-in-return-type-of-func-in-kernel-v4.4.patch \
file://qat16_2.5.0-80-qat-Added-include-dir-path.patch \
+ file://qat16-Osal-fix-build-with-x32.patch \
"
COMPATIBLE_MACHINE = "null"
-COMPATIBLE_HOST_linux-gnux32 = "null"
S = "${WORKDIR}/${ICP_DRIVER_TYPE}"
ICP_TOOLS = "accelcomp"
--
2.7.4
More information about the meta-intel
mailing list