aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHervé Poussineau <hpoussin@reactos.org>2011-12-15 22:09:57 +0100
committerAnthony Liguori <aliguori@us.ibm.com>2011-12-20 15:44:30 -0600
commitc9940edb473cbaeac565b3a420fdfcc0b6c31e5d (patch)
treef48e47bc11f0a028e6cfd8c99e81d4f419c11974
parentab953e284ad2e701bdbad1685d07c1a930ba8d48 (diff)
downloadqemu-c9940edb473cbaeac565b3a420fdfcc0b6c31e5d.zip
qemu-c9940edb473cbaeac565b3a420fdfcc0b6c31e5d.tar.gz
qemu-c9940edb473cbaeac565b3a420fdfcc0b6c31e5d.tar.bz2
fulong2e: give ISA bus to ISA methods
Signed-off-by: Hervé Poussineau <hpoussin@reactos.org> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
-rw-r--r--hw/mips_fulong2e.c6
-rw-r--r--hw/vt82c686.c4
-rw-r--r--hw/vt82c686.h2
3 files changed, 5 insertions, 7 deletions
diff --git a/hw/mips_fulong2e.c b/hw/mips_fulong2e.c
index e6e120c..5e87665 100644
--- a/hw/mips_fulong2e.c
+++ b/hw/mips_fulong2e.c
@@ -264,7 +264,6 @@ static void mips_fulong2e_init(ram_addr_t ram_size, const char *boot_device,
int64_t kernel_entry;
qemu_irq *i8259;
qemu_irq *cpu_exit_irq;
- int via_devfn;
PCIBus *pci_bus;
ISABus *isa_bus;
i2c_bus *smbus;
@@ -338,12 +337,11 @@ static void mips_fulong2e_init(ram_addr_t ram_size, const char *boot_device,
/* South bridge */
ide_drive_get(hd, MAX_IDE_BUS);
- via_devfn = vt82c686b_init(pci_bus, PCI_DEVFN(FULONG2E_VIA_SLOT, 0));
- if (via_devfn < 0) {
+ isa_bus = vt82c686b_init(pci_bus, PCI_DEVFN(FULONG2E_VIA_SLOT, 0));
+ if (!isa_bus) {
fprintf(stderr, "vt82c686b_init error\n");
exit(1);
}
- isa_bus = NULL;
/* Interrupt controller */
/* The 8259 -> IP5 */
diff --git a/hw/vt82c686.c b/hw/vt82c686.c
index 2845959..038128b 100644
--- a/hw/vt82c686.c
+++ b/hw/vt82c686.c
@@ -507,13 +507,13 @@ static int vt82c686b_initfn(PCIDevice *d)
return 0;
}
-int vt82c686b_init(PCIBus *bus, int devfn)
+ISABus *vt82c686b_init(PCIBus *bus, int devfn)
{
PCIDevice *d;
d = pci_create_simple_multifunction(bus, devfn, true, "VT82C686B");
- return d->devfn;
+ return DO_UPCAST(ISABus, qbus, qdev_get_child_bus(&d->qdev, "isa.0"));
}
static PCIDeviceInfo via_info = {
diff --git a/hw/vt82c686.h b/hw/vt82c686.h
index e3270ca..6ef876d 100644
--- a/hw/vt82c686.h
+++ b/hw/vt82c686.h
@@ -2,7 +2,7 @@
#define HW_VT82C686_H
/* vt82c686.c */
-int vt82c686b_init(PCIBus * bus, int devfn);
+ISABus *vt82c686b_init(PCIBus * bus, int devfn);
void vt82c686b_ac97_init(PCIBus *bus, int devfn);
void vt82c686b_mc97_init(PCIBus *bus, int devfn);
i2c_bus *vt82c686b_pm_init(PCIBus *bus, int devfn, uint32_t smb_io_base,