aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohamed Mediouni <mohamed@unpredictable.fr>2025-07-21 17:29:02 +0200
committerPeter Maydell <peter.maydell@linaro.org>2025-07-25 10:39:32 +0100
commita7aa2af13e287e11cb2d73972353bfec161803a4 (patch)
tree9c698737471b51e20dd9b6c83bad49e1bb62cc98
parentbd52d8bc9e01dcf68731dcdd9d2b8ebcb9fc5692 (diff)
downloadqemu-a7aa2af13e287e11cb2d73972353bfec161803a4.zip
qemu-a7aa2af13e287e11cb2d73972353bfec161803a4.tar.gz
qemu-a7aa2af13e287e11cb2d73972353bfec161803a4.tar.bz2
target/arm: hvf: stubbing reads to LORC_EL1
Linux zeroes LORC_EL1 on boot at EL2, without further interaction with FEAT_LOR afterwards. Stub out LORC_EL1 accesses as FEAT_LOR is a mandatory extension on Armv8.1+. Signed-off-by: Mohamed Mediouni <mohamed@unpredictable.fr> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r--target/arm/hvf/hvf.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/target/arm/hvf/hvf.c b/target/arm/hvf/hvf.c
index bd6b5d1..47b0cd3 100644
--- a/target/arm/hvf/hvf.c
+++ b/target/arm/hvf/hvf.c
@@ -186,6 +186,7 @@ void hvf_arm_init_debug(void)
#define SYSREG_OSLAR_EL1 SYSREG(2, 0, 1, 0, 4)
#define SYSREG_OSLSR_EL1 SYSREG(2, 0, 1, 1, 4)
#define SYSREG_OSDLR_EL1 SYSREG(2, 0, 1, 3, 4)
+#define SYSREG_LORC_EL1 SYSREG(3, 0, 10, 4, 3)
#define SYSREG_CNTPCT_EL0 SYSREG(3, 3, 14, 0, 1)
#define SYSREG_CNTP_CTL_EL0 SYSREG(3, 3, 14, 2, 1)
#define SYSREG_PMCR_EL0 SYSREG(3, 3, 9, 12, 0)
@@ -1657,6 +1658,9 @@ static int hvf_sysreg_write(CPUState *cpu, uint32_t reg, uint64_t val)
case SYSREG_OSDLR_EL1:
/* Dummy register */
return 0;
+ case SYSREG_LORC_EL1:
+ /* Dummy register */
+ return 0;
case SYSREG_ICC_AP0R0_EL1:
case SYSREG_ICC_AP0R1_EL1:
case SYSREG_ICC_AP0R2_EL1: