diff options
Diffstat (limited to 'hw/isa.h')
| -rw-r--r-- | hw/isa.h | 17 |
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. |