summary refs log tree commit diff stats
path: root/hw/isa.h
diff options
context:
space:
mode:
Diffstat (limited to 'hw/isa.h')
-rw-r--r--hw/isa.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/hw/isa.h b/hw/isa.h
index 5eb9c78e9e..b11a0be27f 100644
--- a/hw/isa.h
+++ b/hw/isa.h
@@ -9,10 +9,15 @@
 
 #define ISA_NUM_IRQS 16
 
-typedef struct ISABus ISABus;
 typedef struct ISADevice ISADevice;
 typedef struct ISADeviceInfo ISADeviceInfo;
 
+struct ISABus {
+    BusState qbus;
+    MemoryRegion *address_space_io;
+    qemu_irq *irqs;
+};
+
 struct ISADevice {
     DeviceState qdev;
     uint32_t isairq[2];
@@ -27,14 +32,14 @@ struct ISADeviceInfo {
 };
 
 ISABus *isa_bus_new(DeviceState *dev, MemoryRegion *address_space_io);
-void isa_bus_irqs(qemu_irq *irqs);
-qemu_irq isa_get_irq(int isairq);
+void isa_bus_irqs(ISABus *bus, qemu_irq *irqs);
+qemu_irq isa_get_irq(ISADevice *dev, int isairq);
 void isa_init_irq(ISADevice *dev, qemu_irq *p, int isairq);
 void isa_qdev_register(ISADeviceInfo *info);
 MemoryRegion *isa_address_space(ISADevice *dev);
-ISADevice *isa_create(const char *name);
-ISADevice *isa_try_create(const char *name);
-ISADevice *isa_create_simple(const char *name);
+ISADevice *isa_create(ISABus *bus, const char *name);
+ISADevice *isa_try_create(ISABus *bus, const char *name);
+ISADevice *isa_create_simple(ISABus *bus, const char *name);
 
 /**
  * isa_register_ioport: Install an I/O port region on the ISA bus.