From a6dc4c2d95f7b7bd95a53e8c2e524a8a202b4d1f Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Thu, 11 Aug 2011 16:07:19 -0700 Subject: pxa: Pass in address_space to pxa{255, 270}_init Signed-off-by: Richard Henderson Signed-off-by: Avi Kivity --- hw/gumstix.c | 7 +++++-- hw/mainstone.c | 2 +- hw/pxa.h | 7 +++++-- hw/pxa2xx.c | 10 +++++----- hw/spitz.c | 4 +++- hw/tosa.c | 4 +++- hw/z2.c | 4 +++- 7 files changed, 25 insertions(+), 13 deletions(-) (limited to 'hw') diff --git a/hw/gumstix.c b/hw/gumstix.c index b8b76f4b87..686a5ed86d 100644 --- a/hw/gumstix.c +++ b/hw/gumstix.c @@ -38,6 +38,7 @@ #include "devices.h" #include "boards.h" #include "blockdev.h" +#include "exec-memory.h" static const int sector_len = 128 * 1024; @@ -49,11 +50,12 @@ static void connex_init(ram_addr_t ram_size, PXA2xxState *cpu; DriveInfo *dinfo; int be; + MemoryRegion *address_space_mem = get_system_memory(); uint32_t connex_rom = 0x01000000; uint32_t connex_ram = 0x04000000; - cpu = pxa255_init(connex_ram); + cpu = pxa255_init(address_space_mem, connex_ram); dinfo = drive_get(IF_PFLASH, 0, 0); if (!dinfo) { @@ -87,11 +89,12 @@ static void verdex_init(ram_addr_t ram_size, PXA2xxState *cpu; DriveInfo *dinfo; int be; + MemoryRegion *address_space_mem = get_system_memory(); uint32_t verdex_rom = 0x02000000; uint32_t verdex_ram = 0x10000000; - cpu = pxa270_init(verdex_ram, cpu_model ?: "pxa270-c0"); + cpu = pxa270_init(address_space_mem, verdex_ram, cpu_model ?: "pxa270-c0"); dinfo = drive_get(IF_PFLASH, 0, 0); if (!dinfo) { diff --git a/hw/mainstone.c b/hw/mainstone.c index 336f31e64e..3ed6649204 100644 --- a/hw/mainstone.c +++ b/hw/mainstone.c @@ -110,7 +110,7 @@ static void mainstone_common_init(MemoryRegion *address_space_mem, cpu_model = "pxa270-c5"; /* Setup CPU & memory */ - cpu = pxa270_init(mainstone_binfo.ram_size, cpu_model); + cpu = pxa270_init(address_space_mem, mainstone_binfo.ram_size, cpu_model); memory_region_init_ram(rom, NULL, "mainstone.rom", MAINSTONE_ROM); memory_region_set_readonly(rom, true); memory_region_add_subregion(address_space_mem, 0, rom); diff --git a/hw/pxa.h b/hw/pxa.h index 859fc676e4..1204165549 100644 --- a/hw/pxa.h +++ b/hw/pxa.h @@ -9,6 +9,8 @@ #ifndef PXA_H # define PXA_H "pxa.h" +#include "memory.h" + /* Interrupt numbers */ # define PXA2XX_PIC_SSP3 0 # define PXA2XX_PIC_USBH2 2 @@ -173,7 +175,8 @@ struct PXA2xxI2SState { # define PA_FMT "0x%08lx" # define REG_FMT "0x" TARGET_FMT_plx -PXA2xxState *pxa270_init(unsigned int sdram_size, const char *revision); -PXA2xxState *pxa255_init(unsigned int sdram_size); +PXA2xxState *pxa270_init(MemoryRegion *address_space, unsigned int sdram_size, + const char *revision); +PXA2xxState *pxa255_init(MemoryRegion *address_space, unsigned int sdram_size); #endif /* PXA_H */ diff --git a/hw/pxa2xx.c b/hw/pxa2xx.c index c47e6983c0..70d7c8a06d 100644 --- a/hw/pxa2xx.c +++ b/hw/pxa2xx.c @@ -15,7 +15,6 @@ #include "ssi.h" #include "qemu-char.h" #include "blockdev.h" -#include "exec-memory.h" static struct { target_phys_addr_t io_base; @@ -2060,7 +2059,8 @@ static void pxa2xx_reset(void *opaque, int line, int level) } /* Initialise a PXA270 integrated chip (ARM based core). */ -PXA2xxState *pxa270_init(unsigned int sdram_size, const char *revision) +PXA2xxState *pxa270_init(MemoryRegion *address_space, + unsigned int sdram_size, const char *revision) { PXA2xxState *s; int iomemtype, i; @@ -2116,7 +2116,7 @@ PXA2xxState *pxa270_init(unsigned int sdram_size, const char *revision) for (i = 0; pxa270_serial[i].io_base; i++) { if (serial_hds[i]) { - serial_mm_init(get_system_memory(), pxa270_serial[i].io_base, 2, + serial_mm_init(address_space, pxa270_serial[i].io_base, 2, qdev_get_gpio_in(s->pic, pxa270_serial[i].irqn), 14857000 / 16, serial_hds[i], DEVICE_NATIVE_ENDIAN); @@ -2199,7 +2199,7 @@ PXA2xxState *pxa270_init(unsigned int sdram_size, const char *revision) } /* Initialise a PXA255 integrated chip (ARM based core). */ -PXA2xxState *pxa255_init(unsigned int sdram_size) +PXA2xxState *pxa255_init(MemoryRegion *address_space, unsigned int sdram_size) { PXA2xxState *s; int iomemtype, i; @@ -2248,7 +2248,7 @@ PXA2xxState *pxa255_init(unsigned int sdram_size) for (i = 0; pxa255_serial[i].io_base; i++) { if (serial_hds[i]) { - serial_mm_init(get_system_memory(), pxa255_serial[i].io_base, 2, + serial_mm_init(address_space, pxa255_serial[i].io_base, 2, qdev_get_gpio_in(s->pic, pxa255_serial[i].irqn), 14745600 / 16, serial_hds[i], DEVICE_NATIVE_ENDIAN); diff --git a/hw/spitz.c b/hw/spitz.c index 0adae596b5..6f8a94ceb3 100644 --- a/hw/spitz.c +++ b/hw/spitz.c @@ -24,6 +24,7 @@ #include "boards.h" #include "blockdev.h" #include "sysbus.h" +#include "exec-memory.h" #undef REG_FMT #define REG_FMT "0x%02lx" @@ -896,12 +897,13 @@ static void spitz_common_init(ram_addr_t ram_size, { PXA2xxState *cpu; DeviceState *scp0, *scp1 = NULL; + MemoryRegion *address_space_mem = get_system_memory(); if (!cpu_model) cpu_model = (model == terrier) ? "pxa270-c5" : "pxa270-c0"; /* Setup CPU & memory */ - cpu = pxa270_init(spitz_binfo.ram_size, cpu_model); + cpu = pxa270_init(address_space_mem, spitz_binfo.ram_size, cpu_model); sl_flash_register(cpu, (model == spitz) ? FLASH_128M : FLASH_1024M); diff --git a/hw/tosa.c b/hw/tosa.c index 7b407f4f64..92702d148a 100644 --- a/hw/tosa.c +++ b/hw/tosa.c @@ -20,6 +20,7 @@ #include "ssi.h" #include "blockdev.h" #include "sysbus.h" +#include "exec-memory.h" #define TOSA_RAM 0x04000000 #define TOSA_ROM 0x00800000 @@ -206,6 +207,7 @@ static void tosa_init(ram_addr_t ram_size, const char *kernel_filename, const char *kernel_cmdline, const char *initrd_filename, const char *cpu_model) { + MemoryRegion *address_space_mem = get_system_memory(); PXA2xxState *cpu; TC6393xbState *tmio; DeviceState *scp0, *scp1; @@ -213,7 +215,7 @@ static void tosa_init(ram_addr_t ram_size, if (!cpu_model) cpu_model = "pxa255"; - cpu = pxa255_init(tosa_binfo.ram_size); + cpu = pxa255_init(address_space_mem, tosa_binfo.ram_size); cpu_register_physical_memory(0, TOSA_ROM, qemu_ram_alloc(NULL, "tosa.rom", TOSA_ROM) | IO_MEM_ROM); diff --git a/hw/z2.c b/hw/z2.c index b6ae608657..a03bb33d1b 100644 --- a/hw/z2.c +++ b/hw/z2.c @@ -20,6 +20,7 @@ #include "blockdev.h" #include "console.h" #include "audio/audio.h" +#include "exec-memory.h" #ifdef DEBUG_Z2 #define DPRINTF(fmt, ...) \ @@ -277,6 +278,7 @@ static void z2_init(ram_addr_t ram_size, const char *kernel_filename, const char *kernel_cmdline, const char *initrd_filename, const char *cpu_model) { + MemoryRegion *address_space_mem = get_system_memory(); uint32_t sector_len = 0x10000; PXA2xxState *cpu; DriveInfo *dinfo; @@ -290,7 +292,7 @@ static void z2_init(ram_addr_t ram_size, } /* Setup CPU & memory */ - cpu = pxa270_init(z2_binfo.ram_size, cpu_model); + cpu = pxa270_init(address_space_mem, z2_binfo.ram_size, cpu_model); #ifdef TARGET_WORDS_BIGENDIAN be = 1; -- cgit v1.2.3