From: Peter Maydell Date: Fri, 7 Mar 2025 10:08:20 +0000 (+0000) Subject: target/arm: Don't apply CNTVOFF_EL2 for EL2_VIRT timer X-Git-Tag: v10.0.0-rc0~21^2~16 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5709038aa8b4d58b8c201ed53c327074173a35c6;p=thirdparty%2Fqemu.git target/arm: Don't apply CNTVOFF_EL2 for EL2_VIRT timer The CNTVOFF_EL2 offset register should only be applied for accessses to CNTVCT_EL0 and for the EL1 virtual timer (CNTV_*). We were incorrectly applying it for the EL2 virtual timer (CNTHV_*). Cc: qemu-stable@nongnu.org Signed-off-by: Peter Maydell Reviewed-by: Alex Bennée Message-id: 20250204125009.2281315-3-peter.maydell@linaro.org --- diff --git a/target/arm/helper.c b/target/arm/helper.c index 7f341d753c..5729b313f8 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -2604,7 +2604,6 @@ static uint64_t gt_tval_read(CPUARMState *env, const ARMCPRegInfo *ri, switch (timeridx) { case GTIMER_VIRT: - case GTIMER_HYPVIRT: offset = gt_virt_cnt_offset(env); break; case GTIMER_PHYS: @@ -2624,7 +2623,6 @@ static void gt_tval_write(CPUARMState *env, const ARMCPRegInfo *ri, switch (timeridx) { case GTIMER_VIRT: - case GTIMER_HYPVIRT: offset = gt_virt_cnt_offset(env); break; case GTIMER_PHYS: