[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 06/16] gus: Convert to isa_register_portio_list.
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH 06/16] gus: Convert to isa_register_portio_list. |
Date: |
Tue, 23 Aug 2011 17:13:45 -0700 |
Signed-off-by: Richard Henderson <address@hidden>
---
hw/gus.c | 39 +++++++++++++++++++--------------------
1 files changed, 19 insertions(+), 20 deletions(-)
diff --git a/hw/gus.c b/hw/gus.c
index 37e543a..1532686 100644
--- a/hw/gus.c
+++ b/hw/gus.c
@@ -232,6 +232,22 @@ static const VMStateDescription vmstate_gus = {
}
};
+static const MemoryRegionPortio gus_portio_list1[] = {
+ {0x000, 1, 1, .write = gus_writeb },
+ {0x000, 1, 2, .write = gus_writew },
+ {0x006, 10, 1, .read = gus_readb, .write = gus_writeb },
+ {0x006, 10, 2, .read = gus_readw, .write = gus_writew },
+ {0x100, 8, 1, .read = gus_readb, .write = gus_writeb },
+ {0x100, 8, 2, .read = gus_readw, .write = gus_writew },
+ PORTIO_END_OF_LIST(),
+};
+
+static const MemoryRegionPortio gus_portio_list2[] = {
+ {0, 1, 1, .read = gus_readb },
+ {0, 1, 2, .read = gus_readw },
+ PORTIO_END_OF_LIST(),
+};
+
static int gus_initfn (ISADevice *dev)
{
GUSState *s = DO_UPCAST(GUSState, dev, dev);
@@ -262,26 +278,9 @@ static int gus_initfn (ISADevice *dev)
s->samples = AUD_get_buffer_size_out (s->voice) >> s->shift;
s->mixbuf = g_malloc0 (s->samples << s->shift);
- register_ioport_write (s->port, 1, 1, gus_writeb, s);
- register_ioport_write (s->port, 1, 2, gus_writew, s);
- isa_init_ioport_range(dev, s->port, 2);
-
- register_ioport_read ((s->port + 0x100) & 0xf00, 1, 1, gus_readb, s);
- register_ioport_read ((s->port + 0x100) & 0xf00, 1, 2, gus_readw, s);
- isa_init_ioport_range(dev, (s->port + 0x100) & 0xf00, 2);
-
- register_ioport_write (s->port + 6, 10, 1, gus_writeb, s);
- register_ioport_write (s->port + 6, 10, 2, gus_writew, s);
- register_ioport_read (s->port + 6, 10, 1, gus_readb, s);
- register_ioport_read (s->port + 6, 10, 2, gus_readw, s);
- isa_init_ioport_range(dev, s->port + 6, 10);
-
-
- register_ioport_write (s->port + 0x100, 8, 1, gus_writeb, s);
- register_ioport_write (s->port + 0x100, 8, 2, gus_writew, s);
- register_ioport_read (s->port + 0x100, 8, 1, gus_readb, s);
- register_ioport_read (s->port + 0x100, 8, 2, gus_readw, s);
- isa_init_ioport_range(dev, s->port + 0x100, 8);
+ isa_register_portio_list(dev, s->port, gus_portio_list1, s, "gus");
+ isa_register_portio_list(dev, (s->port + 0x100) & 0xf00,
+ gus_portio_list2, s, "gus");
DMA_register_channel (s->emu.gusdma, GUS_read_DMA, s);
s->emu.himemaddr = s->himem;
--
1.7.4.4
- [Qemu-devel] [PATCH 00/16] isa_register_portio_list, v2, Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 01/16] fixup: merge with last sm501 patch, Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 02/16] fixup: merge with last arm_sysctl patch, Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 03/16] isa: Tidy support code for isabus_get_fw_dev_path., Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 04/16] isa: Add isa_register_portio_list()., Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 05/16] fdc: Convert to isa_register_portio_list., Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 06/16] gus: Convert to isa_register_portio_list.,
Richard Henderson <=
- [Qemu-devel] [PATCH 07/16] m48t59: Convert to isa_register_ioport., Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 09/16] ne2000: Convert to isa_register_ioport., Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 10/16] parallel: Convert to isa_register_portio_list., Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 11/16] sb16: Convert to isa_register_portio_list., Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 08/16] rtc: Convert to isa_register_ioport., Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 13/16] pc: Convert port92 to isa_register_ioport., Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 12/16] vga: Convert to isa_register_portio_list., Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 15/16] ide: Convert to isa_register_portio_list., Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 16/16] isa: Remove isa_init_ioport_range and isa_init_ioport., Richard Henderson, 2011/08/23
- [Qemu-devel] [PATCH 14/16] vmport: Convert to isa_register_ioport., Richard Henderson, 2011/08/23