Message ID | 20201109141020.27234-2-remi.denis.courmont@huawei.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ARM Secure EL2 extension | expand |
On 11/9/20 6:10 AM, remi.denis.courmont@huawei.com wrote: > From: Rémi Denis-Courmont <remi.denis.courmont@huawei.com> > > This checks if EL2 is enabled (meaning EL2 registers take effects) in > the current security context. > > Signed-off-by: Rémi Denis-Courmont <remi.denis.courmont@huawei.com> > --- > target/arm/cpu.h | 16 ++++++++++++++++ > 1 file changed, 16 insertions(+) Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
diff --git a/target/arm/cpu.h b/target/arm/cpu.h index c18a916766..adaded6bab 100644 --- a/target/arm/cpu.h +++ b/target/arm/cpu.h @@ -2040,6 +2040,17 @@ static inline bool arm_is_secure(CPUARMState *env) return arm_is_secure_below_el3(env); } +/* Return true if the current security state has AArch64 EL2 or AArch32 Hyp. + * This corresponds to the pseudocode EL2Enabled() + */ +static inline bool arm_is_el2_enabled(CPUARMState *env) +{ + if (arm_feature(env, ARM_FEATURE_EL2)) { + return !arm_is_secure_below_el3(env); + } + return false; +} + #else static inline bool arm_is_secure_below_el3(CPUARMState *env) { @@ -2050,6 +2061,11 @@ static inline bool arm_is_secure(CPUARMState *env) { return false; } + +static inline bool arm_is_el2_enabled(CPUARMState *env) +{ + return false; +} #endif /**