enic: add udp_tunnel ndo for vxlan offload
authorGovindarajulu Varadarajan <gvaradar@cisco.com>
Thu, 9 Feb 2017 00:43:08 +0000 (16:43 -0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 9 Feb 2017 22:24:29 +0000 (17:24 -0500)
commit257e738238e8ee3960957097be4bf6be6c66a3c4
tree9015a2cf5c0552737d904249174010aad7e2d223
parentca0291798227a6da0f3ba6c2e3a43d94d5dcf591
enic: add udp_tunnel ndo for vxlan offload

Defines enic_udp_tunnel_add/del for configuring vxlan tunnel offload.
enic supports offload of only one ipv4/udp port.

There are two modes that fw supports for vxlan offload.

mode 0: fcoe bit is set for encapsulated packet. fcoe_fc_crc_ok is set
if checksum of csum is ok. This bit is or of ip_csum_ok and
tcp_udp_csum_ok

mode 2: BIT(0) in rss_hash is set if it is encapsulated packet.
BIT(1) is set if outer_ip_csum_ok/
BIT(2) is set if outer_tcp_csum_ok

tcp_udp_csum_ok/ipv4_csum_ok is set if inner csum is OK.

Signed-off-by: Govindarajulu Varadarajan <gvaradar@cisco.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/cisco/enic/enic.h
drivers/net/ethernet/cisco/enic/enic_main.c