[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v6 19/29] target/arm: Move 64-bit TCG CPUs into tcg/
From: |
Peter Maydell |
Subject: |
Re: [PATCH v6 19/29] target/arm: Move 64-bit TCG CPUs into tcg/ |
Date: |
Tue, 21 Feb 2023 14:16:59 +0000 |
On Fri, 17 Feb 2023 at 20:15, Fabiano Rosas <farosas@suse.de> wrote:
>
> Move the 64-bit CPUs that are TCG-only:
> - cortex-a35
> - cortex-a55
> - cortex-a72
> - cortex-a76
> - a64fx
> - neoverse-n1
>
> Keep the CPUs that can be used with KVM:
> - cortex-a57
> - cortex-a53
> - max
> - host
>
> For the special case "max" CPU, there's a nuance that while KVM/HVF
> use the "host" model instead, we still cannot move all of the TCG code
> into the tcg directory because the qtests might reach the !kvm && !hvf
> branch. Keep the cortex_a57_initfn() call to cover that scenario.
>
> Signed-off-by: Fabiano Rosas <farosas@suse.de>
> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
> ---
> -/* -cpu max: if KVM is enabled, like -cpu host (best possible with this
> host);
> - * otherwise, a CPU with as many features enabled as our emulation supports.
> - * The version of '-cpu max' for qemu-system-arm is defined in cpu.c;
> - * this only needs to handle 64 bits.
> - */
> static void aarch64_max_initfn(Object *obj)
> {
> - ARMCPU *cpu = ARM_CPU(obj);
> - uint64_t t;
> - uint32_t u;
> -
> if (kvm_enabled() || hvf_enabled()) {
> /* With KVM or HVF, '-cpu max' is identical to '-cpu host' */
> aarch64_host_initfn(obj);
> return;
> }
>
> + if (tcg_enabled() || qtest_enabled()) {
> + aarch64_a57_initfn(obj);
> + }
> +
> + if (tcg_enabled()) {
> + aarch64_max_tcg_initfn(obj);
> + }
Why do this only for TCG, and not qtest ?
> }
thanks
-- PMM
- [PATCH v6 11/29] target/arm: Wrap arm_rebuild_hflags calls with tcg_enabled, (continued)
- [PATCH v6 11/29] target/arm: Wrap arm_rebuild_hflags calls with tcg_enabled, Fabiano Rosas, 2023/02/17
- [PATCH v6 12/29] target/arm: Move hflags code into the tcg directory, Fabiano Rosas, 2023/02/17
- [PATCH v6 14/29] target/arm: Don't access TCG code when debugging with KVM, Fabiano Rosas, 2023/02/17
- [PATCH v6 13/29] target/arm: Move regime_using_lpae_format into internal.h, Fabiano Rosas, 2023/02/17
- [PATCH v6 15/29] cpu-defs.h: Expose CPUTLBEntryFull to non-TCG code, Fabiano Rosas, 2023/02/17
- [PATCH v6 16/29] target/arm: Move cortex sysregs into cpu64.c, Fabiano Rosas, 2023/02/17
- [PATCH v6 17/29] tests/avocado: Skip tests that require a missing accelerator, Fabiano Rosas, 2023/02/17
- [PATCH v6 18/29] tests/avocado: Tag TCG tests with accel:tcg, Fabiano Rosas, 2023/02/17
- [PATCH v6 19/29] target/arm: Move 64-bit TCG CPUs into tcg/, Fabiano Rosas, 2023/02/17
- Re: [PATCH v6 19/29] target/arm: Move 64-bit TCG CPUs into tcg/,
Peter Maydell <=
- [PATCH v6 21/29] target/arm: Use "max" as default cpu for the virt machine with KVM, Fabiano Rosas, 2023/02/17
- [PATCH v6 25/29] tests/avocado: add machine:none tag to version.py, Fabiano Rosas, 2023/02/17
- [PATCH v6 27/29] arm/Kconfig: Do not build TCG-only boards on a KVM-only build, Fabiano Rosas, 2023/02/17
- [PATCH v6 22/29] tests/qtest: arm-cpu-features: Match tests to required accelerators, Fabiano Rosas, 2023/02/17
- [PATCH v6 26/29] arm/Kconfig: Always select SEMIHOSTING when TCG is present, Fabiano Rosas, 2023/02/17
- [PATCH v6 20/29] target/arm: move cpu_tcg to tcg/cpu32.c, Fabiano Rosas, 2023/02/17
- [PATCH v6 23/29] tests/qtest: Restrict tpm-tis-devices-{swtpm}-test to CONFIG_TCG, Fabiano Rosas, 2023/02/17
- [PATCH v6 24/29] target/avocado: Pass parameters to migration test, Fabiano Rosas, 2023/02/17
- [PATCH v6 28/29] gitlab-ci: Check building KVM-only aarch64 target, Fabiano Rosas, 2023/02/17