[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 15/18] sun4u: convert to memory API
From: |
Avi Kivity |
Subject: |
[Qemu-devel] [PATCH 15/18] sun4u: convert to memory API |
Date: |
Mon, 17 Oct 2011 16:02:44 +0200 |
Signed-off-by: Avi Kivity <address@hidden>
---
hw/sun4u.c | 22 +++++++++++++---------
1 files changed, 13 insertions(+), 9 deletions(-)
diff --git a/hw/sun4u.c b/hw/sun4u.c
index 96fc3d0..eaaefe3 100644
--- a/hw/sun4u.c
+++ b/hw/sun4u.c
@@ -574,6 +574,11 @@ static void pci_ebus_register(void)
device_init(pci_ebus_register);
+typedef struct PROMState {
+ SysBusDevice busdev;
+ MemoryRegion prom;
+} PROMState;
+
static uint64_t translate_prom_address(void *opaque, uint64_t addr)
{
target_phys_addr_t *base_addr = (target_phys_addr_t *)opaque;
@@ -617,17 +622,18 @@ static void prom_init(target_phys_addr_t addr, const char
*bios_name)
static int prom_init1(SysBusDevice *dev)
{
- ram_addr_t prom_offset;
+ PROMState *s = FROM_SYSBUS(PROMState, dev);
- prom_offset = qemu_ram_alloc(NULL, "sun4u.prom", PROM_SIZE_MAX);
- sysbus_init_mmio(dev, PROM_SIZE_MAX, prom_offset | IO_MEM_ROM);
+ memory_region_init_ram(&s->prom, NULL, "sun4u.prom", PROM_SIZE_MAX);
+ memory_region_set_readonly(&s->prom, true);
+ sysbus_init_mmio_region(dev, &s->prom);
return 0;
}
static SysBusDeviceInfo prom_info = {
.init = prom_init1,
.qdev.name = "openprom",
- .qdev.size = sizeof(SysBusDevice),
+ .qdev.size = sizeof(PROMState),
.qdev.props = (Property[]) {
{/* end of property list */}
}
@@ -644,19 +650,17 @@ static void prom_register_devices(void)
typedef struct RamDevice
{
SysBusDevice busdev;
+ MemoryRegion ram;
uint64_t size;
} RamDevice;
/* System RAM */
static int ram_init1(SysBusDevice *dev)
{
- ram_addr_t RAM_size, ram_offset;
RamDevice *d = FROM_SYSBUS(RamDevice, dev);
- RAM_size = d->size;
-
- ram_offset = qemu_ram_alloc(NULL, "sun4u.ram", RAM_size);
- sysbus_init_mmio(dev, RAM_size, ram_offset);
+ memory_region_init_ram(&d->ram, NULL, "sun4u.ram", d->size);
+ sysbus_init_mmio_region(dev, &d->ram);
return 0;
}
--
1.7.6.3
- Re: [Qemu-devel] [PATCH 18/18] tcx: convert to memory API, (continued)
- [Qemu-devel] [PATCH 11/18] spapr: convert to memory API, Avi Kivity, 2011/10/17
- [Qemu-devel] [PATCH 09/18] s390-virtio: convert to memory API, Avi Kivity, 2011/10/17
- [Qemu-devel] [PATCH 03/18] pxa2xx: convert to memory API (part I), Avi Kivity, 2011/10/17
- [Qemu-devel] [PATCH 04/18] pxa2xx: convert to memory API (part II), Avi Kivity, 2011/10/17
- [Qemu-devel] [PATCH 12/18] spitz: convert to memory API, Avi Kivity, 2011/10/17
- [Qemu-devel] [PATCH 08/18] realview: convert to memory API, Avi Kivity, 2011/10/17
- [Qemu-devel] [PATCH 10/18] sm501: convert to memory API, Avi Kivity, 2011/10/17
- [Qemu-devel] [PATCH 07/18] r2d: convert to memory API, Avi Kivity, 2011/10/17
- [Qemu-devel] [PATCH 05/18] pci: simplify memory region registration, Avi Kivity, 2011/10/17
- [Qemu-devel] [PATCH 15/18] sun4u: convert to memory API,
Avi Kivity <=
- [Qemu-devel] [PATCH 17/18] tc63963xb: convert to memory API, Avi Kivity, 2011/10/17
- [Qemu-devel] [PATCH 13/18] strongarm: convert to memory API, Avi Kivity, 2011/10/17
- [Qemu-devel] [PATCH 14/18] sun4m: convert to memory API, Avi Kivity, 2011/10/17