loader: Use the specified MemoryRegion
authorAlistair Francis <alistair.francis@xilinx.com>
Thu, 22 Sep 2016 17:13:08 +0000 (18:13 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Thu, 22 Sep 2016 17:13:08 +0000 (18:13 +0100)
Prevously the specified MemoryRegion was ignored during the rom register
reset. This patch uses the rom MemoryRegion is avaliable.

Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: d63fef5524deeb88e0068ca9d3fd4c8344f54dd4.1474331683.git.alistair.francis@xilinx.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
hw/core/loader.c

index 53e0e4155499b57f2e39201db6ffaf25af658437..6b61f290c311b5cca5992c126fe7b3cdc7aa16af 100644 (file)
@@ -1045,7 +1045,8 @@ int rom_check_and_register_reset(void)
         }
         addr  = rom->addr;
         addr += rom->romsize;
-        section = memory_region_find(get_system_memory(), rom->addr, 1);
+        section = memory_region_find(rom->mr ? rom->mr : get_system_memory(),
+                                     rom->addr, 1);
         rom->isrom = int128_nz(section.size) && memory_region_is_rom(section.mr);
         memory_region_unref(section.mr);
     }