Home | History | Annotate | Download | only in hw

Lines Matching refs:dev

25 void sysbus_connect_irq(SysBusDevice *dev, int n, qemu_irq irq)
27 assert(n >= 0 && n < dev->num_irq);
28 dev->irqs[n] = 0;
29 if (dev->irqp[n]) {
30 *dev->irqp[n] = irq;
34 void sysbus_mmio_map(SysBusDevice *dev, int n, target_phys_addr_t addr)
36 assert(n >= 0 && n < dev->num_mmio);
38 if (dev->mmio[n].addr == addr) {
42 if (dev->mmio[n].addr != (target_phys_addr_t)-1) {
44 cpu_register_physical_memory(dev->mmio[n].addr, dev->mmio[n].size,
47 dev->mmio[n].addr = addr;
48 if (dev->mmio[n].cb) {
49 dev->mmio[n].cb(dev, addr);
51 cpu_register_physical_memory(addr, dev->mmio[n].size,
52 dev->mmio[n].iofunc);
58 void sysbus_init_irq(SysBusDevice *dev, qemu_irq *p)
62 assert(dev->num_irq < QDEV_MAX_IRQ);
63 n = dev->num_irq++;
64 dev->irqp[n] = p;
68 void sysbus_pass_irq(SysBusDevice *dev, SysBusDevice *target)
71 assert(dev->num_irq == 0);
72 dev->num_irq = target->num_irq;
73 for (i = 0; i < dev->num_irq; i++) {
74 dev->irqp[i] = target->irqp[i];
78 void sysbus_init_mmio(SysBusDevice *dev, target_phys_addr_t size, int iofunc)
82 assert(dev->num_mmio < QDEV_MAX_MMIO);
83 n = dev->num_mmio++;
84 dev->mmio[n].addr = -1;
85 dev->mmio[n].size = size;
86 dev->mmio[n].iofunc = iofunc;
89 void sysbus_init_mmio_cb(SysBusDevice *dev, target_phys_addr_t size,
94 assert(dev->num_mmio < QDEV_MAX_MMIO);
95 n = dev->num_mmio++;
96 dev->mmio[n].addr = -1;
97 dev->mmio[n].size = size;
98 dev->mmio[n].cb = cb;
101 static void sysbus_device_init(DeviceState *dev, DeviceInfo *base)
105 info->init(sysbus_from_qdev(dev));
131 DeviceState *dev;
137 dev = qdev_create(NULL, name);
138 s = sysbus_from_qdev(dev);
139 qdev_init(dev);
153 return dev;
156 void sysbus_dev_print(Monitor *mon, DeviceState *dev, int indent)
158 SysBusDevice *s = sysbus_from_qdev(dev);