feat(PAuth): add support for RMM and Realms
* This patch adds support for use of Pointer Authentication (PAuth)
feature in Realms and enable PAuth in RMM (R-EL2).
* The EL3 is expected to context switch the PAuth key registers and
hence RMM does not need to save the NS key values.
* The PAuth registers corresponding to REC is restored before
entering a Realm and the same is saved and RMM kays IA keys are
restored on Realm exit.
Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com>
Signed-off-by: Shruti Gupta <shruti.gupta@arm.com>
Change-Id: I9b19d16478f660f5b2e037069a7e5f9a782f06fb
diff --git a/runtime/core/sysregs.c b/runtime/core/sysregs.c
index fa0275e..06e71a3 100644
--- a/runtime/core/sysregs.c
+++ b/runtime/core/sysregs.c
@@ -87,18 +87,6 @@
MASK(ID_AA64DFR1_EL1_ICNTR)
/*
- * ID_AA64ISAR1_EL1:
- *
- * Cleared fields:
- * - Address and Generic Authentication are not implemented
- */
-#define ID_AA64ISAR1_EL1_CLEAR \
- MASK(ID_AA64ISAR1_EL1_APA) | \
- MASK(ID_AA64ISAR1_EL1_API) | \
- MASK(ID_AA64ISAR1_EL1_GPA) | \
- MASK(ID_AA64ISAR1_EL1_GPI)
-
-/*
* ID_AA64PFR0_EL1:
*
* Cleared fields:
@@ -163,7 +151,7 @@
value = SYSREG_READ(ISAR0);
break;
SYSREG_CASE(ISAR1)
- value = SYSREG_READ_CLEAR(ISAR1);
+ value = SYSREG_READ(ISAR1);
break;
SYSREG_CASE(MMFR0)
value = SYSREG_READ(MMFR0);