summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Mammedov <imammedo@redhat.com>2020-02-19 11:09:15 -0500
committerPatchew Importer <importer@patchew.org>2020-02-19 16:49:57 +0000
commit7c59c1e0cced0da34263d890902ec2b3dee8238b (patch)
tree39ee454149846754f7cd98ebf6d36bad8eac4abc
parent17c38c759c0505808286772314bf434af5f6e4aa (diff)
downloadqemu-7c59c1e0cced0da34263d890902ec2b3dee8238b.zip
hppa: use memdev for RAM
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> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-Id: <20200219160953.13771-42-imammedo@redhat.com>
-rw-r--r--hw/hppa/machine.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c
index d8755ec422..67181e75ba 100644
--- a/hw/hppa/machine.c
+++ b/hw/hppa/machine.c
@@ -71,14 +71,11 @@ static void machine_hppa_init(MachineState *machine)
uint64_t kernel_entry = 0, kernel_low, kernel_high;
MemoryRegion *addr_space = get_system_memory();
MemoryRegion *rom_region;
- MemoryRegion *ram_region;
MemoryRegion *cpu_region;
long i;
unsigned int smp_cpus = machine->smp.cpus;
SysBusDevice *s;
- ram_size = machine->ram_size;
-
/* Create CPUs. */
for (i = 0; i < smp_cpus; i++) {
char *name = g_strdup_printf("cpu%ld-io-eir", i);
@@ -97,10 +94,8 @@ static void machine_hppa_init(MachineState *machine)
error_report("RAM size is currently restricted to 3GB");
exit(EXIT_FAILURE);
}
- ram_region = g_new(MemoryRegion, 1);
- memory_region_allocate_system_memory(ram_region, OBJECT(machine),
- "ram", ram_size);
- memory_region_add_subregion_overlap(addr_space, 0, ram_region, -1);
+ memory_region_add_subregion_overlap(addr_space, 0, machine->ram, -1);
+
/* Init Lasi chip */
lasi_init(addr_space);
@@ -298,6 +293,7 @@ static void machine_hppa_machine_init(MachineClass *mc)
mc->is_default = 1;
mc->default_ram_size = 512 * MiB;
mc->default_boot_order = "cd";
+ mc->default_ram_id = "ram";
}
DEFINE_MACHINE("hppa", machine_hppa_machine_init)