Message ID | 20200217173452.15243-61-imammedo@redhat.com |
---|---|
State | New |
Headers | show |
Series | refactor main RAM allocation to use hostmem backend | expand |
On 2/17/20 9:34 AM, Igor Mammedov wrote: > memory_region_allocate_system_memory() API is going away, so > replace it with memdev allocated MemoryRegion. The later is > initialized by generic code, so board only needs to opt in > to memdev scheme by providing > MachineClass::default_ram_id > and using MachineState::ram instead of manually initializing > RAM memory region. > > Signed-off-by: Igor Mammedov <imammedo@redhat.com> > Acked-by: David Gibson <david@gibson.dropbear.id.au> > Acked-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> > --- Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
On 2/17/20 6:34 PM, Igor Mammedov wrote: > memory_region_allocate_system_memory() API is going away, so > replace it with memdev allocated MemoryRegion. The later is > initialized by generic code, so board only needs to opt in > to memdev scheme by providing > MachineClass::default_ram_id > and using MachineState::ram instead of manually initializing > RAM memory region. > > Signed-off-by: Igor Mammedov <imammedo@redhat.com> > Acked-by: David Gibson <david@gibson.dropbear.id.au> > Acked-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> > --- > hw/ppc/mac_newworld.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/hw/ppc/mac_newworld.c b/hw/ppc/mac_newworld.c > index 464d012103..b8189bf7a4 100644 > --- a/hw/ppc/mac_newworld.c > +++ b/hw/ppc/mac_newworld.c > @@ -118,7 +118,7 @@ static void ppc_core99_init(MachineState *machine) > char *filename; > IrqLines *openpic_irqs; > int linux_boot, i, j, k; > - MemoryRegion *ram = g_new(MemoryRegion, 1), *bios = g_new(MemoryRegion, 1); > + MemoryRegion *bios = g_new(MemoryRegion, 1); > hwaddr kernel_base, initrd_base, cmdline_base = 0; > long kernel_size, initrd_size; > UNINHostState *uninorth_pci; > @@ -152,8 +152,7 @@ static void ppc_core99_init(MachineState *machine) > } > > /* allocate RAM */ > - memory_region_allocate_system_memory(ram, NULL, "ppc_core99.ram", ram_size); > - memory_region_add_subregion(get_system_memory(), 0, ram); > + memory_region_add_subregion(get_system_memory(), 0, machine->ram); > > /* allocate and load BIOS */ > memory_region_init_ram(bios, NULL, "ppc_core99.bios", BIOS_SIZE, > @@ -586,6 +585,7 @@ static void core99_machine_class_init(ObjectClass *oc, void *data) > #else > mc->default_cpu_type = POWERPC_CPU_TYPE_NAME("7400_v2.9"); > #endif > + mc->default_ram_id = "ppc_core99.ram"; > mc->ignore_boot_device_suffixes = true; > fwc->get_dev_path = core99_fw_dev_path; > } > Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
diff --git a/hw/ppc/mac_newworld.c b/hw/ppc/mac_newworld.c index 464d012103..b8189bf7a4 100644 --- a/hw/ppc/mac_newworld.c +++ b/hw/ppc/mac_newworld.c @@ -118,7 +118,7 @@ static void ppc_core99_init(MachineState *machine) char *filename; IrqLines *openpic_irqs; int linux_boot, i, j, k; - MemoryRegion *ram = g_new(MemoryRegion, 1), *bios = g_new(MemoryRegion, 1); + MemoryRegion *bios = g_new(MemoryRegion, 1); hwaddr kernel_base, initrd_base, cmdline_base = 0; long kernel_size, initrd_size; UNINHostState *uninorth_pci; @@ -152,8 +152,7 @@ static void ppc_core99_init(MachineState *machine) } /* allocate RAM */ - memory_region_allocate_system_memory(ram, NULL, "ppc_core99.ram", ram_size); - memory_region_add_subregion(get_system_memory(), 0, ram); + memory_region_add_subregion(get_system_memory(), 0, machine->ram); /* allocate and load BIOS */ memory_region_init_ram(bios, NULL, "ppc_core99.bios", BIOS_SIZE, @@ -586,6 +585,7 @@ static void core99_machine_class_init(ObjectClass *oc, void *data) #else mc->default_cpu_type = POWERPC_CPU_TYPE_NAME("7400_v2.9"); #endif + mc->default_ram_id = "ppc_core99.ram"; mc->ignore_boot_device_suffixes = true; fwc->get_dev_path = core99_fw_dev_path; }