Revision 97b15621 hw/syborg_virtio.c

b/hw/syborg_virtio.c
65 65
    qemu_irq irq;
66 66
    uint32_t int_enable;
67 67
    uint32_t id;
68
    NICConf nic;
68 69
} SyborgVirtIOProxy;
69 70

  
70 71
static uint32_t syborg_virtio_readl(void *opaque, target_phys_addr_t offset)
......
273 274
    VirtIODevice *vdev;
274 275
    SyborgVirtIOProxy *proxy = FROM_SYSBUS(SyborgVirtIOProxy, dev);
275 276

  
276
    vdev = virtio_net_init(&dev->qdev);
277
    vdev = virtio_net_init(&dev->qdev, &proxy->nic);
277 278
    return syborg_virtio_init(proxy, vdev);
278 279
}
279 280

  
281
static SysBusDeviceInfo syborg_virtio_net_info = {
282
    .init = syborg_virtio_net_init,
283
    .qdev.name  = "syborg,virtio-net",
284
    .qdev.size  = sizeof(SyborgVirtIOProxy),
285
    .qdev.props = (Property[]) {
286
        DEFINE_NIC_PROPERTIES(SyborgVirtIOProxy, nic),
287
        DEFINE_PROP_END_OF_LIST(),
288
    }
289
};
290

  
280 291
static void syborg_virtio_register_devices(void)
281 292
{
282
    sysbus_register_dev("syborg,virtio-net", sizeof(SyborgVirtIOProxy),
283
                        syborg_virtio_net_init);
293
    sysbus_register_withprop(&syborg_virtio_net_info);
284 294
}
285 295

  
286 296
device_init(syborg_virtio_register_devices)

Also available in: Unified diff