diff options
| author | Anthony Liguori <aliguori@us.ibm.com> | 2011-09-08 09:03:57 -0500 |
|---|---|---|
| committer | Anthony Liguori <aliguori@us.ibm.com> | 2011-09-08 09:03:57 -0500 |
| commit | d8ac46d950451a722fd6b1d5d0768c72bee87d47 (patch) | |
| tree | c6eaff53ce4ba99ff8c93b71a8346db2c91b2f1d /hw/mips_r4k.c | |
| parent | 9d0baba1104c51f5d95d632ff41406e5aca83216 (diff) | |
| parent | c50a6def965d2e5144557af447825c9875f48a6f (diff) | |
| download | focaccia-qemu-d8ac46d950451a722fd6b1d5d0768c72bee87d47.tar.gz focaccia-qemu-d8ac46d950451a722fd6b1d5d0768c72bee87d47.zip | |
Merge remote-tracking branch 'qemu-kvm-tmp/memory/batch' into staging
Diffstat (limited to 'hw/mips_r4k.c')
| -rw-r--r-- | hw/mips_r4k.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/hw/mips_r4k.c b/hw/mips_r4k.c index 9d90568e4e..5d002c5a2b 100644 --- a/hw/mips_r4k.c +++ b/hw/mips_r4k.c @@ -23,6 +23,7 @@ #include "elf.h" #include "mc146818rtc.h" #include "blockdev.h" +#include "exec-memory.h" #define MAX_IDE_BUS 2 @@ -163,7 +164,7 @@ void mips_r4k_init (ram_addr_t ram_size, { char *filename; ram_addr_t ram_offset; - ram_addr_t bios_offset; + MemoryRegion *bios; int bios_size; CPUState *env; ResetData *reset_info; @@ -227,15 +228,15 @@ void mips_r4k_init (ram_addr_t ram_size, be = 0; #endif if ((bios_size > 0) && (bios_size <= BIOS_SIZE)) { - bios_offset = qemu_ram_alloc(NULL, "mips_r4k.bios", BIOS_SIZE); - cpu_register_physical_memory(0x1fc00000, BIOS_SIZE, - bios_offset | IO_MEM_ROM); + bios = g_new(MemoryRegion, 1); + memory_region_init_ram(bios, NULL, "mips_r4k.bios", BIOS_SIZE); + memory_region_set_readonly(bios, true); + memory_region_add_subregion(get_system_memory(), 0x1fc00000, bios); load_image_targphys(filename, 0x1fc00000, BIOS_SIZE); } else if ((dinfo = drive_get(IF_PFLASH, 0, 0)) != NULL) { uint32_t mips_rom = 0x00400000; - bios_offset = qemu_ram_alloc(NULL, "mips_r4k.bios", mips_rom); - if (!pflash_cfi01_register(0x1fc00000, bios_offset, + if (!pflash_cfi01_register(0x1fc00000, NULL, "mips_r4k.bios", mips_rom, dinfo->bdrv, sector_len, mips_rom / sector_len, 4, 0, 0, 0, 0, be)) { |