qemu-arm
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 5/8] hw/arm/aspeed/2500: Check for CPU types in machine_run_b


From: Cédric Le Goater
Subject: Re: [PATCH 5/8] hw/arm/aspeed/2500: Check for CPU types in machine_run_board_init()
Date: Tue, 23 Jan 2024 10:03:44 +0100
User-agent: Mozilla Thunderbird

On 1/23/24 07:38, Philippe Mathieu-Daudé wrote:
Restrict MachineClass::valid_cpu_types[] to the single
valid CPU type.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>


Reviewed-by: Cédric Le Goater <clg@kaod.org>

Thanks,

C.


---
  hw/arm/aspeed.c | 14 ++++++++++++++
  1 file changed, 14 insertions(+)

diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
index e0e0877b1d..df627096d2 100644
--- a/hw/arm/aspeed.c
+++ b/hw/arm/aspeed.c
@@ -1152,6 +1152,11 @@ static const char * const ast2400_a1_valid_cpu_types[] = 
{
      NULL
  };
+static const char * const ast2500_a1_valid_cpu_types[] = {
+    ARM_CPU_TYPE_NAME("arm1176"),
+    NULL
+};
+
  static void aspeed_machine_class_init(ObjectClass *oc, void *data)
  {
      MachineClass *mc = MACHINE_CLASS(oc);
@@ -1236,6 +1241,7 @@ static void 
aspeed_machine_supermicro_x11spi_bmc_class_init(ObjectClass *oc,
      amc->num_cs    = 1;
      amc->macs_mask = ASPEED_MAC0_ON | ASPEED_MAC1_ON;
      amc->i2c_init  = palmetto_bmc_i2c_init;
+    mc->valid_cpu_types = ast2500_a1_valid_cpu_types;
      mc->default_ram_size = 512 * MiB;
      mc->default_cpus = mc->min_cpus = mc->max_cpus =
          aspeed_soc_num_cpus(amc->soc_name);
@@ -1253,6 +1259,7 @@ static void 
aspeed_machine_ast2500_evb_class_init(ObjectClass *oc, void *data)
      amc->spi_model = "mx25l25635f";
      amc->num_cs    = 1;
      amc->i2c_init  = ast2500_evb_i2c_init;
+    mc->valid_cpu_types = ast2500_a1_valid_cpu_types;
      mc->default_ram_size       = 512 * MiB;
      mc->default_cpus = mc->min_cpus = mc->max_cpus =
          aspeed_soc_num_cpus(amc->soc_name);
@@ -1271,6 +1278,7 @@ static void 
aspeed_machine_yosemitev2_class_init(ObjectClass *oc, void *data)
      amc->spi_model = "mx25l25635e";
      amc->num_cs    = 2;
      amc->i2c_init  = yosemitev2_bmc_i2c_init;
+    mc->valid_cpu_types = ast2500_a1_valid_cpu_types;
      mc->default_ram_size       = 512 * MiB;
      mc->default_cpus = mc->min_cpus = mc->max_cpus =
          aspeed_soc_num_cpus(amc->soc_name);
@@ -1288,6 +1296,7 @@ static void aspeed_machine_romulus_class_init(ObjectClass 
*oc, void *data)
      amc->spi_model = "mx66l1g45g";
      amc->num_cs    = 2;
      amc->i2c_init  = romulus_bmc_i2c_init;
+    mc->valid_cpu_types = ast2500_a1_valid_cpu_types;
      mc->default_ram_size       = 512 * MiB;
      mc->default_cpus = mc->min_cpus = mc->max_cpus =
          aspeed_soc_num_cpus(amc->soc_name);
@@ -1306,6 +1315,7 @@ static void 
aspeed_machine_tiogapass_class_init(ObjectClass *oc, void *data)
      amc->spi_model = "mx25l25635e";
      amc->num_cs    = 2;
      amc->i2c_init  = tiogapass_bmc_i2c_init;
+    mc->valid_cpu_types = ast2500_a1_valid_cpu_types;
      mc->default_ram_size       = 1 * GiB;
      mc->default_cpus = mc->min_cpus = mc->max_cpus =
          aspeed_soc_num_cpus(amc->soc_name);
@@ -1324,6 +1334,7 @@ static void 
aspeed_machine_sonorapass_class_init(ObjectClass *oc, void *data)
      amc->spi_model = "mx66l1g45g";
      amc->num_cs    = 2;
      amc->i2c_init  = sonorapass_bmc_i2c_init;
+    mc->valid_cpu_types = ast2500_a1_valid_cpu_types;
      mc->default_ram_size       = 512 * MiB;
      mc->default_cpus = mc->min_cpus = mc->max_cpus =
          aspeed_soc_num_cpus(amc->soc_name);
@@ -1341,6 +1352,7 @@ static void 
aspeed_machine_witherspoon_class_init(ObjectClass *oc, void *data)
      amc->spi_model = "mx66l1g45g";
      amc->num_cs    = 2;
      amc->i2c_init  = witherspoon_bmc_i2c_init;
+    mc->valid_cpu_types = ast2500_a1_valid_cpu_types;
      mc->default_ram_size = 512 * MiB;
      mc->default_cpus = mc->min_cpus = mc->max_cpus =
          aspeed_soc_num_cpus(amc->soc_name);
@@ -1398,6 +1410,7 @@ static void aspeed_machine_g220a_class_init(ObjectClass 
*oc, void *data)
      amc->num_cs    = 2;
      amc->macs_mask  = ASPEED_MAC0_ON | ASPEED_MAC1_ON;
      amc->i2c_init  = g220a_bmc_i2c_init;
+    mc->valid_cpu_types = ast2500_a1_valid_cpu_types;
      mc->default_ram_size = 1024 * MiB;
      mc->default_cpus = mc->min_cpus = mc->max_cpus =
          aspeed_soc_num_cpus(amc->soc_name);
@@ -1416,6 +1429,7 @@ static void 
aspeed_machine_fp5280g2_class_init(ObjectClass *oc, void *data)
      amc->num_cs    = 2;
      amc->macs_mask  = ASPEED_MAC0_ON | ASPEED_MAC1_ON;
      amc->i2c_init  = fp5280g2_bmc_i2c_init;
+    mc->valid_cpu_types = ast2500_a1_valid_cpu_types;
      mc->default_ram_size = 512 * MiB;
      mc->default_cpus = mc->min_cpus = mc->max_cpus =
          aspeed_soc_num_cpus(amc->soc_name);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]