arm-trusted-firmware/include
Jayanth Dodderi Chidanand f74cb0be8a fix(amu): fault handling on EL2 context switch
The HAFGRTR_EL2 register is UNDEFINED unless the CPU supports both
FEAT_FGT and FEAT_AMUv1. FEAT_FGT is mandatory for v8.6-A and upwards,
but FEAT_AMUv1 is optional (from v8.4-A upwards), and as such any
8.6-A cores today without support for FEAT_AMUv1 will trigger an
undefined instruction exception on accessing this register.

Currently ARM_ARCH_AT_LEAST macro has been used to associate with an
architecture extension allowing to access HAFGRTR_EL2 register. This
condition should be replaced with macros specific to individual
features. This patch adds a new set of macros "ENABLE_FEAT_FGT,
ENABLE_FEAT_AMUv1, ENABLE_FEAT_ECV" under build options to provide
controlled access to the HAFGRTR_EL2 register.

Further to ensure that the the build options passed comply
with the given hardware implementation, a feature detection mechanism,
checking whether build options match with the architecture is required
at bootime. This will be implemented and pushed later in a separate
patch.

Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com>
Change-Id: Ie390f4babe233b8b09455290277edbddecd33ead
2021-12-10 12:33:51 +00:00
..
arch feat(sme): enable SME functionality 2021-11-12 10:38:00 -06:00
bl1 Specify signed-ness of constants 2020-08-14 11:36:05 +00:00
bl2 BL2_AT_EL3: Enable pointer authentication support 2019-02-27 11:58:09 +00:00
bl2u Standardise header guards across codebase 2018-11-08 10:20:19 +00:00
bl31 feat(rme): add ENABLE_RME build option and support for RMM image 2021-10-05 11:49:59 -05:00
bl32 spd: tlkd: support new TLK SMCs for RPMB service 2020-03-21 19:00:05 -07:00
common feat(libfdt): also allow changing base address 2021-11-04 15:58:34 +00:00
drivers Merge "refactor(measured boot): rename a macro INVALID_ID to EVLOG_INVALID_ID" into integration 2021-12-08 08:16:53 +01:00
dt-bindings feat(dt-bindings): add STM32MP1 TZC400 bindings 2021-09-07 09:14:05 +02:00
export feat(rme): add ENABLE_RME build option and support for RMM image 2021-10-05 11:49:59 -05:00
lib fix(amu): fault handling on EL2 context switch 2021-12-10 12:33:51 +00:00
plat feat(plat/fvp): pass Event Log addr and size from BL1 to BL2 2021-10-12 17:53:48 +01:00
services Merge "Changing SMC code for transitioning Granule" into integration 2021-11-09 21:13:39 +01:00
tools_share feat(rme): add ENABLE_RME build option and support for RMM image 2021-10-05 11:49:59 -05:00