From f45e232ab9c93c22c1cffa2ee4c17f34d808b918 Mon Sep 17 00:00:00 2001 From: Jeenu Viswambharan Date: Wed, 16 Aug 2017 11:44:25 +0100 Subject: [PATCH] Add macro to test for minimum architecture version The macro concisely expresses and requires architecture version to be at least as required by its arguments. This would be useful when extending Trusted Firmware functionality for future architecture revisions. Replace similar usage in the current code base with the new macro. Change-Id: I9dcd0aa71a663eabd02ed9632b8ce87611fa5a57 Signed-off-by: Jeenu Viswambharan --- include/lib/utils_def.h | 8 ++++++++ lib/locks/exclusive/aarch64/spinlock.S | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/include/lib/utils_def.h b/include/lib/utils_def.h index 52496000c..26ac44097 100644 --- a/include/lib/utils_def.h +++ b/include/lib/utils_def.h @@ -73,4 +73,12 @@ # define ULL(_x) (_x##ull) #endif +/* + * Test for the current architecture version to be at least the version + * expected. + */ +#define ARM_ARCH_AT_LEAST(_maj, _min) \ + ((ARM_ARCH_MAJOR > _maj) || \ + ((ARM_ARCH_MAJOR == _maj) && (ARM_ARCH_MINOR >= _min))) + #endif /* __UTILS_DEF_H__ */ diff --git a/lib/locks/exclusive/aarch64/spinlock.S b/lib/locks/exclusive/aarch64/spinlock.S index 59305d847..e2f9eaa47 100644 --- a/lib/locks/exclusive/aarch64/spinlock.S +++ b/lib/locks/exclusive/aarch64/spinlock.S @@ -9,7 +9,7 @@ .globl spin_lock .globl spin_unlock -#if (ARM_ARCH_MAJOR > 8) || ((ARM_ARCH_MAJOR == 8) && (ARM_ARCH_MINOR >= 1)) +#if ARM_ARCH_AT_LEAST(8, 1) /* * When compiled for ARMv8.1 or later, choose spin locks based on Compare and