diff options
author | Andre Przywara <andre.przywara@arm.com> | 2022-11-17 17:30:43 +0000 |
---|---|---|
committer | Andre Przywara <andre.przywara@arm.com> | 2023-03-22 13:33:22 +0000 |
commit | 7db710f0cb54c5943c9e60cb9c29eadd8817e2c5 (patch) | |
tree | 9126b03430a2433dd442d99855ce659126a98dad /include/lib | |
parent | b8f03d29e172af7bd576eafbce9d485a9f626e2e (diff) | |
download | arm-trusted-firmware-7db710f0cb54c5943c9e60cb9c29eadd8817e2c5.tar.gz |
refactor(cpufeat): enable FEAT_CSV2_2 for FEAT_STATE_CHECKED
At the moment we only support FEAT_CSV2_2 to be either unconditionally
compiled in, or to be not supported at all.
Add support for runtime detection (ENABLE_FEAT_CSV2_2=2), by splitting
is_armv8_0_feat_csv2_2_present() into an ID register reading function
and a second function to report the support status. That function
considers both build time settings and runtime information (if needed),
and is used before we access the SCXTNUM_EL2 system register.
Also move the context saving code from assembly to C, and use the new
is_feat_csv2_2_supported() function to guard its execution.
Change the FVP platform default to the now supported dynamic option (=2),
so the right decision can be made by the code at runtime.
Change-Id: I89c7bc883e6a65727fdbdd36eb3bfbffb2196da7
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Diffstat (limited to 'include/lib')
-rw-r--r-- | include/lib/el3_runtime/aarch64/context.h | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/include/lib/el3_runtime/aarch64/context.h b/include/lib/el3_runtime/aarch64/context.h index 7d7fb5272..e70ff99fa 100644 --- a/include/lib/el3_runtime/aarch64/context.h +++ b/include/lib/el3_runtime/aarch64/context.h @@ -525,10 +525,6 @@ void el2_sysregs_context_restore_ras(el2_sysregs_t *regs); void el2_sysregs_context_save_nv2(el2_sysregs_t *regs); void el2_sysregs_context_restore_nv2(el2_sysregs_t *regs); #endif /* CTX_INCLUDE_NEVE_REGS */ -#if ENABLE_FEAT_CSV2_2 -void el2_sysregs_context_save_csv2(el2_sysregs_t *regs); -void el2_sysregs_context_restore_csv2(el2_sysregs_t *regs); -#endif /* ENABLE_FEAT_CSV2_2 */ #endif /* CTX_INCLUDE_EL2_REGS */ #if CTX_INCLUDE_FPREGS |