summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGiacomo Travaglini <giacomo.travaglini@arm.com>2018-10-23 16:23:27 +0100
committerGiacomo Travaglini <giacomo.travaglini@arm.com>2018-10-26 09:45:47 +0000
commit47a8c479d9b12625d4d56a0c18ba72a0b640579e (patch)
tree41773f8c1cc04a38672176611beffd0b885c4ef6
parentd05e6aae7096341569eee1e835614b33a3016bd7 (diff)
downloadgem5-47a8c479d9b12625d4d56a0c18ba72a0b640579e.tar.xz
arch-arm: CPTR_EL3.TCPAC traps EL2 accesses to CPACR_EL1
According to the arm arm, CPTR_EL3.TCPAC traps EL2 accesses to the CPTR_EL2 or HCPTR, and EL2 and EL1 accesses to the CPACR_EL1 or CPACR, are trapped to EL3, unless they are trapped by CPTR_EL2.TCPAC. Change-Id: I637be35b29db39f044dda0c6cc4fe986c9620371 Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/13775 Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
-rw-r--r--src/arch/arm/utility.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/arch/arm/utility.cc b/src/arch/arm/utility.cc
index e642250d8..0494c20d2 100644
--- a/src/arch/arm/utility.cc
+++ b/src/arch/arm/utility.cc
@@ -792,7 +792,7 @@ msrMrs64TrapToMon(const MiscRegIndex miscReg, CPTR cptr /* CPTR_EL3 */,
break;
// CPACR, CPTR
case MISCREG_CPACR_EL1:
- if (el == EL1) {
+ if (el == EL1 || el == EL2) {
trapToMon = cptr.tcpac;
}
break;