diff options
author | David L Stevens <david.stevens@oracle.com> | 2014-12-02 21:31:04 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-12-09 03:18:29 +0100 |
commit | 6d0ba919915f0117a651a1fb732f48529b2c4091 (patch) | |
tree | 5eb14d5137e6419774554770042685e6acf60b5b /arch/sparc | |
parent | sunvnet: rename vnet_port_alloc_tx_bufs and move after version negotiation (diff) | |
download | linux-6d0ba919915f0117a651a1fb732f48529b2c4091.tar.xz linux-6d0ba919915f0117a651a1fb732f48529b2c4091.zip |
sunvnet: add VIO v1.7 and v1.8 support
This patch adds support for VIO v1.7 (extended descriptor format)
and v1.8 (receive-side checksumming) to the sunvnet driver.
Signed-off-by: David L Stevens <david.stevens@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc')
-rw-r--r-- | arch/sparc/include/asm/vio.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/sparc/include/asm/vio.h b/arch/sparc/include/asm/vio.h index d758c8d8f47d..fb124feb363b 100644 --- a/arch/sparc/include/asm/vio.h +++ b/arch/sparc/include/asm/vio.h @@ -247,6 +247,25 @@ struct vio_net_desc { struct ldc_trans_cookie cookies[0]; }; +struct vio_net_dext { + u8 flags; +#define VNET_PKT_HASH 0x01 +#define VNET_PKT_HCK_IPV4_HDRCKSUM 0x02 +#define VNET_PKT_HCK_FULLCKSUM 0x04 +#define VNET_PKT_IPV4_LSO 0x08 +#define VNET_PKT_HCK_IPV4_HDRCKSUM_OK 0x10 +#define VNET_PKT_HCK_FULLCKSUM_OK 0x20 + + u8 vnet_hashval; + u16 ipv4_lso_mss; + u32 resv3; +}; + +static inline struct vio_net_dext *vio_net_ext(struct vio_net_desc *desc) +{ + return (struct vio_net_dext *)&desc->cookies[2]; +} + #define VIO_MAX_RING_COOKIES 24 struct vio_dring_state { |