Lines Matching refs:dev
26 void sysbus_connect_irq(SysBusDevice *dev, int n, qemu_irq irq) in sysbus_connect_irq() argument
28 assert(n >= 0 && n < dev->num_irq); in sysbus_connect_irq()
29 dev->irqs[n] = 0; in sysbus_connect_irq()
30 if (dev->irqp[n]) { in sysbus_connect_irq()
31 *dev->irqp[n] = irq; in sysbus_connect_irq()
35 void sysbus_mmio_map(SysBusDevice *dev, int n, hwaddr addr) in sysbus_mmio_map() argument
37 assert(n >= 0 && n < dev->num_mmio); in sysbus_mmio_map()
39 if (dev->mmio[n].addr == addr) { in sysbus_mmio_map()
43 if (dev->mmio[n].addr != (hwaddr)-1) { in sysbus_mmio_map()
45 cpu_register_physical_memory(dev->mmio[n].addr, dev->mmio[n].size, in sysbus_mmio_map()
48 dev->mmio[n].addr = addr; in sysbus_mmio_map()
49 if (dev->mmio[n].cb) { in sysbus_mmio_map()
50 dev->mmio[n].cb(dev, addr); in sysbus_mmio_map()
52 cpu_register_physical_memory(addr, dev->mmio[n].size, in sysbus_mmio_map()
53 dev->mmio[n].iofunc); in sysbus_mmio_map()
59 void sysbus_init_irq(SysBusDevice *dev, qemu_irq *p) in sysbus_init_irq() argument
63 assert(dev->num_irq < QDEV_MAX_IRQ); in sysbus_init_irq()
64 n = dev->num_irq++; in sysbus_init_irq()
65 dev->irqp[n] = p; in sysbus_init_irq()
69 void sysbus_pass_irq(SysBusDevice *dev, SysBusDevice *target) in sysbus_pass_irq() argument
72 assert(dev->num_irq == 0); in sysbus_pass_irq()
73 dev->num_irq = target->num_irq; in sysbus_pass_irq()
74 for (i = 0; i < dev->num_irq; i++) { in sysbus_pass_irq()
75 dev->irqp[i] = target->irqp[i]; in sysbus_pass_irq()
79 void sysbus_init_mmio(SysBusDevice *dev, hwaddr size, int iofunc) in sysbus_init_mmio() argument
83 assert(dev->num_mmio < QDEV_MAX_MMIO); in sysbus_init_mmio()
84 n = dev->num_mmio++; in sysbus_init_mmio()
85 dev->mmio[n].addr = -1; in sysbus_init_mmio()
86 dev->mmio[n].size = size; in sysbus_init_mmio()
87 dev->mmio[n].iofunc = iofunc; in sysbus_init_mmio()
90 void sysbus_init_mmio_cb(SysBusDevice *dev, hwaddr size, in sysbus_init_mmio_cb() argument
95 assert(dev->num_mmio < QDEV_MAX_MMIO); in sysbus_init_mmio_cb()
96 n = dev->num_mmio++; in sysbus_init_mmio_cb()
97 dev->mmio[n].addr = -1; in sysbus_init_mmio_cb()
98 dev->mmio[n].size = size; in sysbus_init_mmio_cb()
99 dev->mmio[n].cb = cb; in sysbus_init_mmio_cb()
102 static void sysbus_device_init(DeviceState *dev, DeviceInfo *base) in sysbus_device_init() argument
106 info->init(sysbus_from_qdev(dev)); in sysbus_device_init()
132 DeviceState *dev; in sysbus_create_varargs() local
138 dev = qdev_create(NULL, name); in sysbus_create_varargs()
139 s = sysbus_from_qdev(dev); in sysbus_create_varargs()
140 qdev_init(dev); in sysbus_create_varargs()
154 return dev; in sysbus_create_varargs()
157 void sysbus_dev_print(Monitor *mon, DeviceState *dev, int indent) in sysbus_dev_print() argument
159 SysBusDevice *s = sysbus_from_qdev(dev); in sysbus_dev_print()