dino_set_irq(opaque, 10, level);
}
-PCIBus *dino_init(MemoryRegion *addr_space,
- qemu_irq *p_rtc_irq, qemu_irq *p_ser_irq)
+DinoState *dino_init(MemoryRegion *addr_space,
+ qemu_irq *p_rtc_irq, qemu_irq *p_ser_irq)
{
DeviceState *dev;
DinoState *s;
- PCIBus *pci_bus;
dev = qdev_new(TYPE_DINO_PCI_HOST_BRIDGE);
object_property_set_link(OBJECT(dev), "memory-as", OBJECT(addr_space),
*p_rtc_irq = qemu_allocate_irq(dino_set_timer_irq, s, 0);
*p_ser_irq = qemu_allocate_irq(dino_set_serial_irq, s, 0);
- pci_bus = PCI_BUS(qdev_get_child_bus(dev, "pci"));
- return pci_bus;
+ return s;
}
static void dino_pcihost_reset(DeviceState *dev)
#include "hw/intc/i8259.h"
#include "hppa_hardware.h"
+#include "dino.h"
-PCIBus *dino_init(MemoryRegion *, qemu_irq *, qemu_irq *);
+DinoState *dino_init(MemoryRegion *, qemu_irq *, qemu_irq *);
DeviceState *lasi_init(MemoryRegion *);
#define enable_lasi_lan() 0
#include "hw/char/serial.h"
#include "hw/net/lasi_82596.h"
#include "hw/nmi.h"
+#include "dino.h"
#include "hppa_sys.h"
#include "qemu/units.h"
#include "qapi/error.h"
const char *kernel_filename = machine->kernel_filename;
const char *kernel_cmdline = machine->kernel_cmdline;
const char *initrd_filename = machine->initrd_filename;
- DeviceState *dev;
+ DeviceState *dev, *dino_dev;
PCIBus *pci_bus;
ISABus *isa_bus;
qemu_irq rtc_irq, serial_irq;
lasi_init(addr_space);
/* Init Dino (PCI host bus chip). */
- pci_bus = dino_init(addr_space, &rtc_irq, &serial_irq);
+ dino_dev = DEVICE(dino_init(addr_space, &rtc_irq, &serial_irq));
+ pci_bus = PCI_BUS(qdev_get_child_bus(dino_dev, "pci"));
assert(pci_bus);
/* Create ISA bus. */