linux_dsm_epyc7002/drivers/net/ethernet/intel
Jesus Sanchez-Palencia 3048cf84d1 igb: Add support for ETF offload
Implement HW offload support for SO_TXTIME through igb's Launchtime
feature. This is done by extending igb_setup_tc() so it supports
TC_SETUP_QDISC_ETF and configuring i210 so time based transmit
arbitration is enabled.

The FQTSS transmission mode added before is extended so strict
priority (SP) queues wait for stream reservation (SR) ones.
igb_config_tx_modes() is extended so it can support enabling/disabling
Launchtime following the previous approach used for the credit-based
shaper (CBS).

As the previous flow, FQTSS transmission mode is enabled automatically
by the driver once Launchtime (or CBS, as before) is enabled.
Similarly, it's automatically disabled when the feature is disabled
for the last queue that had it setup on.

The driver just consumes the transmit times from the skbuffs directly,
so no special handling is done in case an 'invalid' time is provided.
We assume this has been handled by the ETF qdisc already.

Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-07-04 22:30:28 +09:00
..
e1000 treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
e1000e treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
fm10k treewide: Use array_size() in vmalloc() 2018-06-12 16:19:22 -07:00
i40e Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-07-03 10:29:26 +09:00
i40evf net: sched: pass extack pointer to block binds and cb registration 2018-06-26 23:21:32 +09:00
ice ice: Update NVM AQ command functions 2018-05-17 09:14:09 -07:00
igb igb: Add support for ETF offload 2018-07-04 22:30:28 +09:00
igbvf net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgb treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
ixgbe Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-07-03 10:29:26 +09:00
ixgbevf treewide: Use array_size() in vmalloc() 2018-06-12 16:19:22 -07:00
e100.c net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
Kconfig docs: Fix more broken references 2018-06-15 18:11:26 -03:00
Makefile ice: Add basic driver framework for Intel(R) E800 Series 2018-03-26 08:28:02 -07:00