On Fri, 5 Feb 2021 at 14:44, Philippe Mathieu-Daudé <f4...@amsat.org> wrote: > > Support for ARMv7 has been dropped in commit 82bf7ae84ce > ("target/arm: Remove KVM support for 32-bit Arm hosts"). > Restrict the 32-bit CPUs to --enable-tcg builds. > > Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org> > --- > hw/arm/virt.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/hw/arm/virt.c b/hw/arm/virt.c > index f5e4a6ec914..ab6300650f9 100644 > --- a/hw/arm/virt.c > +++ b/hw/arm/virt.c > @@ -197,8 +197,10 @@ static const int a15irqmap[] = { > }; > > static const char *valid_cpus[] = { > +#ifdef CONFIG_TCG > ARM_CPU_TYPE_NAME("cortex-a7"), > ARM_CPU_TYPE_NAME("cortex-a15"), > +#endif /* CONFIG_TCG */ > #ifdef TARGET_AARCH64 > ARM_CPU_TYPE_NAME("cortex-a53"), > ARM_CPU_TYPE_NAME("cortex-a57"),
How painful would it be to just have it check whether the CPU type is present in the executable, rather than hard-coding an ifdef ? I think that if you try to run the virt board with command line arguments that (implicitly or explicitly) mean you've asked for a CPU which isn't present in the QEMU executable, it should give an error rather than silently selecting something else. thanks -- PMM