[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 04/24] arm_sysctl: convert to memory API
From: |
Avi Kivity |
Subject: |
[Qemu-devel] [PATCH 04/24] arm_sysctl: convert to memory API |
Date: |
Mon, 8 Aug 2011 20:06:49 +0300 |
Signed-off-by: Avi Kivity <address@hidden>
---
hw/arm_sysctl.c | 27 ++++++++++-----------------
1 files changed, 10 insertions(+), 17 deletions(-)
diff --git a/hw/arm_sysctl.c b/hw/arm_sysctl.c
index fd0c8bc..1838401 100644
--- a/hw/arm_sysctl.c
+++ b/hw/arm_sysctl.c
@@ -17,6 +17,7 @@
typedef struct {
SysBusDevice busdev;
+ MemoryRegion iomem;
uint32_t sys_id;
uint32_t leds;
uint16_t lockval;
@@ -80,7 +81,8 @@ static void arm_sysctl_reset(DeviceState *d)
s->resetlevel = 0;
}
-static uint32_t arm_sysctl_read(void *opaque, target_phys_addr_t offset)
+static uint64_t arm_sysctl_read(void *opaque, target_phys_addr_t offset,
+ unsigned size)
{
arm_sysctl_state *s = (arm_sysctl_state *)opaque;
@@ -177,7 +179,7 @@ static uint32_t arm_sysctl_read(void *opaque,
target_phys_addr_t offset)
}
static void arm_sysctl_write(void *opaque, target_phys_addr_t offset,
- uint32_t val)
+ uint64_t val, unsigned size)
{
arm_sysctl_state *s = (arm_sysctl_state *)opaque;
@@ -284,16 +286,10 @@ static void arm_sysctl_write(void *opaque,
target_phys_addr_t offset,
}
}
-static CPUReadMemoryFunc * const arm_sysctl_readfn[] = {
- arm_sysctl_read,
- arm_sysctl_read,
- arm_sysctl_read
-};
-
-static CPUWriteMemoryFunc * const arm_sysctl_writefn[] = {
- arm_sysctl_write,
- arm_sysctl_write,
- arm_sysctl_write
+static const MemoryRegionOps arm_sysctl_ops = {
+ .read = arm_sysctl_read,
+ .write = arm_sysctl_write,
+ .endianness = DEVICE_NATIVE_ENDIAN,
};
static void arm_sysctl_gpio_set(void *opaque, int line, int level)
@@ -327,12 +323,9 @@ static void arm_sysctl_gpio_set(void *opaque, int line,
int level)
static int arm_sysctl_init1(SysBusDevice *dev)
{
arm_sysctl_state *s = FROM_SYSBUS(arm_sysctl_state, dev);
- int iomemtype;
- iomemtype = cpu_register_io_memory(arm_sysctl_readfn,
- arm_sysctl_writefn, s,
- DEVICE_NATIVE_ENDIAN);
- sysbus_init_mmio(dev, 0x1000, iomemtype);
+ memory_region_init_io(&s->iomem, &arm_sysctl_ops, s, "arm-sysctl", 0x1000);
+ sysbus_init_mmio_region(dev, &s->iomem);
qdev_init_gpio_in(&s->busdev.qdev, arm_sysctl_gpio_set, 2);
/* ??? Save/restore. */
return 0;
--
1.7.5.3
- [Qemu-devel] [PATCH 16/24] sh_pci: convert to memory API, (continued)
- [Qemu-devel] [PATCH 16/24] sh_pci: convert to memory API, Avi Kivity, 2011/08/08
- [Qemu-devel] [PATCH 08/24] tusb6010: move declarations to new file tusb6010.h, Avi Kivity, 2011/08/08
- [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 <=
- [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, 2011/08/08
- [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