@samitouri / QOSamiQemu / commits / e21eb48f32

target/arm: GICv5 cpuif: Remove ICC_HAPR_EL1

The ICC_HAPR_EL1 register reported the current running priority of the CPU. However this can be easily calculated by reading the APR register, so it has been removed in the newly released A.a version of the GICv5 spec (IHI 111701). Remove QEMU's implementation of this register. (This is OK for us to do without warning because our GICv5 support is listed as "experimental"; we anticipated that this kind of spec change might happen.) Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com> Message-id: 20260615105029.2898872-5-peter.maydell@linaro.org

Peter Maydell committed Jun 15, 2026 at 11:50 UTC e21eb48f3253abff636964090860a015744c4370
1 file changed -14
target/arm/tcg/gicv5-cpuif.c
-14
@@ -511,15 +511,6 @@ static void gic_icc_apr_el1_reset(CPUARMState *env, const ARMCPRegInfo *ri)
511 }
512 }
513
514 -static uint64_t gic_icc_hapr_el1_read(CPUARMState *env, const ARMCPRegInfo *ri)
515 -{
516 - /*
517 - * ICC_HAPR_EL1 reports the current running priority, which can be
518 - * calculated from the APR register.
519 - */
520 - return gic_running_prio(env, gicv5_current_phys_domain(env));
521 -}
522 -
514 /* ICC_CR0_EL1 is also banked */
515 static uint64_t gic_icc_cr0_el1_read(CPUARMState *env, const ARMCPRegInfo *ri)
516 {
@@ -928,11 +919,6 @@ static const ARMCPRegInfo gicv5_cpuif_reginfo[] = {
919 .writefn = gic_icc_pcr_el1_write,
920 .resetfn = gic_icc_pcr_el1_reset,
921 },
931 - { .name = "ICC_HAPR_EL1", .state = ARM_CP_STATE_AA64,
932 - .opc0 = 3, .opc1 = 1, .crn = 12, .crm = 0, .opc2 = 3,
933 - .access = PL1_R, .type = ARM_CP_IO | ARM_CP_NO_RAW,
934 - .readfn = gic_icc_hapr_el1_read, .raw_writefn = arm_cp_write_ignore,
935 - },
922 };
923
924 void define_gicv5_cpuif_regs(ARMCPU *cpu)