{
CPUState *env;
struct SH7750State *s;
- ram_addr_t sdram_addr, sm501_vga_ram_addr;
+ ram_addr_t sdram_addr;
qemu_irq *irq;
PCIBus *pci;
int i;
}
/* Allocate memory space */
- qemu_ram_alloc(SDRAM_BASE); /* to adjust the offset */
sdram_addr = qemu_ram_alloc(SDRAM_SIZE);
cpu_register_physical_memory(SDRAM_BASE, SDRAM_SIZE, sdram_addr);
/* Register peripherals */
irq = r2d_fpga_init(0x04000000, sh7750_irl(s));
pci = sh_pci_register_bus(r2d_pci_set_irq, r2d_pci_map_irq, irq, 0, 4);
- sm501_vga_ram_addr = qemu_ram_alloc(SM501_VRAM_SIZE);
- sm501_init(0x10000000, sm501_vga_ram_addr, SM501_VRAM_SIZE,
- serial_hds[2]);
+ sm501_init(0x10000000, SM501_VRAM_SIZE, irq[SM501], serial_hds[2]);
/* onboard CF (True IDE mode, Master only). */
if ((i = drive_get_index(IF_IDE, 0, 0)) != -1)
env->pc = (SDRAM_BASE + LINUX_LOAD_OFFSET) | 0xa0000000;
pstrcpy_targphys(SDRAM_BASE + 0x10100, 256, kernel_cmdline);
} else {
- kernel_size = load_image(kernel_filename, SDRAM_BASE);
+ kernel_size = load_image_targphys(kernel_filename, SDRAM_BASE, SDRAM_SIZE);
env->pc = SDRAM_BASE | 0xa0000000; /* Start from P2 area */
}
.name = "r2d",
.desc = "r2d-plus board",
.init = r2d_init,
- .ram_require = (SDRAM_BASE + SDRAM_SIZE + SM501_VRAM_SIZE) | RAMSIZE_FIXED,
};