aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
Diffstat (limited to 'hw')
-rw-r--r--hw/m68k/mcf5208.c19
1 files changed, 6 insertions, 13 deletions
diff --git a/hw/m68k/mcf5208.c b/hw/m68k/mcf5208.c
index d22d8536db..0cfb806c20 100644
--- a/hw/m68k/mcf5208.c
+++ b/hw/m68k/mcf5208.c
@@ -206,16 +206,16 @@ static void mcf5208_sys_init(MemoryRegion *address_space, qemu_irq *pic)
}
}
-static void mcf_fec_init(MemoryRegion *sysmem, NICInfo *nd, hwaddr base,
- qemu_irq *irqs)
+static void mcf_fec_init(MemoryRegion *sysmem, hwaddr base, qemu_irq *irqs)
{
DeviceState *dev;
SysBusDevice *s;
int i;
- qemu_check_nic_model(nd, TYPE_MCF_FEC_NET);
- dev = qdev_new(TYPE_MCF_FEC_NET);
- qdev_set_nic_properties(dev, nd);
+ dev = qemu_create_nic_device(TYPE_MCF_FEC_NET, true, NULL);
+ if (!dev) {
+ return;
+ }
s = SYS_BUS_DEVICE(dev);
sysbus_realize_and_unref(s, &error_fatal);
@@ -267,14 +267,7 @@ static void mcf5208evb_init(MachineState *machine)
mcf5208_sys_init(address_space_mem, pic);
- if (nb_nics > 1) {
- error_report("Too many NICs");
- exit(1);
- }
- if (nd_table[0].used) {
- mcf_fec_init(address_space_mem, &nd_table[0],
- 0xfc030000, pic + 36);
- }
+ mcf_fec_init(address_space_mem, 0xfc030000, pic + 36);
g_free(pic);