mbox series

[v2,0/2] tune-cortexa32: Add AArch32 QEMU machine

Message ID 20260810-tune-a32-v2-0-52045fd54937@gmail.com
Headers show
Series tune-cortexa32: Add AArch32 QEMU machine | expand

Message

Alex Kiernan Aug. 10, 2026, 5:11 a.m. UTC
Cortex-A32 is an AArch32-only ARMv8-A core - it has no AArch64 mode at
all. The current tune-cortexa32.inc lacks the thumb feature, and its
AArch32 crypto FPU selection and PACKAGE_EXTRA_ARCHS names are wrong for
a Thumb-2 build.

Adds a qemuarmv8a32 machine so the above is actually exercisable: QEMU
has no Cortex-A32 model, so it runs on the 'virt' machine with
qemu-system-aarch64 using the Cortex-A32's AArch64-capable sibling, the
Cortex-A35, with 'aarch64=off' so the guest is AArch32-only. This
provides the ARMv8-A AArch32 feature set including the crypto extensions
needed by the crypto tune, and the same binary supports KVM on AArch64
hosts whose CPUs implement AArch32 at EL1 via '-cpu host,aarch64=off'.
The kernel is built as a zImage and u-boot uses qemu_arm_defconfig,
matching the other 32-bit ARM QEMU machines.

AI-Generated: Claude Code (Claude Opus 4.8)
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Alex Kiernan <alexk@a-squared-projects.uk>
---
Changes in v2:
- Drop merged AArch32 ARMv8-A patches
- Cherry-pick upstream QEMU support to Allow aarch64=off for TCG
- Rework qemuarmv8a32 so it runs on qemu-system-aarch64 with aarch64=off
- Link to v1: https://patch.msgid.link/20260701-tune-a32-v1-0-a43f28b1d7a4@gmail.com

---
Alex Kiernan (2):
      qemu: Backport support for 'aarch64=off' with TCG
      qemuarmv8a32: add QEMU machine for AArch32 ARMv8-A

 meta/conf/machine/qemuarmv8a32.conf                |  38 ++++++
 meta/recipes-devtools/qemu/qemu.inc                |   2 +
 ...lear-AArch64-ID-regs-from-ARMISARegisters.patch | 110 +++++++++++++++++
 ...-Allow-aarch64-off-to-be-set-for-TCG-CPUs.patch | 134 +++++++++++++++++++++
 meta/recipes-kernel/linux/linux-yocto_6.18.bb      |   2 +-
 5 files changed, 285 insertions(+), 1 deletion(-)
---
base-commit: ddb2dd22942f2fcacb6b88d5b37d2a26ca832982
change-id: 20260701-tune-a32-78f0212484c9

Best regards,
--  
Alex Kiernan <alex.kiernan@gmail.com>