aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2011-08-11 16:07:18 -0700
committerAvi Kivity <avi@redhat.com>2011-10-02 16:14:02 +0200
commit3e9f0113b4c5ec37fbba0a50b28ea26c8477da93 (patch)
tree1eaf99263049012af9a30338ecc1ef956bb7524a
parent52ce55a1024bc4b0d2c726080a205123efdd9780 (diff)
ppc440: Pass in address_space_mem to ppc440ep_init
Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Avi Kivity <avi@redhat.com>
-rw-r--r--hw/ppc440.c11
-rw-r--r--hw/ppc440.h6
-rw-r--r--hw/ppc440_bamboo.c5
3 files changed, 12 insertions, 10 deletions
diff --git a/hw/ppc440.c b/hw/ppc440.c
index 1d1376e29f..cd8a95d52b 100644
--- a/hw/ppc440.c
+++ b/hw/ppc440.c
@@ -20,7 +20,6 @@
#include "ppc405.h"
#include "sysemu.h"
#include "kvm.h"
-#include "exec-memory.h"
#define PPC440EP_PCI_CONFIG 0xeec00000
#define PPC440EP_PCI_INTACK 0xeed00000
@@ -35,9 +34,9 @@ static const unsigned int ppc440ep_sdram_bank_sizes[] = {
256<<20, 128<<20, 64<<20, 32<<20, 16<<20, 8<<20, 0
};
-CPUState *ppc440ep_init(ram_addr_t *ram_size, PCIBus **pcip,
- const unsigned int pci_irq_nrs[4], int do_init,
- const char *cpu_model)
+CPUState *ppc440ep_init(MemoryRegion *address_space_mem, ram_addr_t *ram_size,
+ PCIBus **pcip, const unsigned int pci_irq_nrs[4],
+ int do_init, const char *cpu_model)
{
MemoryRegion *ram_memories
= g_malloc(PPC440EP_SDRAM_NR_BANKS * sizeof(*ram_memories));
@@ -93,12 +92,12 @@ CPUState *ppc440ep_init(ram_addr_t *ram_size, PCIBus **pcip,
isa_mmio_init(PPC440EP_PCI_IO, PPC440EP_PCI_IOLEN);
if (serial_hds[0] != NULL) {
- serial_mm_init(get_system_memory(), 0xef600300, 0, pic[0],
+ serial_mm_init(address_space_mem, 0xef600300, 0, pic[0],
PPC_SERIAL_MM_BAUDBASE, serial_hds[0],
DEVICE_BIG_ENDIAN);
}
if (serial_hds[1] != NULL) {
- serial_mm_init(get_system_memory(), 0xef600400, 0, pic[1],
+ serial_mm_init(address_space_mem, 0xef600400, 0, pic[1],
PPC_SERIAL_MM_BAUDBASE, serial_hds[1],
DEVICE_BIG_ENDIAN);
}
diff --git a/hw/ppc440.h b/hw/ppc440.h
index a40f9176db..9c27c36fd0 100644
--- a/hw/ppc440.h
+++ b/hw/ppc440.h
@@ -14,8 +14,8 @@
#include "hw.h"
-CPUState *ppc440ep_init(ram_addr_t *ram_size, PCIBus **pcip,
- const unsigned int pci_irq_nrs[4], int do_init,
- const char *cpu_model);
+CPUState *ppc440ep_init(MemoryRegion *address_space, ram_addr_t *ram_size,
+ PCIBus **pcip, const unsigned int pci_irq_nrs[4],
+ int do_init, const char *cpu_model);
#endif
diff --git a/hw/ppc440_bamboo.c b/hw/ppc440_bamboo.c
index 1addb68327..9228939b47 100644
--- a/hw/ppc440_bamboo.c
+++ b/hw/ppc440_bamboo.c
@@ -23,6 +23,7 @@
#include "device_tree.h"
#include "loader.h"
#include "elf.h"
+#include "exec-memory.h"
#define BINARY_DEVICE_TREE_FILE "bamboo.dtb"
@@ -96,6 +97,7 @@ static void bamboo_init(ram_addr_t ram_size,
const char *cpu_model)
{
unsigned int pci_irq_nrs[4] = { 28, 27, 26, 25 };
+ MemoryRegion *address_space_mem = get_system_memory();
PCIBus *pcibus;
CPUState *env;
uint64_t elf_entry;
@@ -107,7 +109,8 @@ static void bamboo_init(ram_addr_t ram_size,
int i;
/* Setup CPU. */
- env = ppc440ep_init(&ram_size, &pcibus, pci_irq_nrs, 1, cpu_model);
+ env = ppc440ep_init(address_space_mem, &ram_size, &pcibus,
+ pci_irq_nrs, 1, cpu_model);
if (pcibus) {
/* Register network interfaces. */