linux/drivers/net/ethernet/intel
Jacob Keller 20076fa185 fm10k: Add support for ITR scaling based on PCIe link speed
The Intel Ethernet Switch FM10000 Host Interface interrupt throttle
timers are based on the PCIe link speed. Because of this, the value
being programmed into the ITR registers must be scaled accordingly.

For the PF, this is as simple as reading the PCIe link speed and storing
the result. However, in the case of SR-IOV, the VF's interrupt throttle
timers are based on the link speed of the PF. However, the VF is unable
to get the link speed information from its configuration space, so the
PF must inform it of what scale to use.

Rather than pass this scale via mailbox message, take advantage of
unused bits in the TDLEN register to pass the scale. It is the
responsibility of the PF to program this for the VF while setting up the
VF queues and the responsibility of the VF to get the information
accordingly. This is preferable because it allows the VF to set up the
interrupts properly during initialization and matches how the MAC
address is passed in the TDBAL/TDBAH registers.

Since we're modifying fm10k_type.h, we may as well also update the
copyright year.

Reported-by: Matthew Vick <matthew.vick@intel.com>
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Reviewed-by: Bruce Allan <bruce.w.allan@intel.com>
Tested-by: Krishneil Singh <krishneil.k.singh@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-12-05 23:55:20 -08:00
..
e1000 drivers/net/intel: use napi_complete_done() 2015-10-16 04:33:46 -07:00
e1000e drivers/net/intel: use napi_complete_done() 2015-10-16 04:33:46 -07:00
fm10k fm10k: Add support for ITR scaling based on PCIe link speed 2015-12-05 23:55:20 -08:00
i40e Merge branch '40GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue 2015-12-03 12:11:00 -05:00
i40evf i40e: trivial fixes 2015-12-03 02:23:39 -08:00
igb drivers/net/intel: use napi_complete_done() 2015-10-16 04:33:46 -07:00
igbvf drivers/net/intel: use napi_complete_done() 2015-10-16 04:33:46 -07:00
ixgb drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
ixgbe ixgbe: Always turn PHY power on when requested 2015-12-03 02:45:13 -08:00
ixgbevf ixgbevf: Handle extended IPv6 headers in Tx path 2015-12-03 02:45:14 -08:00
e100.c e100: Release skb when DMA mapping is failed in e100_xmit_prepare 2015-08-18 14:06:05 -07:00
Kconfig i40e: remove CONFIG_I40E_VXLAN 2015-12-03 02:23:35 -08:00
Makefile fm10k: Add skeletal frame for Intel(R) FM10000 Ethernet Switch Host Interface Driver 2014-09-23 03:59:13 -07:00