[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 4/6] hw/arm/highbank: Check for CPU types in machine_run_board
|
From: |
Philippe Mathieu-Daudé |
|
Subject: |
[PATCH v2 4/6] hw/arm/highbank: Check for CPU types in machine_run_board_init() |
|
Date: |
Tue, 23 Jan 2024 23:25:06 +0100 |
Restrict MachineClass::valid_cpu_types[] to the single
valid CPU types.
Instead of ignoring invalid CPU type requested by the user:
$ qemu-system-arm -M midway -cpu cortex-a7 -S -monitor stdio
QEMU 8.2.50 monitor - type 'help' for more information
(qemu) info qom-tree
/machine (midway-machine)
/cpu[0] (cortex-a15-arm-cpu)
...
we now display an error:
$ qemu-system-arm -M midway -cpu cortex-a7
qemu-system-arm: Invalid CPU model: cortex-a7
The only valid type is: cortex-a15
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
hw/arm/highbank.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/hw/arm/highbank.c b/hw/arm/highbank.c
index b8d702c82c..0367050697 100644
--- a/hw/arm/highbank.c
+++ b/hw/arm/highbank.c
@@ -345,10 +345,15 @@ static void midway_init(MachineState *machine)
static void highbank_class_init(ObjectClass *oc, void *data)
{
+ static const char * const valid_cpu_types[] = {
+ ARM_CPU_TYPE_NAME("cortex-a9"),
+ NULL
+ };
MachineClass *mc = MACHINE_CLASS(oc);
mc->desc = "Calxeda Highbank (ECX-1000)";
mc->init = highbank_init;
+ mc->valid_cpu_types = valid_cpu_types;
mc->block_default_type = IF_IDE;
mc->units_per_default_bus = 1;
mc->max_cpus = 4;
@@ -364,10 +369,15 @@ static const TypeInfo highbank_type = {
static void midway_class_init(ObjectClass *oc, void *data)
{
+ static const char * const valid_cpu_types[] = {
+ ARM_CPU_TYPE_NAME("cortex-a15"),
+ NULL
+ };
MachineClass *mc = MACHINE_CLASS(oc);
mc->desc = "Calxeda Midway (ECX-2000)";
mc->init = midway_init;
+ mc->valid_cpu_types = valid_cpu_types;
mc->block_default_type = IF_IDE;
mc->units_per_default_bus = 1;
mc->max_cpus = 4;
--
2.41.0
- [PATCH v2 0/6] hw/arm/cortex-a: Check for CPU types in machine_run_board_init(), Philippe Mathieu-Daudé, 2024/01/23
- [PATCH v2 1/6] hw/arm/exynos: Add missing QOM parent for CPU cores, Philippe Mathieu-Daudé, 2024/01/23
- [PATCH v2 2/6] hw/arm/exynos: Check for CPU types in machine_run_board_init(), Philippe Mathieu-Daudé, 2024/01/23
- [PATCH v2 3/6] hw/arm/highbank: Add missing QOM parent for CPU cores, Philippe Mathieu-Daudé, 2024/01/23
- [PATCH v2 4/6] hw/arm/highbank: Check for CPU types in machine_run_board_init(),
Philippe Mathieu-Daudé <=
- [PATCH v2 5/6] hw/arm/vexpress: Check for CPU types in machine_run_board_init(), Philippe Mathieu-Daudé, 2024/01/23
- [PATCH v2 6/6] hw/arm/zynq: Check for CPU types in machine_run_board_init(), Philippe Mathieu-Daudé, 2024/01/23