From: Dmitry Eremin-Solenikov <dmitry.ereminsoleni...@linaro.org> Support building ODP for generic architecture, using default ARCH code.
Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsoleni...@linaro.org> --- /** Email created from pull request 462 (lumag:default-abi) ** https://github.com/Linaro/odp/pull/462 ** Patch: https://github.com/Linaro/odp/pull/462.patch ** Base sha: 41b3fa2cd994a7ef68290a07dcde5564e4640847 ** Merge commit sha: 92a3ed64c30441cbca76e6f8ab5c086fe0c83a18 **/ configure.ac | 8 ++++---- platform/linux-generic/Makefile.am | 10 +++++++++ .../linux-generic/arch/default/odp/api/abi/cpu.h | 24 ++++++++++++++++++++++ 3 files changed, 38 insertions(+), 4 deletions(-) create mode 100644 platform/linux-generic/arch/default/odp/api/abi/cpu.h diff --git a/configure.ac b/configure.ac index a44a2ec6f..97f0af400 100644 --- a/configure.ac +++ b/configure.ac @@ -159,17 +159,16 @@ AS_CASE([$host], [powerpc*], [ARCH_DIR=powerpc], [aarch64*], [ARCH_DIR=aarch64], [arm*], [ARCH_DIR=arm], - [ARCH_DIR=undefined] + [ARCH_DIR=default] ) AC_SUBST([ARCH_DIR]) ########################################################################## # Warn on the defaults if arch is undefined ########################################################################## -if test "${ARCH_DIR}" = "undefined"; +if test "${ARCH_DIR}" = "default"; then - echo "ARCH_DIR is undefined, please add your ARCH_DIR based on host=${host}" - exit 1 + AC_MSG_WARN([ARCH_DIR is undefined, please add your ARCH_DIR based on host=${host}]) fi ########################################################################## @@ -280,6 +279,7 @@ AM_CONDITIONAL([HAVE_MSCGEN], [test "x${MSCGEN}" = "xmscgen"]) AM_CONDITIONAL([helper_linux], [test x$helper_linux = xyes ]) AM_CONDITIONAL([ARCH_IS_ARM], [test "x${ARCH_DIR}" = "xarm"]) AM_CONDITIONAL([ARCH_IS_AARCH64], [test "x${ARCH_DIR}" = "xaarch64"]) +AM_CONDITIONAL([ARCH_IS_DEFAULT], [test "x${ARCH_DIR}" = "xdefault"]) AM_CONDITIONAL([ARCH_IS_MIPS64], [test "x${ARCH_DIR}" = "xmips64"]) AM_CONDITIONAL([ARCH_IS_POWERPC], [test "x${ARCH_DIR}" = "xpowerpc"]) AM_CONDITIONAL([ARCH_IS_X86], [test "x${ARCH_DIR}" = "xx86"]) diff --git a/platform/linux-generic/Makefile.am b/platform/linux-generic/Makefile.am index 9e82f2622..bb5bc8134 100644 --- a/platform/linux-generic/Makefile.am +++ b/platform/linux-generic/Makefile.am @@ -241,6 +241,16 @@ noinst_HEADERS += arch/aarch64/odp_atomic.h \ arch/default/odp_cpu_idling.h \ arch/aarch64/odp_llsc.h endif +if ARCH_IS_DEFAULT +__LIB__libodp_linux_la_SOURCES += arch/default/odp_cpu_cycles.c \ + arch/default/odp_global_time.c \ + arch/default/odp_sysinfo_parse.c +if !ODP_ABI_COMPAT +odpapiabiarchinclude_HEADERS += arch/default/odp/api/abi/cpu.h +endif +noinst_HEADERS += arch/default/odp_cpu.h \ + arch/default/odp_cpu_idling.h +endif if ARCH_IS_MIPS64 __LIB__libodp_linux_la_SOURCES += arch/mips64/odp_cpu_cycles.c \ arch/default/odp_global_time.c \ diff --git a/platform/linux-generic/arch/default/odp/api/abi/cpu.h b/platform/linux-generic/arch/default/odp/api/abi/cpu.h new file mode 100644 index 000000000..0765339b4 --- /dev/null +++ b/platform/linux-generic/arch/default/odp/api/abi/cpu.h @@ -0,0 +1,24 @@ +/* Copyright (c) 2018, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef ODP_API_ABI_CPU_H_ +#define ODP_API_ABI_CPU_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#define ODP_CACHE_LINE_SIZE 64 + +static inline void odp_cpu_pause(void) +{ +} + +#ifdef __cplusplus +} +#endif + +#endif