diff options
author | Mark Dykes <mardyk01@review.trustedfirmware.org> | 2020-03-31 19:55:44 +0000 |
---|---|---|
committer | TrustedFirmware Code Review <review@review.trustedfirmware.org> | 2020-03-31 19:55:44 +0000 |
commit | 614be75df67af7ca37d6b4ae4bf40729403e2838 (patch) | |
tree | fb500c0be9f586565b647c3d5b7efd5e08ae369c | |
parent | 426d5f9c9efb21e1a3504297c8b397500f254fb7 (diff) | |
parent | fd092be23982c160a3855f1e396b7311b5225bf9 (diff) | |
download | platform_external_arm-trusted-firmware-614be75df67af7ca37d6b4ae4bf40729403e2838.tar.gz platform_external_arm-trusted-firmware-614be75df67af7ca37d6b4ae4bf40729403e2838.tar.bz2 platform_external_arm-trusted-firmware-614be75df67af7ca37d6b4ae4bf40729403e2838.zip |
Merge "Add get_current_el_maybe_constant()" into integration
-rw-r--r-- | include/arch/aarch64/arch_helpers.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/arch/aarch64/arch_helpers.h b/include/arch/aarch64/arch_helpers.h index 240c1fbda..7c30758d0 100644 --- a/include/arch/aarch64/arch_helpers.h +++ b/include/arch/aarch64/arch_helpers.h @@ -531,6 +531,23 @@ static inline unsigned int get_current_el(void) return GET_EL(read_CurrentEl()); } +static inline unsigned int get_current_el_maybe_constant(void) +{ +#if defined(IMAGE_AT_EL1) + return 1; +#elif defined(IMAGE_AT_EL2) + return 2; /* no use-case in TF-A */ +#elif defined(IMAGE_AT_EL3) + return 3; +#else + /* + * If we do not know which exception level this is being built for + * (e.g. built for library), fall back to run-time detection. + */ + return get_current_el(); +#endif +} + /* * Check if an EL is implemented from AA64PFR0 register fields. */ |