On Fri, 2016-09-09 at 18:22 +0200, Cédric Le Goater wrote: > If the RAM size is invalid, the memory controller will use a default > value. > > Signed-off-by: Cédric Le Goater <c...@kaod.org>
Reviewed-by: Andrew Jeffery <and...@aj.id.au> > --- > hw/arm/aspeed.c | 18 +++++++++++++----- > 1 file changed, 13 insertions(+), 5 deletions(-) > > diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c > index 562bbb253391..6b18c7f1727c 100644 > --- a/hw/arm/aspeed.c > +++ b/hw/arm/aspeed.c > @@ -108,11 +108,6 @@ static void aspeed_board_init(MachineState *machine, > > sc = ASPEED_SOC_GET_CLASS(&bmc->soc); > > - memory_region_allocate_system_memory(&bmc->ram, NULL, "ram", ram_size); > - memory_region_add_subregion(get_system_memory(), sc->info->sdram_base, > - &bmc->ram); > - object_property_add_const_link(OBJECT(&bmc->soc), "ram", > OBJECT(&bmc->ram), > - &error_abort); > object_property_set_int(OBJECT(&bmc->soc), ram_size, "ram-size", > &error_abort); > object_property_set_int(OBJECT(&bmc->soc), cfg->hw_strap1, "hw-strap1", > @@ -120,6 +115,19 @@ static void aspeed_board_init(MachineState *machine, > object_property_set_bool(OBJECT(&bmc->soc), true, "realized", > &error_abort); > > + /* > + * Allocate RAM after the memory controller has checked the size > + * was valid. If not, a default value is used. > + */ > + ram_size = object_property_get_int(OBJECT(&bmc->soc), "ram-size", > + &error_abort); > + > + memory_region_allocate_system_memory(&bmc->ram, NULL, "ram", ram_size); > + memory_region_add_subregion(get_system_memory(), sc->info->sdram_base, > + &bmc->ram); > + object_property_add_const_link(OBJECT(&bmc->soc), "ram", > OBJECT(&bmc->ram), > + &error_abort); > + > aspeed_board_init_flashes(&bmc->soc.smc, "n25q256a", &error_abort); > aspeed_board_init_flashes(&bmc->soc.spi, "mx25l25635e", &error_abort); >
signature.asc
Description: This is a digitally signed message part