Message ID | 20240123063842.35255-6-philmd@linaro.org |
---|---|
State | New |
Headers | show |
Series | hw/arm/cortex-a: Check for CPU types in machine_run_board_init() | expand |
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);
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);
Restrict MachineClass::valid_cpu_types[] to the single valid CPU type. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- hw/arm/aspeed.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+)