[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 02/24] apic: convert to memory API
From: |
Avi Kivity |
Subject: |
[Qemu-devel] [PATCH 02/24] apic: convert to memory API |
Date: |
Mon, 8 Aug 2011 20:06:47 +0300 |
Signed-off-by: Avi Kivity <address@hidden>
---
hw/apic.c | 25 ++++++++++---------------
1 files changed, 10 insertions(+), 15 deletions(-)
diff --git a/hw/apic.c b/hw/apic.c
index 9febf40..7d0b0f6 100644
--- a/hw/apic.c
+++ b/hw/apic.c
@@ -80,6 +80,7 @@ typedef struct APICState APICState;
struct APICState {
SysBusDevice busdev;
+ MemoryRegion io_memory;
void *cpu_env;
uint32_t apicbase;
uint8_t id;
@@ -979,31 +980,25 @@ static void apic_reset(DeviceState *d)
}
}
-static CPUReadMemoryFunc * const apic_mem_read[3] = {
- apic_mem_readb,
- apic_mem_readw,
- apic_mem_readl,
-};
-
-static CPUWriteMemoryFunc * const apic_mem_write[3] = {
- apic_mem_writeb,
- apic_mem_writew,
- apic_mem_writel,
+static const MemoryRegionOps apic_io_ops = {
+ .old_mmio = {
+ .read = { apic_mem_readb, apic_mem_readw, apic_mem_readl, },
+ .write = { apic_mem_writeb, apic_mem_writew, apic_mem_writel, },
+ },
+ .endianness = DEVICE_NATIVE_ENDIAN,
};
static int apic_init1(SysBusDevice *dev)
{
APICState *s = FROM_SYSBUS(APICState, dev);
- int apic_io_memory;
static int last_apic_idx;
if (last_apic_idx >= MAX_APICS) {
return -1;
}
- apic_io_memory = cpu_register_io_memory(apic_mem_read,
- apic_mem_write, NULL,
- DEVICE_NATIVE_ENDIAN);
- sysbus_init_mmio(dev, MSI_ADDR_SIZE, apic_io_memory);
+ memory_region_init_io(&s->io_memory, &apic_io_ops, s, "apic",
+ MSI_ADDR_SIZE);
+ sysbus_init_mmio_region(dev, &s->io_memory);
s->timer = qemu_new_timer_ns(vm_clock, apic_timer, s);
s->idx = last_apic_idx++;
--
1.7.5.3
- [Qemu-devel] [PATCH 01/24] apb_pci: convert to memory API, (continued)
- [Qemu-devel] [PATCH 01/24] apb_pci: convert to memory API, Avi Kivity, 2011/08/08
- [Qemu-devel] [PATCH 06/24] armv7m: convert to memory API, Avi Kivity, 2011/08/08
- [Qemu-devel] [PATCH 03/24] arm_gic: convert to memory API, Avi Kivity, 2011/08/08
- [Qemu-devel] [PATCH 15/24] sysbus: add a variant of sysbus_init_mmio_cb with an unmap callback, Avi Kivity, 2011/08/08
- [Qemu-devel] [PATCH 23/24] vga: drop get_system_memory() from vga devices and derivatives, Avi Kivity, 2011/08/08
- [Qemu-devel] [PATCH 12/24] ppc405_uc: convert to memory API, Avi Kivity, 2011/08/08
- [Qemu-devel] [PATCH 04/24] arm_sysctl: convert to memory API, Avi Kivity, 2011/08/08
- [Qemu-devel] [PATCH 17/24] arm11mpcore: use sysbus_init_mmio_cb2, Avi Kivity, 2011/08/08
- [Qemu-devel] [PATCH 02/24] apic: convert to memory API,
Avi Kivity <=
- [Qemu-devel] [PATCH 10/24] onenand: convert to memory API, Avi Kivity, 2011/08/08
- [Qemu-devel] [PATCH 21/24] isa: add isa_address_space(), Avi Kivity, 2011/08/08
- Re: [Qemu-devel] [PATCH 21/24] isa: add isa_address_space(), Avi Kivity, 2011/08/10
[Qemu-devel] [PATCH 05/24] arm_timer: convert to memory API, Avi Kivity, 2011/08/08
[Qemu-devel] [PATCH 09/24] omap_gpmc/nseries/tusb6010: convert to memory API, Avi Kivity, 2011/08/08