1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/drivers/net/ethernet/intel/fm10k
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
..
fm10k.h fm10k: set netdev features in one location 2015-12-05 23:55:13 -08:00
fm10k_common.c fm10k: Resolve various spelling errors and checkpatch warnings 2015-03-03 01:07:23 -08:00
fm10k_common.h fm10k: Add support for ptp to hw specific files 2014-09-23 03:59:22 -07:00
fm10k_dcbnl.c fm10k: fix unused warnings 2015-04-14 15:23:36 -07:00
fm10k_debugfs.c fm10k: use snprintf() instead of sprintf() to avoid buffer overflow 2015-10-13 23:49:13 -07:00
fm10k_ethtool.c fm10k: rename mbx_tx_oversized statistic to mbx_tx_dropped 2015-12-05 23:55:19 -08:00
fm10k_iov.c fm10k: add support for extra debug statistics 2015-09-22 15:58:27 -07:00
fm10k_main.c fm10k: Fix handling of NAPI budget when multiple queues are enabled per vector 2015-11-23 11:08:49 -08:00
fm10k_mbx.c fm10k: add statistics for actual DWORD count of mbmem mailbox 2015-12-05 23:55:18 -08:00
fm10k_mbx.h fm10k: add statistics for actual DWORD count of mbmem mailbox 2015-12-05 23:55:18 -08:00
fm10k_netdev.c fm10k: set netdev features in one location 2015-12-05 23:55:13 -08:00
fm10k_pci.c fm10k: reinitialize queuing scheme after calling init_hw 2015-12-05 23:55:16 -08:00
fm10k_pf.c fm10k: Add support for ITR scaling based on PCIe link speed 2015-12-05 23:55:20 -08:00
fm10k_pf.h fm10k: pack TLV overlay structures 2015-06-17 14:21:22 -07:00
fm10k_ptp.c fm10k: fix incorrect free on skb in ts_tx_enqueue 2015-06-17 14:20:36 -07:00
fm10k_tlv.c fm10k: Resolve various spelling errors and checkpatch warnings 2015-03-03 01:07:23 -08:00
fm10k_tlv.h fm10k: Add support for mailbox 2014-09-23 03:59:14 -07:00
fm10k_type.h fm10k: Add support for ITR scaling based on PCIe link speed 2015-12-05 23:55:20 -08:00
fm10k_vf.c fm10k: Add support for ITR scaling based on PCIe link speed 2015-12-05 23:55:20 -08:00
fm10k_vf.h fm10k: Add support for ptp to hw specific files 2014-09-23 03:59:22 -07:00
Makefile fm10k: Add support for PTP 2014-09-23 03:59:23 -07:00