[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 13/28] i8254: Convert to MemoryRegion
From: |
Avi Kivity |
Subject: |
[Qemu-devel] [PULL 13/28] i8254: Convert to MemoryRegion |
Date: |
Mon, 12 Sep 2011 13:50:51 +0300 |
From: Richard Henderson <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
Signed-off-by: Avi Kivity <address@hidden>
---
hw/i8254.c | 16 +++++++++++++---
1 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/hw/i8254.c b/hw/i8254.c
index a9ca9f6..12571ef 100644
--- a/hw/i8254.c
+++ b/hw/i8254.c
@@ -55,6 +55,7 @@
typedef struct PITState {
ISADevice dev;
+ MemoryRegion ioports;
uint32_t irq;
uint32_t iobase;
PITChannelState channels[3];
@@ -506,6 +507,16 @@ void hpet_pit_enable(void)
pit_load_count(s, 0);
}
+static const MemoryRegionPortio pit_portio[] = {
+ { 0, 4, 1, .write = pit_ioport_write },
+ { 0, 3, 1, .read = pit_ioport_read },
+ PORTIO_END_OF_LIST()
+};
+
+static const MemoryRegionOps pit_ioport_ops = {
+ .old_portio = pit_portio
+};
+
static int pit_initfn(ISADevice *dev)
{
PITState *pit = DO_UPCAST(PITState, dev, dev);
@@ -516,9 +527,8 @@ static int pit_initfn(ISADevice *dev)
s->irq_timer = qemu_new_timer_ns(vm_clock, pit_irq_timer, s);
s->irq = isa_get_irq(pit->irq);
- register_ioport_write(pit->iobase, 4, 1, pit_ioport_write, pit);
- register_ioport_read(pit->iobase, 3, 1, pit_ioport_read, pit);
- isa_init_ioport(dev, pit->iobase);
+ memory_region_init_io(&pit->ioports, &pit_ioport_ops, pit, "pit", 4);
+ isa_register_ioport(dev, &pit->ioports, pit->iobase);
qdev_set_legacy_instance_id(&dev->qdev, pit->iobase, 2);
--
1.7.6.1
- [Qemu-devel] [PULL 24/28] etrax-eth: Convert to MemoryRegion, (continued)
- [Qemu-devel] [PULL 24/28] etrax-eth: Convert to MemoryRegion, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 17/28] serial: Convert serial_isa_initfn to MemoryRegion, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 25/28] serial: Convert serial_mm_init to MemoryRegion, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 15/28] i8259: Convert to MemoryRegion, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 18/28] fdc: Convert isabus_fdc_init1 to MemoryRegion, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 08/28] pci: add pci_address_space_io(), Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 22/28] etrax-timer: Convert to MemoryRegion, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 10/28] isa: add isa_register_ioport(), Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 13/28] i8254: Convert to MemoryRegion,
Avi Kivity <=
- [Qemu-devel] [PULL 23/28] etrax-dma: Convert to MemoryRegion, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 21/28] etrax-ser: Convert to MemoryRegion, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 01/28] mips_jazz: convert to memory API, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 26/28] serial: Use enum device_endian in serial_mm_init parameter, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 14/28] mips_malta: move i8259 initialization after piix4 initialization, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 11/28] pc: Re-order pc_init1 to initialize the ISA bus before ISA devices, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 07/28] omap1: convert to memory API (part II), Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 19/28] pci: simplify memory region registration, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 16/28] pckbd: Convert to MemoryRegion, Avi Kivity, 2011/09/12
- [Qemu-devel] [PULL 09/28] isa: Pass i/o address space to isa_bus_new, Avi Kivity, 2011/09/12