[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 04/16] audio: give ISA bus to sound cards, instea
From: |
Hervé Poussineau |
Subject: |
[Qemu-devel] [PATCH v3 04/16] audio: give ISA bus to sound cards, instead of PIC |
Date: |
Sun, 2 Oct 2011 18:10:16 +0200 |
Signed-off-by: Hervé Poussineau <address@hidden>
---
arch_init.c | 10 +++++-----
arch_init.h | 2 +-
hw/adlib.c | 2 +-
hw/audiodev.h | 8 ++++----
hw/cs4231a.c | 2 +-
hw/gus.c | 2 +-
hw/mips_jazz.c | 5 +++--
hw/pc.h | 2 +-
hw/pc_piix.c | 4 ++--
hw/pcspk.c | 2 +-
hw/sb16.c | 2 +-
11 files changed, 21 insertions(+), 20 deletions(-)
diff --git a/arch_init.c b/arch_init.c
index a6c69c7..dd76493 100644
--- a/arch_init.c
+++ b/arch_init.c
@@ -466,7 +466,7 @@ struct soundhw {
int enabled;
int isa;
union {
- int (*init_isa) (qemu_irq *pic);
+ int (*init_isa) (ISABus *bus);
int (*init_pci) (PCIBus *bus);
} init;
};
@@ -621,15 +621,15 @@ void select_soundhw(const char *optarg)
}
}
-void audio_init(qemu_irq *isa_pic, PCIBus *pci_bus)
+void audio_init(ISABus *isa_bus, PCIBus *pci_bus)
{
struct soundhw *c;
for (c = soundhw; c->name; ++c) {
if (c->enabled) {
if (c->isa) {
- if (isa_pic) {
- c->init.init_isa(isa_pic);
+ if (isa_bus) {
+ c->init.init_isa(isa_bus);
}
} else {
if (pci_bus) {
@@ -643,7 +643,7 @@ void audio_init(qemu_irq *isa_pic, PCIBus *pci_bus)
void select_soundhw(const char *optarg)
{
}
-void audio_init(qemu_irq *isa_pic, PCIBus *pci_bus)
+void audio_init(ISABus *isa_bus, PCIBus *pci_bus)
{
}
#endif
diff --git a/arch_init.h b/arch_init.h
index a74187a..828256c 100644
--- a/arch_init.h
+++ b/arch_init.h
@@ -27,7 +27,7 @@ void do_acpitable_option(const char *optarg);
void do_smbios_option(const char *optarg);
void cpudef_init(void);
int audio_available(void);
-void audio_init(qemu_irq *isa_pic, PCIBus *pci_bus);
+void audio_init(ISABus *isa_bus, PCIBus *pci_bus);
int tcg_available(void);
int kvm_available(void);
int xen_available(void);
diff --git a/hw/adlib.c b/hw/adlib.c
index e4bfcc6..dd8b188 100644
--- a/hw/adlib.c
+++ b/hw/adlib.c
@@ -275,7 +275,7 @@ static void Adlib_fini (AdlibState *s)
AUD_remove_card (&s->card);
}
-int Adlib_init (qemu_irq *pic)
+int Adlib_init (ISABus *bus)
{
AdlibState *s = &glob_adlib;
struct audsettings as;
diff --git a/hw/audiodev.h b/hw/audiodev.h
index 8e930b2..1d34a4b 100644
--- a/hw/audiodev.h
+++ b/hw/audiodev.h
@@ -2,19 +2,19 @@
int es1370_init(PCIBus *bus);
/* sb16.c */
-int SB16_init(qemu_irq *pic);
+int SB16_init(ISABus *bus);
/* adlib.c */
-int Adlib_init(qemu_irq *pic);
+int Adlib_init(ISABus *bus);
/* gus.c */
-int GUS_init(qemu_irq *pic);
+int GUS_init(ISABus *bus);
/* ac97.c */
int ac97_init(PCIBus *buf);
/* cs4231a.c */
-int cs4231a_init(qemu_irq *pic);
+int cs4231a_init(ISABus *bus);
/* intel-hda.c + hda-audio.c */
int intel_hda_and_codec_init(PCIBus *bus);
diff --git a/hw/cs4231a.c b/hw/cs4231a.c
index e16665e..e697634 100644
--- a/hw/cs4231a.c
+++ b/hw/cs4231a.c
@@ -659,7 +659,7 @@ static int cs4231a_initfn (ISADevice *dev)
return 0;
}
-int cs4231a_init (qemu_irq *pic)
+int cs4231a_init (ISABus *bus)
{
isa_create_simple ("cs4231a");
return 0;
diff --git a/hw/gus.c b/hw/gus.c
index 37e543a..2f40fcd 100644
--- a/hw/gus.c
+++ b/hw/gus.c
@@ -294,7 +294,7 @@ static int gus_initfn (ISADevice *dev)
return 0;
}
-int GUS_init (qemu_irq *pic)
+int GUS_init (ISABus *bus)
{
isa_create_simple ("gus");
return 0;
diff --git a/hw/mips_jazz.c b/hw/mips_jazz.c
index d6444c6..d06eacd 100644
--- a/hw/mips_jazz.c
+++ b/hw/mips_jazz.c
@@ -112,6 +112,7 @@ static void mips_jazz_init(MemoryRegion *address_space,
int bios_size, n;
CPUState *env;
qemu_irq *rc4030, *i8259;
+ ISABus *isa_bus;
rc4030_dma *dmas;
void* rc4030_opaque;
MemoryRegion *rtc = g_new(MemoryRegion, 1);
@@ -182,7 +183,7 @@ static void mips_jazz_init(MemoryRegion *address_space,
memory_region_add_subregion(address_space, 0x8000d000, dma_dummy);
/* ISA devices */
- isa_bus_bridge_init(NULL, address_space_io);
+ isa_bus = isa_bus_bridge_init(NULL, address_space_io);
i8259 = i8259_init(env->irq[4]);
isa_bus_irqs(i8259);
cpu_exit_irq = qemu_allocate_irqs(cpu_request_exit, NULL, 1);
@@ -284,7 +285,7 @@ static void mips_jazz_init(MemoryRegion *address_space,
/* Sound card */
/* FIXME: missing Jazz sound at 0x8000c000, rc4030[2] */
- audio_init(i8259, NULL);
+ audio_init(isa_bus, NULL);
/* NVRAM */
dev = qdev_create(NULL, "ds1225y");
diff --git a/hw/pc.h b/hw/pc.h
index 7e6ddba..c546037 100644
--- a/hw/pc.h
+++ b/hw/pc.h
@@ -174,7 +174,7 @@ extern int no_hpet;
/* pcspk.c */
void pcspk_init(ISADevice *pit);
-int pcspk_audio_init(qemu_irq *pic);
+int pcspk_audio_init(ISABus *bus);
/* piix_pci.c */
struct PCII440FXState;
diff --git a/hw/pc_piix.c b/hw/pc_piix.c
index 8209346..f971d52 100644
--- a/hw/pc_piix.c
+++ b/hw/pc_piix.c
@@ -146,7 +146,7 @@ static void pc_init1(MemoryRegion *system_memory,
} else {
pci_bus = NULL;
i440fx_state = NULL;
- isa_bus_bridge_init(NULL, system_io);
+ isa_bus = isa_bus_bridge_init(NULL, system_io);
no_hpet = 1;
}
isa_bus_irqs(isa_irq);
@@ -202,7 +202,7 @@ static void pc_init1(MemoryRegion *system_memory,
}
}
- audio_init(isa_irq, pci_enabled ? pci_bus : NULL);
+ audio_init(isa_bus, pci_enabled ? pci_bus : NULL);
pc_cmos_init(below_4g_mem_size, above_4g_mem_size, boot_device,
idebus[0], idebus[1], rtc_state);
diff --git a/hw/pcspk.c b/hw/pcspk.c
index 7fa2d36..acb0167 100644
--- a/hw/pcspk.c
+++ b/hw/pcspk.c
@@ -96,7 +96,7 @@ static void pcspk_callback(void *opaque, int free)
}
}
-int pcspk_audio_init(qemu_irq *pic)
+int pcspk_audio_init(ISABus *bus)
{
PCSpkState *s = &pcspk_state;
struct audsettings as = {PCSPK_SAMPLE_RATE, 1, AUD_FMT_U8, 0};
diff --git a/hw/sb16.c b/hw/sb16.c
index a76df1b..15a1e61 100644
--- a/hw/sb16.c
+++ b/hw/sb16.c
@@ -1391,7 +1391,7 @@ static int sb16_initfn (ISADevice *dev)
return 0;
}
-int SB16_init (qemu_irq *pic)
+int SB16_init (ISABus *bus)
{
isa_create_simple ("sb16");
return 0;
--
1.7.6.3
- [Qemu-devel] [PATCH v3 00/16] ISA bus improvements, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 01/16] isa: rename isa_bus_new to isa_bus_bridge_init, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 03/16] isa: correctly implement isa_address_space(), by calling a bus-specific function, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 02/16] isa: rework ISA bus internals, and add ISA bus ops structure, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 04/16] audio: give ISA bus to sound cards, instead of PIC,
Hervé Poussineau <=
- [Qemu-devel] [PATCH v3 05/16] pc: improve bus implementation of PIIX3 bridge, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 06/16] fulong2e: improve bus implementation of vt82c bridge, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 07/16] sun4u: improve bus implementation of EBus bridge, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 08/16] malta: improve bus implementation of PIIX4 bridge, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 09/16] isa: remove unused parameter to isa_bus_bridge_init(), Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 12/16] isa: give bus to isa_get_irq() and isa_bus_irqs(), Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 13/16] isa: use bus given in parameter to get/set irqs on specified ISA bus, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 15/16] isa: remove useless test in isa_register_ioport(), Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 16/16] isa: remove limitation of only one ISA bus, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 14/16] i8259: add ad-hock variables to please future changes in isa_register_ioport(), Hervé Poussineau, 2011/10/02