From: Giacomo Travaglini Date: Fri, 23 Aug 2019 11:18:59 +0000 (+0100) Subject: dev-arm: Check if INTID group is enabled when reading HPPIRx X-Git-Tag: v19.0.0.0~586 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=983f667dc38e2d14896712b39932c349f00ed1ec;p=gem5.git dev-arm: Check if INTID group is enabled when reading HPPIRx If it is not enabled, it should return INTID_SPOURIOUS Change-Id: I4dfa8b9fcea874b4d281cd154dd38752b05e1d59 Signed-off-by: Giacomo Travaglini Reviewed-by: Andreas Sandberg Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/20616 Maintainer: Andreas Sandberg Tested-by: kokoro --- diff --git a/src/dev/arm/gic_v3_cpu_interface.cc b/src/dev/arm/gic_v3_cpu_interface.cc index b4c271d4a..d2b397a7e 100644 --- a/src/dev/arm/gic_v3_cpu_interface.cc +++ b/src/dev/arm/gic_v3_cpu_interface.cc @@ -1653,7 +1653,7 @@ Gicv3CPUInterface::virtualFindActive(uint32_t int_id) const uint32_t Gicv3CPUInterface::getHPPIR0() const { - if (hppi.prio == 0xff) { + if (hppi.prio == 0xff || !groupEnabled(hppi.group)) { return Gicv3::INTID_SPURIOUS; } @@ -1679,7 +1679,7 @@ Gicv3CPUInterface::getHPPIR0() const uint32_t Gicv3CPUInterface::getHPPIR1() const { - if (hppi.prio == 0xff) { + if (hppi.prio == 0xff || !groupEnabled(hppi.group)) { return Gicv3::INTID_SPURIOUS; }