]> git.proxmox.com Git - mirror_qemu.git/commit
hw/intc/arm_gicv3: Add NMI handling CPU interface registers
authorPeter Maydell <peter.maydell@linaro.org>
Fri, 19 Apr 2024 13:36:00 +0000 (14:36 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Thu, 25 Apr 2024 09:21:05 +0000 (10:21 +0100)
commit28cca59c469b16f1352e784b566fd36ace2be4b4
tree981d70617b07e41128872ef2f5db5ac084b319b5
parent44ed1e4b9a4df256bb56487ae5150b6807536703
hw/intc/arm_gicv3: Add NMI handling CPU interface registers

Add the NMIAR CPU interface registers which deal with acknowledging NMI.

When introduce NMI interrupt, there are some updates to the semantics for the
register ICC_IAR1_EL1 and ICC_HPPIR1_EL1. For ICC_IAR1_EL1 register, it
should return 1022 if the intid has non-maskable property. And for
ICC_NMIAR1_EL1 register, it should return 1023 if the intid do not have
non-maskable property. Howerever, these are not necessary for ICC_HPPIR1_EL1
register.

And the APR and RPR has NMI bits which should be handled correctly.

Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
[PMM: Separate out whether cpuif supports NMI from whether the
 GIC proper (IRI) supports NMI]
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 20240407081733.3231820-19-ruanjinjie@huawei.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
hw/intc/arm_gicv3_cpuif.c
hw/intc/gicv3_internal.h
hw/intc/trace-events
include/hw/intc/arm_gicv3_common.h