aboutsummaryrefslogtreecommitdiff
path: root/hw/remote/mpqemu-link.c
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2024-12-11 14:44:35 +0000
committerPeter Maydell <peter.maydell@linaro.org>2024-12-17 15:17:46 +0000
commit2b745c8f91376b7bf0259b2bfc10015591d2c1c3 (patch)
tree3cc6a639793fedab0fe3fb03bb9987752d7884e8 /hw/remote/mpqemu-link.c
parent1660866e2c8ab994748ad03e12296ac83a407b10 (diff)
downloadqemu-2b745c8f91376b7bf0259b2bfc10015591d2c1c3.zip
qemu-2b745c8f91376b7bf0259b2bfc10015591d2c1c3.tar.gz
qemu-2b745c8f91376b7bf0259b2bfc10015591d2c1c3.tar.bz2
target/arm: Implement fine-grained-trap handling for FEAT_XS
FEAT_XS introduces a set of new TLBI maintenance instructions with an "nXS" qualifier. These behave like the stardard ones except that they do not wait for memory accesses with the XS attribute to complete. They have an interaction with the fine-grained-trap handling: the FGT bits that a hypervisor can use to trap TLBI maintenance instructions normally trap also the nXS variants, but the hypervisor can elect to not trap the nXS variants by setting HCRX_EL2.FGTnXS to 1. Add support to our FGT mechanism for these TLBI bits. For each TLBI-trapping FGT bit we define, for example: * FGT_TLBIVAE1 -- the same value we do at present for the normal variant of the insn * FGT_TLBIVAE1NXS -- for the nXS qualified insn; the value of this enum has an NXS bit ORed into it In access_check_cp_reg() we can then ignore the trap bit for an access where ri->fgt has the NXS bit set and HCRX_EL2.FGTnXS is 1. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-id: 20241211144440.2700268-2-peter.maydell@linaro.org
Diffstat (limited to 'hw/remote/mpqemu-link.c')
0 files changed, 0 insertions, 0 deletions