From ed16ab5afae7f5b1be58764d0e1eae20ce48d9ad Mon Sep 17 00:00:00 2001 From: Gerd Hoffmann Date: Wed, 21 Oct 2009 15:25:26 +0200 Subject: qdev/net: common nic property bits Add a new type for properties common to all nics. Add helper functions and macros to deal with it. Signed-off-by: Gerd Hoffmann Signed-off-by: Anthony Liguori --- net.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'net.h') diff --git a/net.h b/net.h index 6a24f5580d..f2d10f0c91 100644 --- a/net.h +++ b/net.h @@ -11,6 +11,19 @@ struct MACAddr { uint8_t a[6]; }; +/* qdev nic properties */ + +typedef struct NICConf { + MACAddr macaddr; + VLANState *vlan; + VLANClientState *peer; +} NICConf; + +#define DEFINE_NIC_PROPERTIES(_state, _conf) \ + DEFINE_PROP_MACADDR("mac", _state, _conf.macaddr), \ + DEFINE_PROP_VLAN("vlan", _state, _conf.vlan), \ + DEFINE_PROP_NETDEV("netdev", _state, _conf.peer) + /* VLANs support */ typedef int (NetCanReceive)(VLANClientState *); @@ -158,5 +171,6 @@ VLANClientState *qdev_get_vlan_client(DeviceState *dev, NetReceiveIOV *receive_iov, NetCleanup *cleanup, void *opaque); +void qdev_set_nic_properties(DeviceState *dev, NICInfo *nd); #endif -- cgit v1.2.1