Browse Source
Starting with QEMU v3.1.0 (Dec 2018), QEMU's TCG emulation engine supports the SVE architecture extension. In QEMU v7.1.0 (Aug 2022) it also gained SME support. As it stands today, running TF-A under QEMU with "-cpu max" makes Linux hang, because SME and SVE accesses trap to EL3, but are never handled there. This is because the Linux kernel sees the SVE or SME feature bits, and assumes firmware has enabled the feature for lower exception levels. This requirement is described in the Linux kernel booting protocol. Enable those features in the TF-A build, so that BL31 does the proper EL3 setup to make the feature usable in non-secure world. We check the actual feature bits before accessing SVE or SME registers, so this is safe even for older QEMU version or when not running with -cpu max. As SVE and SME are AArch64 features only, do not enable them when building for AArch32. Change-Id: I5b718eb298a0bbcf36244479e8d42e54a2faca61 Signed-off-by: Andre Przywara <andre.przywara@arm.com>pull/1988/merge
Andre Przywara
2 years ago
1 changed files with 5 additions and 2 deletions
Loading…
Reference in new issue