OpenCores
URL https://opencores.org/ocsvn/test_project/test_project/trunk

Subversion Repositories test_project

[/] [test_project/] [trunk/] [linux_sd_driver/] [include/] [linux/] [virtio_net.h] - Blame information for rev 82

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 62 marcus.erl
#ifndef _LINUX_VIRTIO_NET_H
2
#define _LINUX_VIRTIO_NET_H
3
#include <linux/virtio_config.h>
4
 
5
/* The ID for virtio_net */
6
#define VIRTIO_ID_NET   1
7
 
8
/* The bitmap of config for virtio net */
9
#define VIRTIO_CONFIG_NET_F     0x40
10
#define VIRTIO_NET_F_NO_CSUM    0
11
#define VIRTIO_NET_F_TSO4       1
12
#define VIRTIO_NET_F_UFO        2
13
#define VIRTIO_NET_F_TSO4_ECN   3
14
#define VIRTIO_NET_F_TSO6       4
15
 
16
/* The config defining mac address. */
17
#define VIRTIO_CONFIG_NET_MAC_F 0x41
18
 
19
/* This is the first element of the scatter-gather list.  If you don't
20
 * specify GSO or CSUM features, you can simply ignore the header. */
21
struct virtio_net_hdr
22
{
23
#define VIRTIO_NET_HDR_F_NEEDS_CSUM     1       // Use csum_start, csum_offset
24
      __u8 flags;
25
#define VIRTIO_NET_HDR_GSO_NONE         0        // Not a GSO frame
26
#define VIRTIO_NET_HDR_GSO_TCPV4        1       // GSO frame, IPv4 TCP (TSO)
27
/* FIXME: Do we need this?  If they said they can handle ECN, do they care? */
28
#define VIRTIO_NET_HDR_GSO_TCPV4_ECN    2       // GSO frame, IPv4 TCP w/ ECN
29
#define VIRTIO_NET_HDR_GSO_UDP          3       // GSO frame, IPv4 UDP (UFO)
30
#define VIRTIO_NET_HDR_GSO_TCPV6        4       // GSO frame, IPv6 TCP
31
      __u8 gso_type;
32
      __u16 gso_size;
33
      __u16 csum_start;
34
      __u16 csum_offset;
35
};
36
#endif /* _LINUX_VIRTIO_NET_H */

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.