On Thu, Jan 23, 2020 at 1:24 PM Igor Mammedov <imamm...@redhat.com> 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 <imamm...@redhat.com>
> Reviewed-by: Philippe Mathieu-Daudé <phi...@redhat.com>
> ---
>  hw/mips/mips_r4k.c | 12 ++++--------
>  1 file changed, 4 insertions(+), 8 deletions(-)
>
>
Applied to MIPS queue.


> 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
>
>
>

Reply via email to