This series contains updates to ixgbe and ixgbevf only. Sebastian adds support for firmware NVM recovery mode, which logs a message when errors are detected and un-registers the device. Also fixed RSS type recognition with VF to VF communication.
Shannon Nelson implements IPsec hardware offload for VF devices in Intel's 10GbE x540 family of Ethernet devices. The IPsec HW offload feature has been in the x540/Niantic family of network devices since their release in 2009, but there was no Linux kernel support for the offload until 2017. After the XFRM code added support for the offload last year, the HW offload was added to the ixgbe PF driver. Since the related x540 VF device uses same setup as the PF for implementing the offload, adding the feature to the ixgbevf seemed like a good idea. In this case, the PF owns the device registers, so the VF simply packages up the request information into a VF<->PF message and the PF does the device configuration. The following are changes since commit 050cdc6c9501abcd64720b8cc3e7941efee9547d: Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net and are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue 10GbE Sebastian Basierski (2): ixgbe: firmware recovery mode ixgbevf: VF2VF TCP RSS Shannon Nelson (11): ixgbe: don't clear IPsec sa counters on HW clearing ixgbe: reload IPsec IP table after sa tables ixgbe: prep IPsec constants for later use ixgbe: add VF IPsec management ixgbe: add VF IPsec offload enable flag ixgbe: add VF IPsec offload request message handling ixgbevf: add defines for IPsec offload request ixgbevf: add VF IPsec offload code ixgbevf: enable VF IPsec offload operations ixgbe: disallow IPsec Tx offload when in SR-IOV mode ixgbe: fix the return value for unsupported VF offload drivers/net/ethernet/intel/ixgbe/ixgbe.h | 20 +- .../net/ethernet/intel/ixgbe/ixgbe_common.c | 11 + .../net/ethernet/intel/ixgbe/ixgbe_ethtool.c | 9 + .../net/ethernet/intel/ixgbe/ixgbe_ipsec.c | 282 +++++++- .../net/ethernet/intel/ixgbe/ixgbe_ipsec.h | 13 + drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 41 ++ drivers/net/ethernet/intel/ixgbe/ixgbe_mbx.h | 5 + .../net/ethernet/intel/ixgbe/ixgbe_sriov.c | 17 +- drivers/net/ethernet/intel/ixgbe/ixgbe_type.h | 4 + drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c | 15 + drivers/net/ethernet/intel/ixgbevf/Makefile | 1 + drivers/net/ethernet/intel/ixgbevf/defines.h | 10 +- drivers/net/ethernet/intel/ixgbevf/ethtool.c | 2 + drivers/net/ethernet/intel/ixgbevf/ipsec.c | 673 ++++++++++++++++++ .../{ixgbe/ixgbe_ipsec.h => ixgbevf/ipsec.h} | 40 +- drivers/net/ethernet/intel/ixgbevf/ixgbevf.h | 33 + .../net/ethernet/intel/ixgbevf/ixgbevf_main.c | 78 +- drivers/net/ethernet/intel/ixgbevf/mbx.h | 5 + drivers/net/ethernet/intel/ixgbevf/vf.c | 4 + 19 files changed, 1193 insertions(+), 70 deletions(-) create mode 100644 drivers/net/ethernet/intel/ixgbevf/ipsec.c copy drivers/net/ethernet/intel/{ixgbe/ixgbe_ipsec.h => ixgbevf/ipsec.h} (59%) -- 2.17.1