qemu/docs/system
Peter Maydell 75662f36e3 target/arm: Implement FEAT_IDST
The Armv8.4 feature FEAT_IDST specifies that exceptions generated by
read accesses to the feature ID space should report a syndrome code
of 0x18 (EC_SYSTEMREGISTERTRAP) rather than 0x00 (EC_UNCATEGORIZED).
The feature ID space is defined to be:
 op0 == 3, op1 == {0,1,3}, CRn == 0, CRm == {0-7}, op2 == {0-7}

In our implementation we might return the EC_UNCATEGORIZED syndrome
value for a system register access in four cases:
 * no reginfo struct in the hashtable
 * cp_access_ok() fails (ie ri->access doesn't permit the access)
 * ri->accessfn returns CP_ACCESS_TRAP_UNCATEGORIZED at runtime
 * ri->type includes ARM_CP_RAISES_EXC, and the readfn raises
   an UNDEF exception at runtime

We have very few regdefs that set ARM_CP_RAISES_EXC, and none of
them are in the feature ID space. (In the unlikely event that any
are added in future they would need to take care of setting the
correct syndrome themselves.) This patch deals with the other
three cases, and enables FEAT_IDST for AArch64 -cpu max.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20220509155457.3560724-1-peter.maydell@linaro.org
2022-05-19 16:19:02 +01:00
..
arm target/arm: Implement FEAT_IDST 2022-05-19 16:19:02 +01:00
devices docs/cxl: Add initial Compute eXpress Link (CXL) documentation. 2022-05-13 07:57:26 -04:00
i386 docs/system/i386: Add measurement calculation details to amd-memory-encryption 2022-04-05 10:42:06 +02:00
ppc docs: rstfy confidential guest documentation 2022-02-09 09:08:56 +01:00
riscv hw/riscv: Enable TPM backends 2022-04-29 10:48:48 +10:00
s390x docs/system/s390x/protvirt.rst: Format literals correctly 2021-08-02 11:42:38 +01:00
authz.rst docs: Drop deprecated 'props' from object-add 2021-11-22 15:02:38 +01:00
barrier.rst docs: Move user-facing barrier docs into system manual 2021-08-02 12:55:51 +01:00
bootindex.rst docs: Move bootindex.txt into system section and rstify 2021-08-02 12:55:51 +01:00
confidential-guest-support.rst docs: rstfy confidential guest documentation 2022-02-09 09:08:56 +01:00
cpu-hotplug.rst docs: Format literals correctly 2021-08-02 11:42:38 +01:00
cpu-models-mips.rst.inc
cpu-models-x86-abi.csv docs: add a table showing x86-64 ABI compatibility levels 2021-06-17 14:11:06 -04:00
cpu-models-x86.rst.inc Fix some typos in documentation (found by codespell) 2021-11-22 15:02:38 +01:00
device-emulation.rst docs/cxl: Add initial Compute eXpress Link (CXL) documentation. 2022-05-13 07:57:26 -04:00
device-url-syntax.rst.inc docs: Spell QEMU all caps 2021-11-19 10:16:58 +01:00
gdb.rst Fix some typos in documentation (found by codespell) 2021-11-22 15:02:38 +01:00
generic-loader.rst docs: Move licence/copyright from HTML output to rST comments 2021-08-02 11:42:38 +01:00
guest-loader.rst docs: remove non-reference uses of single backticks 2021-11-08 12:27:23 +04:00
images.rst docs: Render binary names as monospaced text 2021-11-22 15:02:38 +01:00
index.rst docs: rstfy confidential guest documentation 2022-02-09 09:08:56 +01:00
invocation.rst
keys.rst
keys.rst.inc
linuxboot.rst
managed-startup.rst
monitor.rst
multi-process.rst multi-process: fix usage information 2021-09-27 10:57:21 +02:00
mux-chardev.rst
mux-chardev.rst.inc
pr-manager.rst
qemu-block-drivers.rst docs/system: standardize man page sections to --- with overline 2021-09-13 13:56:26 +02:00
qemu-block-drivers.rst.inc block: better document SSH host key fingerprint checking 2022-02-16 14:34:15 +00:00
qemu-cpu-models.rst docs/system: standardize man page sections to --- with overline 2021-09-13 13:56:26 +02:00
qemu-manpage.rst docs/system: standardize man page sections to --- with overline 2021-09-13 13:56:26 +02:00
quickstart.rst docs/system: add a gentle prompt for the complexity to come 2021-03-10 12:13:59 +00:00
secrets.rst docs: document how to pass secret data to QEMU 2021-06-14 13:28:50 +01:00
security.rst
target-arm.rst docs: Add documentation of Arm 'imx25-pdk' board 2021-08-02 11:42:38 +01:00
target-avr.rst docs: update to show preferred boolean syntax for -chardev 2021-02-25 14:14:33 +01:00
target-i386-desc.rst.inc
target-i386.rst docs: rstfy confidential guest documentation 2022-02-09 09:08:56 +01:00
target-m68k.rst
target-mips.rst docs/system: Update MIPS machine documentation 2021-01-04 23:36:03 +01:00
target-ppc.rst docs/system: ppc: Add documentation for ppce500 machine 2021-05-04 11:41:25 +10:00
target-riscv.rst docs/system: riscv: Add documentation for virt machine 2021-07-15 08:56:00 +10:00
target-rx.rst
target-s390x.rst
target-sparc.rst
target-sparc64.rst
target-xtensa.rst
targets.rst docs/system: add a gentle prompt for the complexity to come 2021-03-10 12:13:59 +00:00
tls.rst docs: Render binary names as monospaced text 2021-11-22 15:02:38 +01:00
virtio-net-failover.rst
vnc-security.rst docs: recommend SCRAM-SHA-256 SASL mech instead of SHA-1 variant 2021-06-14 13:28:50 +01:00