]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/commit
sfc: Firmware-Assisted TSO version 2
authorBert Kenward <bkenward@solarflare.com>
Thu, 17 Nov 2016 10:51:54 +0000 (10:51 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 18 Nov 2016 16:55:38 +0000 (11:55 -0500)
commite9117e5099ea29592c2a6180f368951948837a8b
tree865d0862309b88b06a249b3cc949aee1589ba7ef
parente17705c43b4273d2587297d5f8168ee432d9c94a
sfc: Firmware-Assisted TSO version 2

Add support for FATSOv2 to the driver. FATSOv2 offloads far more of the task
 of TCP segmentation to the firmware, such that we now just pass a single
 super-packet to the NIC. This means TSO has a great deal in common with a
 normal DMA transmit, apart from adding a couple of option descriptors.
 NIC-specific checks have been moved off the fast path and in to
 initialisation where possible.

This also moves FATSOv1/SWTSO to a new file (tx_tso.c).  The end of transmit
 and some error handling is now outside TSO, since it is common with other
 code.

Signed-off-by: Edward Cree <ecree@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/sfc/Makefile
drivers/net/ethernet/sfc/ef10.c
drivers/net/ethernet/sfc/ethtool.c
drivers/net/ethernet/sfc/falcon.c
drivers/net/ethernet/sfc/farch.c
drivers/net/ethernet/sfc/net_driver.h
drivers/net/ethernet/sfc/nic.h
drivers/net/ethernet/sfc/siena.c
drivers/net/ethernet/sfc/tx.c
drivers/net/ethernet/sfc/tx.h [new file with mode: 0644]
drivers/net/ethernet/sfc/tx_tso.c [new file with mode: 0644]