[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 1/9] virtio-net: move property declarations to heade
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PATCH 1/9] virtio-net: move property declarations to header file |
Date: |
Thu, 24 Nov 2011 13:38:20 +0100 |
Include also other properties than features. NIC properties are
tackled in the next patch.
There is one semantic change: this adds the virtio-net and common feature
bits to s390.
Signed-off-by: Paolo Bonzini <address@hidden>
---
hw/s390-virtio-bus.c | 6 +-----
hw/syborg_virtio.c | 7 +------
hw/virtio-net.h | 41 ++++++++++++++++++++++-------------------
hw/virtio-pci.c | 7 +------
4 files changed, 25 insertions(+), 36 deletions(-)
diff --git a/hw/s390-virtio-bus.c b/hw/s390-virtio-bus.c
index c4b9a99..0326cfc 100644
--- a/hw/s390-virtio-bus.c
+++ b/hw/s390-virtio-bus.c
@@ -337,11 +337,7 @@ static VirtIOS390DeviceInfo s390_virtio_net = {
.qdev.size = sizeof(VirtIOS390Device),
.qdev.props = (Property[]) {
DEFINE_NIC_PROPERTIES(VirtIOS390Device, nic),
- DEFINE_PROP_UINT32("x-txtimer", VirtIOS390Device,
- net.txtimer, TX_TIMER_INTERVAL),
- DEFINE_PROP_INT32("x-txburst", VirtIOS390Device,
- net.txburst, TX_BURST),
- DEFINE_PROP_STRING("tx", VirtIOS390Device, net.tx),
+ DEFINE_VIRTIO_NET_PROPERTIES(VirtIOS390Device, host_features, net),
DEFINE_PROP_END_OF_LIST(),
},
};
diff --git a/hw/syborg_virtio.c b/hw/syborg_virtio.c
index 6de952c..98fd47b 100644
--- a/hw/syborg_virtio.c
+++ b/hw/syborg_virtio.c
@@ -295,12 +295,7 @@ static SysBusDeviceInfo syborg_virtio_net_info = {
.qdev.size = sizeof(SyborgVirtIOProxy),
.qdev.props = (Property[]) {
DEFINE_NIC_PROPERTIES(SyborgVirtIOProxy, nic),
- DEFINE_VIRTIO_NET_FEATURES(SyborgVirtIOProxy, host_features),
- DEFINE_PROP_UINT32("x-txtimer", SyborgVirtIOProxy,
- net.txtimer, TX_TIMER_INTERVAL),
- DEFINE_PROP_INT32("x-txburst", SyborgVirtIOProxy,
- net.txburst, TX_BURST),
- DEFINE_PROP_STRING("tx", SyborgVirtIOProxy, net.tx),
+ DEFINE_VIRTIO_NET_PROPERTIES(SyborgVirtIOProxy, host_features, net),
DEFINE_PROP_END_OF_LIST(),
}
};
diff --git a/hw/virtio-net.h b/hw/virtio-net.h
index 4468741..f6faea9 100644
--- a/hw/virtio-net.h
+++ b/hw/virtio-net.h
@@ -167,23 +167,26 @@ struct virtio_net_ctrl_mac {
#define VIRTIO_NET_CTRL_VLAN_ADD 0
#define VIRTIO_NET_CTRL_VLAN_DEL 1
-#define DEFINE_VIRTIO_NET_FEATURES(_state, _field) \
- DEFINE_VIRTIO_COMMON_FEATURES(_state, _field), \
- DEFINE_PROP_BIT("csum", _state, _field, VIRTIO_NET_F_CSUM, true), \
- DEFINE_PROP_BIT("guest_csum", _state, _field, VIRTIO_NET_F_GUEST_CSUM,
true), \
- DEFINE_PROP_BIT("gso", _state, _field, VIRTIO_NET_F_GSO, true), \
- DEFINE_PROP_BIT("guest_tso4", _state, _field, VIRTIO_NET_F_GUEST_TSO4,
true), \
- DEFINE_PROP_BIT("guest_tso6", _state, _field, VIRTIO_NET_F_GUEST_TSO6,
true), \
- DEFINE_PROP_BIT("guest_ecn", _state, _field, VIRTIO_NET_F_GUEST_ECN,
true), \
- DEFINE_PROP_BIT("guest_ufo", _state, _field, VIRTIO_NET_F_GUEST_UFO,
true), \
- DEFINE_PROP_BIT("host_tso4", _state, _field, VIRTIO_NET_F_HOST_TSO4,
true), \
- DEFINE_PROP_BIT("host_tso6", _state, _field, VIRTIO_NET_F_HOST_TSO6,
true), \
- DEFINE_PROP_BIT("host_ecn", _state, _field, VIRTIO_NET_F_HOST_ECN,
true), \
- DEFINE_PROP_BIT("host_ufo", _state, _field, VIRTIO_NET_F_HOST_UFO,
true), \
- DEFINE_PROP_BIT("mrg_rxbuf", _state, _field, VIRTIO_NET_F_MRG_RXBUF,
true), \
- DEFINE_PROP_BIT("status", _state, _field, VIRTIO_NET_F_STATUS, true), \
- DEFINE_PROP_BIT("ctrl_vq", _state, _field, VIRTIO_NET_F_CTRL_VQ,
true), \
- DEFINE_PROP_BIT("ctrl_rx", _state, _field, VIRTIO_NET_F_CTRL_RX,
true), \
- DEFINE_PROP_BIT("ctrl_vlan", _state, _field, VIRTIO_NET_F_CTRL_VLAN,
true), \
- DEFINE_PROP_BIT("ctrl_rx_extra", _state, _field,
VIRTIO_NET_F_CTRL_RX_EXTRA, true)
+#define DEFINE_VIRTIO_NET_PROPERTIES(_state, _features_field, _conf_field) \
+ DEFINE_VIRTIO_COMMON_FEATURES(_state, _features_field), \
+ DEFINE_PROP_BIT("csum", _state, _features_field, VIRTIO_NET_F_CSUM,
true), \
+ DEFINE_PROP_BIT("guest_csum", _state, _features_field,
VIRTIO_NET_F_GUEST_CSUM, true), \
+ DEFINE_PROP_BIT("gso", _state, _features_field, VIRTIO_NET_F_GSO,
true), \
+ DEFINE_PROP_BIT("guest_tso4", _state, _features_field,
VIRTIO_NET_F_GUEST_TSO4, true), \
+ DEFINE_PROP_BIT("guest_tso6", _state, _features_field,
VIRTIO_NET_F_GUEST_TSO6, true), \
+ DEFINE_PROP_BIT("guest_ecn", _state, _features_field,
VIRTIO_NET_F_GUEST_ECN, true), \
+ DEFINE_PROP_BIT("guest_ufo", _state, _features_field,
VIRTIO_NET_F_GUEST_UFO, true), \
+ DEFINE_PROP_BIT("host_tso4", _state, _features_field,
VIRTIO_NET_F_HOST_TSO4, true), \
+ DEFINE_PROP_BIT("host_tso6", _state, _features_field,
VIRTIO_NET_F_HOST_TSO6, true), \
+ DEFINE_PROP_BIT("host_ecn", _state, _features_field,
VIRTIO_NET_F_HOST_ECN, true), \
+ DEFINE_PROP_BIT("host_ufo", _state, _features_field,
VIRTIO_NET_F_HOST_UFO, true), \
+ DEFINE_PROP_BIT("mrg_rxbuf", _state, _features_field,
VIRTIO_NET_F_MRG_RXBUF, true), \
+ DEFINE_PROP_BIT("status", _state, _features_field,
VIRTIO_NET_F_STATUS, true), \
+ DEFINE_PROP_BIT("ctrl_vq", _state, _features_field,
VIRTIO_NET_F_CTRL_VQ, true), \
+ DEFINE_PROP_BIT("ctrl_rx", _state, _features_field,
VIRTIO_NET_F_CTRL_RX, true), \
+ DEFINE_PROP_BIT("ctrl_vlan", _state, _features_field,
VIRTIO_NET_F_CTRL_VLAN, true), \
+ DEFINE_PROP_BIT("ctrl_rx_extra", _state, _features_field,
VIRTIO_NET_F_CTRL_RX_EXTRA, true), \
+ DEFINE_PROP_UINT32("x-txtimer", _state, _conf_field.txtimer,
TX_TIMER_INTERVAL), \
+ DEFINE_PROP_INT32("x-txburst", _state, _conf_field.txburst, TX_BURST),
\
+ DEFINE_PROP_STRING("tx", _state, _conf_field.tx)
#endif
diff --git a/hw/virtio-pci.c b/hw/virtio-pci.c
index 64c6a94..a909e5f 100644
--- a/hw/virtio-pci.c
+++ b/hw/virtio-pci.c
@@ -816,13 +816,8 @@ static PCIDeviceInfo virtio_info[] = {
DEFINE_PROP_BIT("ioeventfd", VirtIOPCIProxy, flags,
VIRTIO_PCI_FLAG_USE_IOEVENTFD_BIT, false),
DEFINE_PROP_UINT32("vectors", VirtIOPCIProxy, nvectors, 3),
- DEFINE_VIRTIO_NET_FEATURES(VirtIOPCIProxy, host_features),
+ DEFINE_VIRTIO_NET_PROPERTIES(VirtIOPCIProxy, host_features, net),
DEFINE_NIC_PROPERTIES(VirtIOPCIProxy, nic),
- DEFINE_PROP_UINT32("x-txtimer", VirtIOPCIProxy,
- net.txtimer, TX_TIMER_INTERVAL),
- DEFINE_PROP_INT32("x-txburst", VirtIOPCIProxy,
- net.txburst, TX_BURST),
- DEFINE_PROP_STRING("tx", VirtIOPCIProxy, net.tx),
DEFINE_PROP_END_OF_LIST(),
},
.qdev.reset = virtio_pci_reset,
--
1.7.7.1
- [Qemu-devel] [PATCH 0/9] virtio: device configuration cleanup, Paolo Bonzini, 2011/11/24
- [Qemu-devel] [PATCH 5/9] virtio-9p: move property declarations to header file, Paolo Bonzini, 2011/11/24
- [Qemu-devel] [PATCH 6/9] virtio-blk: define VirtIOBlkConf, Paolo Bonzini, 2011/11/24
- [Qemu-devel] [PATCH 7/9] virtio-blk: move property declarations to header file, Paolo Bonzini, 2011/11/24
- [Qemu-devel] [PATCH 8/9] virtio-blk: move BlockConf into VirtIOBlkConf, Paolo Bonzini, 2011/11/24