summaryrefslogtreecommitdiff
path: root/hw/sb16.c
diff options
context:
space:
mode:
authorGleb Natapov <gleb@redhat.com>2010-12-08 13:34:56 +0200
committerBlue Swirl <blauwirbel@gmail.com>2010-12-11 21:27:46 +0000
commitdee41d58ef7b874fd8a07e9e0ae4ef6e7fe624fc (patch)
treebf50e58bad6dda3e9e334ebd57373b7bdc3b8d17 /hw/sb16.c
parent21150814d9f0d40b77f8ec54e716505b85b87e6b (diff)
downloadqemu-dee41d58ef7b874fd8a07e9e0ae4ef6e7fe624fc.tar.gz
qemu-dee41d58ef7b874fd8a07e9e0ae4ef6e7fe624fc.tar.bz2
qemu-dee41d58ef7b874fd8a07e9e0ae4ef6e7fe624fc.zip
Keep track of ISA ports ISA device is using in qdev.
Store all io ports used by device in ISADevice structure. Signed-off-by: Gleb Natapov <gleb@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'hw/sb16.c')
-rw-r--r--hw/sb16.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/hw/sb16.c b/hw/sb16.c
index 78590a76f1..c9d37ad2b7 100644
--- a/hw/sb16.c
+++ b/hw/sb16.c
@@ -1368,16 +1368,20 @@ static int sb16_initfn (ISADevice *dev)
for (i = 0; i < ARRAY_SIZE (dsp_write_ports); i++) {
register_ioport_write (s->port + dsp_write_ports[i], 1, 1, dsp_write, s);
+ isa_init_ioport(dev, s->port + dsp_write_ports[i]);
}
for (i = 0; i < ARRAY_SIZE (dsp_read_ports); i++) {
register_ioport_read (s->port + dsp_read_ports[i], 1, 1, dsp_read, s);
+ isa_init_ioport(dev, s->port + dsp_read_ports[i]);
}
register_ioport_write (s->port + 0x4, 1, 1, mixer_write_indexb, s);
register_ioport_write (s->port + 0x4, 1, 2, mixer_write_indexw, s);
+ isa_init_ioport(dev, s->port + 0x4);
register_ioport_read (s->port + 0x5, 1, 1, mixer_read, s);
register_ioport_write (s->port + 0x5, 1, 1, mixer_write_datab, s);
+ isa_init_ioport(dev, s->port + 0x5);
DMA_register_channel (s->hdma, SB_read_DMA, s);
DMA_register_channel (s->dma, SB_read_DMA, s);