|
From: | Gavin Shan |
Subject: | Re: [PATCH v7 5/8] hw/arm/virt: Check CPU type in machine_run_board_init() |
Date: | Mon, 27 Nov 2023 21:42:14 +1100 |
User-agent: | Mozilla Thunderbird |
On 11/27/23 21:13, Marcin Juszkiewicz wrote:
W dniu 27.11.2023 o 00:12, Gavin Shan pisze:@@ -2939,6 +2900,28 @@ static void virt_machine_class_init(ObjectClass *oc, void *data) { MachineClass *mc = MACHINE_CLASS(oc); HotplugHandlerClass *hc = HOTPLUG_HANDLER_CLASS(oc); + static const char * const valid_cpu_types[] = { +#ifdef CONFIG_TCG + ARM_CPU_TYPE_NAME("cortex-a7"), + ARM_CPU_TYPE_NAME("cortex-a15"), + ARM_CPU_TYPE_NAME("cortex-a35"), + ARM_CPU_TYPE_NAME("cortex-a55"), + ARM_CPU_TYPE_NAME("cortex-a72"), + ARM_CPU_TYPE_NAME("cortex-a76"), + ARM_CPU_TYPE_NAME("cortex-a710"), + ARM_CPU_TYPE_NAME("a64fx"), + ARM_CPU_TYPE_NAME("neoverse-n1"), + ARM_CPU_TYPE_NAME("neoverse-v1"), + ARM_CPU_TYPE_NAME("neoverse-n2"), +#endif + ARM_CPU_TYPE_NAME("cortex-a53"), + ARM_CPU_TYPE_NAME("cortex-a57"), +#if defined(CONFIG_KVM) || defined(CONFIG_HVF) + ARM_CPU_TYPE_NAME("host"), +#endif + ARM_CPU_TYPE_NAME("max"), + NULL + };I understand that you just move list from one place to the other but also wonder why a53/a57 were/are outside of 'ifdef CONFIG_TCG' check.
I'm not sure about HVF, but a53/a57 can be supported by KVM. The supported list of CPUs by KVM is defined in linux/arch/arm64/include/uapi/asm/kvm.h as below /* * Supported CPU Targets - Adding a new target type is not recommended, * unless there are some special registers not supported by the * genericv8 syreg table. */ #define KVM_ARM_TARGET_AEM_V8 0 #define KVM_ARM_TARGET_FOUNDATION_V8 1 #define KVM_ARM_TARGET_CORTEX_A57 2 #define KVM_ARM_TARGET_XGENE_POTENZA 3 #define KVM_ARM_TARGET_CORTEX_A53 4 /* Generic ARM v8 target */ #define KVM_ARM_TARGET_GENERIC_V8 5 #define KVM_ARM_NUM_TARGETS 6 And the following QEMU commit gives more hints about it. [gshan@gshan q]$ git show 39920a04952 commit 39920a04952b67fb1fce8fc3519ac18b7a95f3f3 Author: Fabiano Rosas <farosas@suse.de> Date: Wed Apr 26 15:00:05 2023 -0300 target/arm: Move 64-bit TCG CPUs into tcg/Move the 64-bit CPUs that are TCG-only:
- cortex-a35 - cortex-a55 - cortex-a72 - cortex-a76 - a64fx - neoverse-n1Keep the CPUs that can be used with KVM:
- cortex-a57 - cortex-a53 - max - hostSigned-off-by: Fabiano Rosas <farosas@suse.de>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-id: 20230426180013.14814-6-farosas@suse.de Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Thanks, Gavin
[Prev in Thread] | Current Thread | [Next in Thread] |