]> git.proxmox.com Git - qemu.git/commitdiff
hw/r2d: add flash memory
authorAurelien Jarno <aurelien@aurel32.net>
Sun, 11 Apr 2010 01:58:19 +0000 (03:58 +0200)
committerAurelien Jarno <aurelien@aurel32.net>
Sun, 11 Apr 2010 01:58:19 +0000 (03:58 +0200)
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
default-configs/sh4-softmmu.mak
default-configs/sh4eb-softmmu.mak
hw/r2d.c

index 15f4670215227792fbf59f8b23c53daa3ec39b04..7c0d3288e37326bcb2410b4a83092c57cc3a3b24 100644 (file)
@@ -5,3 +5,4 @@ CONFIG_SERIAL=y
 CONFIG_PTIMER=y
 CONFIG_VIRTIO_PCI=y
 CONFIG_IDE_CORE=y
+CONFIG_PFLASH_CFI02=y
index 7fd5c47e61c4460b5bc49c00ddef33ea98292f9e..f4c3252a99f4f3e33a0dfea750cf9c28af8129a0 100644 (file)
@@ -5,3 +5,4 @@ CONFIG_SERIAL=y
 CONFIG_PTIMER=y
 CONFIG_VIRTIO_PCI=y
 CONFIG_IDE_CORE=y
+CONFIG_PFLASH_CFI02=y
index ec075db331cc92388275ff7612e4331a89485ad8..961991b099ae9efa2f67418b28fca39187899284 100644 (file)
--- a/hw/r2d.c
+++ b/hw/r2d.c
 #include "ide.h"
 #include "loader.h"
 #include "usb.h"
+#include "flash.h"
+
+#define FLASH_BASE 0x00000000
+#define FLASH_SIZE 0x02000000
 
 #define SDRAM_BASE 0x0c000000 /* Physical location of SDRAM: Area 3 */
 #define SDRAM_SIZE 0x04000000
@@ -237,6 +241,15 @@ static void r2d_init(ram_addr_t ram_size,
        mmio_ide_init(0x14001000, 0x1400080c, irq[CF_IDE], 1,
                      dinfo, NULL);
 
+    /* onboard flash memory */
+    if ((dinfo = drive_get(IF_PFLASH, 0, 0)) != NULL) {
+        pflash_cfi02_register(0x0, qemu_ram_alloc(FLASH_SIZE),
+                              dinfo->bdrv, (16 * 1024),
+                              FLASH_SIZE >> 16,
+                              1, 4, 0x0000, 0x0000, 0x0000, 0x0000,
+                              0x555, 0x2aa, 0);
+    }
+
     /* NIC: rtl8139 on-board, and 2 slots. */
     for (i = 0; i < nb_nics; i++)
         pci_nic_init_nofail(&nd_table[i], "rtl8139", i==0 ? "2" : NULL);