]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/virtio_net.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
[linux-2.6-omap-h63xx.git] / include / linux / virtio_net.h
index 5e33761b9b8a9d7c038d6e062221f5f68a0def3b..3efa86c3ecb30ca4f7ce50d4319989373d4fbc2c 100644 (file)
@@ -2,6 +2,7 @@
 #define _LINUX_VIRTIO_NET_H
 /* This header is BSD licensed so anyone can use the definitions to implement
  * compatible drivers/servers. */
+#include <linux/types.h>
 #include <linux/virtio_config.h>
 
 /* The ID for virtio_net */
@@ -20,6 +21,7 @@
 #define VIRTIO_NET_F_HOST_TSO6 12      /* Host can handle TSOv6 in. */
 #define VIRTIO_NET_F_HOST_ECN  13      /* Host can handle TSO[6] w/ ECN in. */
 #define VIRTIO_NET_F_HOST_UFO  14      /* Host can handle UFO in. */
+#define VIRTIO_NET_F_MRG_RXBUF 15      /* Host can merge receive buffers. */
 
 struct virtio_net_config
 {
@@ -44,4 +46,12 @@ struct virtio_net_hdr
        __u16 csum_start;       /* Position to start checksumming from */
        __u16 csum_offset;      /* Offset after that to place checksum */
 };
+
+/* This is the version of the header to use when the MRG_RXBUF
+ * feature has been negotiated. */
+struct virtio_net_hdr_mrg_rxbuf {
+       struct virtio_net_hdr hdr;
+       __u16 num_buffers;      /* Number of merged rx buffers */
+};
+
 #endif /* _LINUX_VIRTIO_NET_H */