[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: |
Tue, 18 Feb 2020 10:43:46 -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>
Reviewed-by: Richard Henderson <address@hidden>
Acked-by: David Gibson <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 v5 62/79] ppc/pnv: use memdev for RAM, (continued)
- [PATCH v5 62/79] ppc/pnv: use memdev for RAM, Igor Mammedov, 2020/02/17
- [PATCH v5 60/79] ppc/mac_newworld: use memdev for RAM, Igor Mammedov, 2020/02/17
- [PATCH v5 61/79] ppc/mac_oldworld: use memdev for RAM, Igor Mammedov, 2020/02/17
- [PATCH v5 63/79] ppc/ppc405_boards: add RAM size checks, Igor Mammedov, 2020/02/17
- [PATCH v5 64/79] ppc/ppc405_boards: use memdev for RAM, Igor Mammedov, 2020/02/17
- [PATCH v5 66/79] ppc/{ppc440_bamboo, sam460ex}: use memdev for RAM, Igor Mammedov, 2020/02/17
- [PATCH v5 68/79] ppc/virtex_ml507: use memdev for RAM, Igor Mammedov, 2020/02/17
- [PATCH v5 69/79] sparc/leon3: use memdev for RAM, Igor Mammedov, 2020/02/17
- [PATCH v5 67/79] ppc/spapr: use memdev for RAM, Igor Mammedov, 2020/02/17
- [PATCH v5 65/79] ppc/{ppc440_bamboo, sam460ex}: drop RAM size fixup, Igor Mammedov, 2020/02/17