From 14c6016ad5ff4ac22861dff03129a646ad02c6dd Mon Sep 17 00:00:00 2001 From: Jeenu Viswambharan Date: Wed, 4 Apr 2018 16:07:11 +0100 Subject: AArch64: Introduce RAS handling RAS extensions are mandatory for ARMv8.2 CPUs, but are also optional extensions to base ARMv8.0 architecture. This patch adds build system support to enable RAS features in ARM Trusted Firmware. A boolean build option RAS_EXTENSION is introduced for this. With RAS_EXTENSION, an Exception Synchronization Barrier (ESB) is inserted at all EL3 vector entry and exit. ESBs will synchronize pending external aborts before entering EL3, and therefore will contain and attribute errors to lower EL execution. Any errors thus synchronized are detected via. DISR_EL1 register. When RAS_EXTENSION is set to 1, HANDLE_EL3_EA_FIRST must also be set to 1. Change-Id: I38a19d84014d4d8af688bd81d61ba582c039383a Signed-off-by: Jeenu Viswambharan --- make_helpers/defaults.mk | 3 +++ 1 file changed, 3 insertions(+) (limited to 'make_helpers') diff --git a/make_helpers/defaults.mk b/make_helpers/defaults.mk index 00ac12687..791a9c086 100644 --- a/make_helpers/defaults.mk +++ b/make_helpers/defaults.mk @@ -124,6 +124,9 @@ PROGRAMMABLE_RESET_ADDRESS := 0 # Original format. PSCI_EXTENDED_STATE_ID := 0 +# Enable RAS support +RAS_EXTENSION := 0 + # By default, BL1 acts as the reset handler, not BL31 RESET_TO_BL31 := 0 -- cgit v1.2.3