From d949396e5303f4f916ec3733eee0ab365f500dc8 Mon Sep 17 00:00:00 2001 From: "Edgar E. Iglesias" Date: Tue, 9 Aug 2011 13:24:04 +0200 Subject: etrax: QDevify the Ethernet MAC. Signed-off-by: Edgar E. Iglesias --- hw/etraxfs.h | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) (limited to 'hw/etraxfs.h') diff --git a/hw/etraxfs.h b/hw/etraxfs.h index 5c61f1b41b..1554b0b8e8 100644 --- a/hw/etraxfs.h +++ b/hw/etraxfs.h @@ -25,6 +25,21 @@ #include "etraxfs_dma.h" qemu_irq *cris_pic_init_cpu(CPUState *env); -void etraxfs_eth_init(NICInfo *nd, target_phys_addr_t base, int phyaddr, - struct etraxfs_dma_client *dma_out, - struct etraxfs_dma_client *dma_in); + +/* Instantiate an ETRAXFS Ethernet MAC. */ +static inline DeviceState * +etraxfs_eth_init(NICInfo *nd, target_phys_addr_t base, int phyaddr, + void *dma_out, void *dma_in) +{ + DeviceState *dev; + qemu_check_nic_model(nd, "fseth"); + + dev = qdev_create(NULL, "etraxfs-eth"); + qdev_set_nic_properties(dev, nd); + qdev_prop_set_uint32(dev, "phyaddr", phyaddr); + qdev_prop_set_ptr(dev, "dma_out", dma_out); + qdev_prop_set_ptr(dev, "dma_in", dma_in); + qdev_init_nofail(dev); + sysbus_mmio_map(sysbus_from_qdev(dev), 0, base); + return dev; +} -- cgit v1.2.1