[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v6 64/79] ppc/ppc405_boards: use memdev for RAM
From: |
Igor Mammedov |
Subject: |
[PATCH v6 64/79] ppc/ppc405_boards: use memdev for RAM |
Date: |
Wed, 19 Feb 2020 11:09:38 -0500 |
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.
PS:
in ref405ep alias RAM into ram_memories[] to avoid re-factoring
its user ppc405ep_init(), which would be invasive and out of
scope this patch.
Signed-off-by: Igor Mammedov <address@hidden>
Acked-by: David Gibson <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
---
v6:
- fix copy/paste error s/ef405ep.ram/taihu_405ep.ram/
(Richard Henderson <address@hidden>)
CC: address@hidden
CC: address@hidden
---
hw/ppc/ppc405_boards.c | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/hw/ppc/ppc405_boards.c b/hw/ppc/ppc405_boards.c
index 057882a5d2..de93c40f1a 100644
--- a/hw/ppc/ppc405_boards.c
+++ b/hw/ppc/ppc405_boards.c
@@ -170,8 +170,8 @@ static void ref405ep_init(MachineState *machine)
}
/* XXX: fix this */
- memory_region_allocate_system_memory(&ram_memories[0], NULL, "ef405ep.ram",
- machine->ram_size);
+ memory_region_init_alias(&ram_memories[0], NULL, "ef405ep.ram.alias",
+ machine->ram, 0, machine->ram_size);
ram_bases[0] = 0;
ram_sizes[0] = machine->ram_size;
memory_region_init(&ram_memories[1], NULL, "ef405ep.ram1", 0);
@@ -312,6 +312,7 @@ static void ref405ep_class_init(ObjectClass *oc, void *data)
mc->desc = "ref405ep";
mc->init = ref405ep_init;
mc->default_ram_size = 0x08000000;
+ mc->default_ram_id = "ef405ep.ram";
}
static const TypeInfo ref405ep_type = {
@@ -424,7 +425,6 @@ static void taihu_405ep_init(MachineState *machine)
MemoryRegion *sysmem = get_system_memory();
MemoryRegion *bios;
MemoryRegion *ram_memories = g_new(MemoryRegion, 2);
- MemoryRegion *ram = g_malloc0(sizeof(*ram));
hwaddr ram_bases[2], ram_sizes[2];
long bios_size;
target_ulong kernel_base, initrd_base;
@@ -439,18 +439,16 @@ static void taihu_405ep_init(MachineState *machine)
g_free(sz);
exit(EXIT_FAILURE);
}
- memory_region_allocate_system_memory(ram, NULL, "taihu_405ep.ram",
- machine->ram_size);
ram_bases[0] = 0;
ram_sizes[0] = 0x04000000;
memory_region_init_alias(&ram_memories[0], NULL,
- "taihu_405ep.ram-0", ram, ram_bases[0],
+ "taihu_405ep.ram-0", machine->ram, ram_bases[0],
ram_sizes[0]);
ram_bases[1] = 0x04000000;
ram_sizes[1] = 0x04000000;
memory_region_init_alias(&ram_memories[1], NULL,
- "taihu_405ep.ram-1", ram, ram_bases[1],
+ "taihu_405ep.ram-1", machine->ram, ram_bases[1],
ram_sizes[1]);
ppc405ep_init(sysmem, ram_memories, ram_bases, ram_sizes,
33333333, &pic, kernel_filename == NULL ? 0 : 1);
@@ -546,6 +544,7 @@ static void taihu_class_init(ObjectClass *oc, void *data)
mc->desc = "taihu";
mc->init = taihu_405ep_init;
mc->default_ram_size = 0x08000000;
+ mc->default_ram_id = "taihu_405ep.ram";
}
static const TypeInfo taihu_type = {
--
2.18.1
- [PATCH v6 52/79] mips/mips_fulong2e: use memdev for RAM, (continued)
- [PATCH v6 52/79] mips/mips_fulong2e: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 63/79] ppc/ppc405_boards: add RAM size checks, Igor Mammedov, 2020/02/19
- [PATCH v6 67/79] ppc/spapr: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 65/79] ppc/{ppc440_bamboo, sam460ex}: drop RAM size fixup, Igor Mammedov, 2020/02/19
- [PATCH v6 66/79] ppc/{ppc440_bamboo, sam460ex}: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 60/79] ppc/mac_newworld: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 69/79] sparc/leon3: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 68/79] ppc/virtex_ml507: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 71/79] sparc/niagara: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 62/79] ppc/pnv: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 64/79] ppc/ppc405_boards: use memdev for RAM,
Igor Mammedov <=
- [PATCH v6 70/79] sparc/sun4m: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 72/79] remove no longer used memory_region_allocate_system_memory(), Igor Mammedov, 2020/02/19
- [PATCH v6 73/79] exec: cleanup qemu_minrampagesize()/qemu_maxrampagesize(), Igor Mammedov, 2020/02/19
- [PATCH v6 75/79] make mem_path local variable, Igor Mammedov, 2020/02/19
- [PATCH v6 76/79] hostmem: introduce "prealloc-threads" property, Igor Mammedov, 2020/02/19
- [PATCH v6 74/79] exec: drop bogus mem_path from qemu_ram_alloc_from_fd(), Igor Mammedov, 2020/02/19
- [PATCH v6 79/79] tests:numa-test: use explicit memdev to specify node RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 78/79] tests/numa-test: make top level args dynamic and g_autofree(cli) cleanups, Igor Mammedov, 2020/02/19
- [PATCH v6 77/79] hostmem: fix strict bind policy, Igor Mammedov, 2020/02/19
- Re: [PATCH v6 00/79] refactor main RAM allocation to use hostmem backend, no-reply, 2020/02/19