[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 7/7] mips/mips_r4k: use memdev for RAM
From: |
Aleksandar Markovic |
Subject: |
[PULL 7/7] mips/mips_r4k: use memdev for RAM |
Date: |
Fri, 24 Jan 2020 18:40:46 +0100 |
From: Igor Mammedov <address@hidden>
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: Aleksandar Markovic <address@hidden>
Signed-off-by: Igor Mammedov <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
---
hw/mips/mips_r4k.c | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/hw/mips/mips_r4k.c b/hw/mips/mips_r4k.c
index fd926a3..69b6549 100644
--- a/hw/mips/mips_r4k.c
+++ b/hw/mips/mips_r4k.c
@@ -171,13 +171,11 @@ static const int sector_len = 32 * KiB;
static
void mips_r4k_init(MachineState *machine)
{
- ram_addr_t ram_size = machine->ram_size;
const char *kernel_filename = machine->kernel_filename;
const char *kernel_cmdline = machine->kernel_cmdline;
const char *initrd_filename = machine->initrd_filename;
char *filename;
MemoryRegion *address_space_mem = get_system_memory();
- MemoryRegion *ram = g_new(MemoryRegion, 1);
MemoryRegion *bios;
MemoryRegion *iomem = g_new(MemoryRegion, 1);
MemoryRegion *isa_io = g_new(MemoryRegion, 1);
@@ -203,14 +201,12 @@ void mips_r4k_init(MachineState *machine)
qemu_register_reset(main_cpu_reset, reset_info);
/* allocate RAM */
- if (ram_size > 256 * MiB) {
+ if (machine->ram_size > 256 * MiB) {
error_report("Too much memory for this machine: %" PRId64 "MB,"
" maximum 256MB", ram_size / MiB);
exit(1);
}
- memory_region_allocate_system_memory(ram, NULL, "mips_r4k.ram", ram_size);
-
- memory_region_add_subregion(address_space_mem, 0, ram);
+ memory_region_add_subregion(address_space_mem, 0, machine->ram);
memory_region_init_io(iomem, NULL, &mips_qemu_ops,
NULL, "mips-qemu", 0x10000);
@@ -261,7 +257,7 @@ void mips_r4k_init(MachineState *machine)
g_free(filename);
if (kernel_filename) {
- loaderparams.ram_size = ram_size;
+ loaderparams.ram_size = machine->ram_size;
loaderparams.kernel_filename = kernel_filename;
loaderparams.kernel_cmdline = kernel_cmdline;
loaderparams.initrd_filename = initrd_filename;
@@ -316,7 +312,7 @@ static void mips_machine_init(MachineClass *mc)
#else
mc->default_cpu_type = MIPS_CPU_TYPE_NAME("24Kf");
#endif
-
+ mc->default_ram_id = "mips_r4k.ram";
}
DEFINE_MACHINE("mips", mips_machine_init)
--
2.7.4
- [PULL 0/7] MIPS queue for January 24th, 2020, Aleksandar Markovic, 2020/01/24
- [PULL 5/7] mips/mips_malta: use memdev for RAM, Aleksandar Markovic, 2020/01/24
- [PULL 3/7] mips-semi.c: remove 'uhi_done' label in helper_do_semihosting(), Aleksandar Markovic, 2020/01/24
- [PULL 4/7] mips/mips_jazz: use memdev for RAM, Aleksandar Markovic, 2020/01/24
- [PULL 6/7] mips/mips_mipssim: use memdev for RAM, Aleksandar Markovic, 2020/01/24
- [PULL 1/7] target/mips: Rectify documentation on deprecating r4k machine, Aleksandar Markovic, 2020/01/24
- [PULL 2/7] disas: Add a field for target-dependant data, Aleksandar Markovic, 2020/01/24
- [PULL 7/7] mips/mips_r4k: use memdev for RAM,
Aleksandar Markovic <=
- Re: [EXTERNAL][PULL 0/7] MIPS queue for January 24th, 2020, Aleksandar Markovic, 2020/01/24