From: "Philippe Mathieu-Daudé" <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: "Peter Maydell" <peter.maydell@linaro.org>,
"Cédric Le Goater" <clg@kaod.org>,
"Richard Henderson" <richard.henderson@linaro.org>,
qemu-arm@nongnu.org, "Joel Stanley" <joel@jms.id.au>,
"Kane Chen" <kane_chen@aspeedtech.com>,
"Troy Lee" <leetroy@gmail.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Pierrick Bouvier" <pierrick.bouvier@oss.qualcomm.com>,
"Jamin Lin" <jamin_lin@aspeedtech.com>,
"Steven Lee" <steven_lee@aspeedtech.com>,
"Andrew Jeffery" <andrew@codeconstruct.com.au>,
"Manos Pitsidianakis" <manos.pitsidianakis@linaro.org>
Subject: [PATCH v6 00/20] single-binary: Make hw/arm/ common
Date: Fri, 15 May 2026 16:10:11 +0200 [thread overview]
Message-ID: <20260515141032.3271-1-philmd@linaro.org> (raw)
Since v5:
- Unify 'max' CPU type (rth, pm215)
Since v4:
- Add DEFINE_MACHINE_WITH_INTERFACES (Zoltan)
- Use GPtrArray for get_valid_cpu_type (Richard)
- Define InterfaceInfo[] arrays (Richard)
- Collect R-b tags
Since v3:
- QAPI structure renamed as QemuTargetInfo
- MachineClass::get_valid_cpu_types() runtime
- target_aarch64() checking SysEmuTarget value
- Remove CONFIG_TCG #ifdef'ry in hw/arm/
Since v2:
- More comments from Pierrick addressed
- Use GList to register valid CPUs list
- Remove all TARGET_AARCH64 uses in hw/arm/
Since v1:
- Dropped unrelated / irrelevant patches
- Addressed Pierrick comments
- Added R-b tag
- Only considering machines, not CPUs.
Available here, based on my pending patch queue:
https://gitlab.com/philmd/qemu/-/tags/single-binary-hw-arm-rfc-v5
Philippe Mathieu-Daudé (20):
hw/arm: Build ARM/HVF GICv3 stub once
hw/arm/raspi: Initialize 64-bit CPU types during DeviceRealize()
hw/arm/raspi: Build objects once
hw/arm/aspeed: Initialize 64-bit CPU types during DeviceRealize()
hw/arm/aspeed: Build objects once
hw/arm/meson: Remove now unused arm_ss[] source set
target/arm: Introduce common system/user meson source set
target/arm: Build gdbstub64.o as common object
target/arm: Build cpu64.o as common object
target/arm: Restrict IDAU interface to TCG namespace
target/arm: Rename Aarch64-specific methods
target/arm: Extract common code related to 'max' CPU
target/arm: Use make_ccsidr(LEGACY) in 32 bit 'max' CPU type
target/arm: Implement DBGDEVID* registers in max AArch32 CPU
target/arm: Only set %kvm_target when KVM is enabled
target/arm: Factor aarch64_aa32_a57_init() out
target/arm: Re-use common aarch64_aa32_a57_init() helper
target/arm: Define 'max' CPU type in cpu-max.c
target/arm: Build cpu32-system.o as common object
target/arm: Build cpu-max.c once
include/hw/arm/armv7m.h | 2 +-
include/hw/misc/tz-msc.h | 2 +-
target/arm/internals.h | 10 +-
target/arm/{ => tcg}/idau.h | 4 +-
hw/arm/armv7m.c | 2 +-
hw/arm/aspeed_ast27x0.c | 7 +-
hw/arm/bcm2836.c | 14 +-
hw/arm/raspi.c | 4 -
target/arm/cpu-max.c | 241 +++++++++++++++++++++
target/arm/cpu.c | 10 +-
target/arm/cpu32-stubs.c | 8 +-
target/arm/cpu64.c | 92 +-------
target/arm/ptw.c | 2 +-
target/arm/tcg/cpu-v7m.c | 11 +
target/arm/tcg/{cpu32.c => cpu32-system.c} | 191 +---------------
target/arm/tcg/stubs32.c | 10 +
hw/arm/meson.build | 15 +-
hw/intc/meson.build | 2 +-
target/arm/meson.build | 26 ++-
target/arm/tcg/meson.build | 60 ++---
20 files changed, 349 insertions(+), 364 deletions(-)
rename target/arm/{ => tcg}/idau.h (97%)
create mode 100644 target/arm/cpu-max.c
rename target/arm/tcg/{cpu32.c => cpu32-system.c} (80%)
--
2.53.0
next reply other threads:[~2026-05-15 14:11 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-15 14:10 Philippe Mathieu-Daudé [this message]
2026-05-15 14:10 ` [PATCH v6 01/20] hw/arm: Build ARM/HVF GICv3 stub once Philippe Mathieu-Daudé
2026-05-15 16:35 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 02/20] hw/arm/raspi: Initialize 64-bit CPU types during DeviceRealize() Philippe Mathieu-Daudé
2026-05-15 14:15 ` Manos Pitsidianakis
2026-05-15 16:58 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 03/20] hw/arm/raspi: Build objects once Philippe Mathieu-Daudé
2026-05-15 14:15 ` Manos Pitsidianakis
2026-05-15 14:10 ` [PATCH v6 04/20] hw/arm/aspeed: Initialize 64-bit CPU types during DeviceRealize() Philippe Mathieu-Daudé
2026-05-15 14:14 ` Manos Pitsidianakis
2026-05-15 16:29 ` Cédric Le Goater
2026-05-15 17:00 ` Pierrick Bouvier
2026-05-15 17:18 ` Cédric Le Goater
2026-05-15 17:22 ` Pierrick Bouvier
2026-05-15 21:17 ` Cédric Le Goater
2026-05-15 17:00 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 05/20] hw/arm/aspeed: Build objects once Philippe Mathieu-Daudé
2026-05-15 14:16 ` Manos Pitsidianakis
2026-05-15 14:10 ` [PATCH v6 06/20] hw/arm/meson: Remove now unused arm_ss[] source set Philippe Mathieu-Daudé
2026-05-15 14:16 ` Manos Pitsidianakis
2026-05-15 14:10 ` [PATCH v6 07/20] target/arm: Introduce common system/user meson " Philippe Mathieu-Daudé
2026-05-15 14:17 ` Manos Pitsidianakis
2026-05-15 17:04 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 08/20] target/arm: Build gdbstub64.o as common object Philippe Mathieu-Daudé
2026-05-15 14:17 ` Manos Pitsidianakis
2026-05-15 17:04 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 09/20] target/arm: Build cpu64.o " Philippe Mathieu-Daudé
2026-05-15 14:21 ` Manos Pitsidianakis
2026-05-15 14:27 ` Philippe Mathieu-Daudé
2026-05-15 17:06 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 10/20] target/arm: Restrict IDAU interface to TCG namespace Philippe Mathieu-Daudé
2026-05-15 14:23 ` Manos Pitsidianakis
2026-05-15 14:27 ` Philippe Mathieu-Daudé
2026-05-15 17:07 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 11/20] target/arm: Rename Aarch64-specific methods Philippe Mathieu-Daudé
2026-05-15 14:23 ` Manos Pitsidianakis
2026-05-15 14:10 ` [PATCH v6 12/20] target/arm: Extract common code related to 'max' CPU Philippe Mathieu-Daudé
2026-05-15 14:24 ` Manos Pitsidianakis
2026-05-15 17:10 ` Pierrick Bouvier
2026-05-15 17:13 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 13/20] target/arm: Use make_ccsidr(LEGACY) in 32 bit 'max' CPU type Philippe Mathieu-Daudé
2026-05-15 14:25 ` Manos Pitsidianakis
2026-05-15 17:10 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 14/20] target/arm: Implement DBGDEVID* registers in max AArch32 CPU Philippe Mathieu-Daudé
2026-05-15 14:26 ` Manos Pitsidianakis
2026-05-15 17:11 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 15/20] target/arm: Only set %kvm_target when KVM is enabled Philippe Mathieu-Daudé
2026-05-15 14:26 ` Manos Pitsidianakis
2026-05-15 17:11 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 16/20] target/arm: Factor aarch64_aa32_a57_init() out Philippe Mathieu-Daudé
2026-05-15 14:27 ` Manos Pitsidianakis
2026-05-15 17:12 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 17/20] target/arm: Re-use common aarch64_aa32_a57_init() helper Philippe Mathieu-Daudé
2026-05-15 14:28 ` Manos Pitsidianakis
2026-05-15 17:12 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 18/20] target/arm: Define 'max' CPU type in cpu-max.c Philippe Mathieu-Daudé
2026-05-15 14:29 ` Manos Pitsidianakis
2026-05-15 17:22 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 19/20] target/arm: Build cpu32-system.o as common object Philippe Mathieu-Daudé
2026-05-15 14:30 ` Manos Pitsidianakis
2026-05-15 17:14 ` Pierrick Bouvier
2026-05-15 14:10 ` [PATCH v6 20/20] target/arm: Build cpu-max.c once Philippe Mathieu-Daudé
2026-05-15 14:31 ` Manos Pitsidianakis
2026-05-15 17:15 ` Pierrick Bouvier
2026-05-15 17:02 ` [PATCH v6 00/20] single-binary: Make hw/arm/ common Pierrick Bouvier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260515141032.3271-1-philmd@linaro.org \
--to=philmd@linaro.org \
--cc=andrew@codeconstruct.com.au \
--cc=clg@kaod.org \
--cc=jamin_lin@aspeedtech.com \
--cc=joel@jms.id.au \
--cc=kane_chen@aspeedtech.com \
--cc=leetroy@gmail.com \
--cc=manos.pitsidianakis@linaro.org \
--cc=peter.maydell@linaro.org \
--cc=pierrick.bouvier@oss.qualcomm.com \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=steven_lee@aspeedtech.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.