From 5e41937eba275522033cdc4235644d28570189a6 Mon Sep 17 00:00:00 2001 From: Dave Rodgman Date: Mon, 23 Oct 2023 15:30:20 +0100 Subject: [PATCH] Remove dependency on asm/hwcap.h Signed-off-by: Dave Rodgman --- library/aesce.c | 13 ++++++++++++- tests/scripts/all.sh | 19 +++++++------------ 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/library/aesce.c b/library/aesce.c index 2f9ccb541..f547eaa93 100644 --- a/library/aesce.c +++ b/library/aesce.c @@ -118,8 +118,19 @@ #if defined(__linux__) && !defined(MBEDTLS_AES_USE_HARDWARE_ONLY) -#include #include +#if !defined(HWCAP_NEON) +#define HWCAP_NEON (1 << 12) +#endif +#if !defined(HWCAP2_AES) +#define HWCAP2_AES (1 << 0) +#endif +#if !defined(HWCAP_AES) +#define HWCAP_AES (1 << 3) +#endif +#if !defined(HWCAP_ASIMD) +#define HWCAP_ASIMD (1 << 1) +#endif signed char mbedtls_aesce_has_support_result = -1; diff --git a/tests/scripts/all.sh b/tests/scripts/all.sh index 3c2c632b0..73bcc856d 100755 --- a/tests/scripts/all.sh +++ b/tests/scripts/all.sh @@ -4411,21 +4411,16 @@ component_build_aes_armce () { msg "MBEDTLS_AES_USE_HARDWARE_ONLY, clang, thumb" make -B library/aesce.o CC=clang CFLAGS="--target=arm-linux-gnueabihf -mcpu=cortex-a32+crypto -mthumb" - # we need asm/hwcap.h available for runtime detection - if (echo '#include ' | clang -E - >/dev/null 2>&1); then - scripts/config.py unset MBEDTLS_AES_USE_HARDWARE_ONLY + scripts/config.py unset MBEDTLS_AES_USE_HARDWARE_ONLY - msg "no MBEDTLS_AES_USE_HARDWARE_ONLY, clang, aarch64" - make -B library/aesce.o CC=clang CFLAGS="--target=aarch64-linux-gnu -march=armv8-a+crypto" + msg "no MBEDTLS_AES_USE_HARDWARE_ONLY, clang, aarch64" + make -B library/aesce.o CC=clang CFLAGS="--target=aarch64-linux-gnu -march=armv8-a+crypto" - msg "no MBEDTLS_AES_USE_HARDWARE_ONLY, clang, arm" - make -B library/aesce.o CC=clang CFLAGS="--target=arm-linux-gnueabihf -mcpu=cortex-a72+crypto -marm" + msg "no MBEDTLS_AES_USE_HARDWARE_ONLY, clang, arm" + make -B library/aesce.o CC=clang CFLAGS="--target=arm-linux-gnueabihf -mcpu=cortex-a72+crypto -marm" - msg "no MBEDTLS_AES_USE_HARDWARE_ONLY, clang, thumb" - make -B library/aesce.o CC=clang CFLAGS="--target=arm-linux-gnueabihf -mcpu=cortex-a32+crypto -mthumb" - else - msg "can't include - skipping runtime detection tests" - fi + msg "no MBEDTLS_AES_USE_HARDWARE_ONLY, clang, thumb" + make -B library/aesce.o CC=clang CFLAGS="--target=arm-linux-gnueabihf -mcpu=cortex-a32+crypto -mthumb" # test for presence of AES instructions scripts/config.py set MBEDTLS_AES_USE_HARDWARE_ONLY