aboutsummaryrefslogtreecommitdiff
path: root/hw/ppc_oldworld.c
diff options
context:
space:
mode:
authorblueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162>2008-12-24 20:23:51 +0000
committerblueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162>2008-12-24 20:23:51 +0000
commit992e5acd4d0c08d397c39c80acc8203fd394bd9c (patch)
tree929d43423e820bce59861e9bd20870136ae91f2e /hw/ppc_oldworld.c
parentfe09612978318b456558826ef2635ce914eb00b6 (diff)
downloadqemu-992e5acd4d0c08d397c39c80acc8203fd394bd9c.zip
qemu-992e5acd4d0c08d397c39c80acc8203fd394bd9c.tar.gz
qemu-992e5acd4d0c08d397c39c80acc8203fd394bd9c.tar.bz2
Use OpenBIOS for g3bw machine
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6128 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/ppc_oldworld.c')
-rw-r--r--hw/ppc_oldworld.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/hw/ppc_oldworld.c b/hw/ppc_oldworld.c
index c8ef97a..9d922be 100644
--- a/hw/ppc_oldworld.c
+++ b/hw/ppc_oldworld.c
@@ -164,19 +164,16 @@ static void ppc_heathrow_init (ram_addr_t ram_size, int vga_ram_size,
/* allocate and load BIOS */
bios_offset = qemu_ram_alloc(BIOS_SIZE);
if (bios_name == NULL)
- bios_name = BIOS_FILENAME;
+ bios_name = PROM_FILENAME;
snprintf(buf, sizeof(buf), "%s/%s", bios_dir, bios_name);
- bios_size = load_image(buf, phys_ram_base + bios_offset);
+ cpu_register_physical_memory(PROM_ADDR, BIOS_SIZE, bios_offset | IO_MEM_ROM);
+
+ /* Load OpenBIOS (ELF) */
+ bios_size = load_elf(buf, 0, NULL, NULL, NULL);
if (bios_size < 0 || bios_size > BIOS_SIZE) {
cpu_abort(env, "qemu: could not load PowerPC bios '%s'\n", buf);
exit(1);
}
- if (bios_size > 0x00080000) {
- /* As the NVRAM is located at 0xFFF04000, we cannot use 1 MB BIOSes */
- cpu_abort(env, "G3BW Mac hardware can not handle 1 MB BIOS\n");
- }
- cpu_register_physical_memory((uint32_t)(-bios_size),
- bios_size, bios_offset | IO_MEM_ROM);
/* allocate and load VGA BIOS */
vga_bios_offset = qemu_ram_alloc(VGA_BIOS_SIZE);