arm-trusted-firmware/include/lib
Andre Przywara ea735bf556 refactor(cpufeat): enable FEAT_VHE for FEAT_STATE_CHECKED
At the moment we only support FEAT_VHE to be either unconditionally
compiled in, or to be not supported at all.

Add support for runtime detection (ENABLE_FEAT_VHE=2), by splitting
is_armv8_1_vhe_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 VHE related registers.
Also move the context saving code from assembly to C, and use the new
is_feat_vhe_supported() function to guard its execution.

Enable VHE in its runtime detection version for all FVP builds.

Change-Id: Ib397cd0c83e8c709bd6fed603560e39901fa672b
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2023-03-20 13:37:37 +00:00
..
bl_aux_params Factor out cross-BL API into export headers suitable for 3rd party code 2019-07-23 20:25:34 -07:00
cpus Merge "refactor(build): distinguish BL2 as TF-A entry point and BL2 running at EL3" into integration 2023-03-15 12:45:26 +01:00
el3_runtime refactor(cpufeat): enable FEAT_VHE for FEAT_STATE_CHECKED 2023-03-20 13:37:37 +00:00
extensions refactor(mpam): enable FEAT_MPAM for FEAT_STATE_CHECKED 2023-03-20 13:37:36 +00:00
fconf feat(fconf): rename 'ns-load-address' to 'secondary-load-address' 2023-02-07 11:26:38 +00:00
gpt_rme fix(gpt_rme): rework delegating/undelegating sequence 2022-03-09 16:08:42 +01:00
libc feat(libc): add support for fallthrough statement 2023-03-20 13:37:36 +00:00
libfdt feat(libfdt): upgrade libfdt source files 2022-10-19 14:07:46 +01:00
mpmm feat(mpmm): add support for MPMM 2021-10-26 12:15:42 +01:00
pmf build: always prefix section names with . 2023-02-20 18:29:33 +00:00
psa feat(psa): interface with RSS for NV counters 2023-02-08 10:33:48 +02:00
psci refactor(psci): move psci_do_pwrdown_sequence() out of private header 2022-09-15 18:09:56 +05:30
xlat_mpu fvp_r: load, auth, and transfer from BL1 to BL33 2021-09-30 17:07:11 +01:00
xlat_tables build: always prefix section names with . 2023-02-20 18:29:33 +00:00
zlib Standardise header guards across codebase 2018-11-08 10:20:19 +00:00
bakery_lock.h build: always prefix section names with . 2023-02-20 18:29:33 +00:00
cassert.h Standardise header guards across codebase 2018-11-08 10:20:19 +00:00
coreboot.h Update in coreboot_get_memory_type API to include size as well 2020-10-16 02:23:35 +05:30
debugfs.h debugfs: add SMC channel 2019-12-18 09:59:12 +01:00
mmio.h Standardise header guards across codebase 2018-11-08 10:20:19 +00:00
object_pool.h fconf: Fix misra issues 2020-02-27 16:14:07 +00:00
optee_utils.h feat(optee): add loading OP-TEE image via an SMC 2023-01-31 10:38:16 -08:00
runtime_instr.h Replace __ASSEMBLY__ with compiler-builtin __ASSEMBLER__ 2019-08-01 13:14:12 -07:00
semihosting.h qemu: Implement qemu_system_off via semihosting. 2020-01-23 10:53:45 +00:00
smccc.h feat: pass SMCCCv1.3 SVE hint bit to dispatchers 2022-11-08 09:28:36 +01:00
spinlock.h Replace __ASSEMBLY__ with compiler-builtin __ASSEMBLER__ 2019-08-01 13:14:12 -07:00
utils.h arm: gicv3: Fix compiler dependent behavior 2019-12-10 15:53:44 -06:00
utils_def.h fix: add parenthesis for tests in MIN, MAX and CLAMP macros 2022-12-07 14:16:03 +01:00