linux/drivers/net/ethernet/intel/i40e
Amritha Nambiar 2027d4deac i40e: Add support setting TC max bandwidth rates
This patch enables setting up maximum Tx rates for the traffic
classes in i40e. The maximum rate is offloaded to the hardware through
the mqprio framework by specifying the mode option as 'channel' and
shaper option as 'bw_rlimit' and is configured for the VSI. Configuring
minimum Tx rate limit is not supported in the device. The minimum
usable value for Tx rate is 50Mbps.

Example:
# tc qdisc add dev eth0 root mqprio num_tc 2  map 0 0 0 0 1 1 1 1\
  queues 4@0 4@4 hw 1 mode channel shaper bw_rlimit\
  max_rate 4Gbit 5Gbit

To dump the bandwidth rates:
# tc qdisc show dev eth0

qdisc mqprio 804a: root  tc 2 map 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0
             queues:(0:3) (4:7)
             mode:channel
             shaper:bw_rlimit   max_rate:4Gbit 5Gbit

Signed-off-by: Amritha Nambiar <amritha.nambiar@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2017-10-13 14:16:53 -07:00
..
i40e_adminq_cmd.h i40e: Display error message if module does not meet thermal requirements 2017-10-06 08:11:31 -07:00
i40e_adminq.c i40e: Stop dropping 802.1ad tags - eth proto 0x88a8 2017-10-02 12:46:36 -07:00
i40e_adminq.h
i40e_alloc.h
i40e_client.c i40e: use dev_dbg instead of dev_info when warning about missing routine 2017-06-20 18:17:10 -07:00
i40e_client.h
i40e_common.c i40e: Retry AQC GetPhyAbilities to overcome I2CRead hangs 2017-10-09 14:32:18 -07:00
i40e_dcb_nl.c
i40e_dcb.c i40e: Support firmware CEE DCB UP to TC map re-definition 2017-06-20 18:17:10 -07:00
i40e_dcb.h
i40e_debugfs.c i40e: Add macro for PF reset bit 2017-10-13 13:29:48 -07:00
i40e_devids.h
i40e_diag.c
i40e_diag.h
i40e_ethtool.c i40e: Enable 'channel' mode in mqprio for TC configs 2017-10-13 14:06:37 -07:00
i40e_fcoe.c networking: make skb_put & friends return void pointers 2017-06-16 11:48:39 -04:00
i40e_fcoe.h
i40e_hmc.c
i40e_hmc.h
i40e_lan_hmc.c
i40e_lan_hmc.h
i40e_main.c i40e: Add support setting TC max bandwidth rates 2017-10-13 14:16:53 -07:00
i40e_nvm.c i40e: Avoid some useless variables and initializers in NVM functions 2017-10-09 14:42:17 -07:00
i40e_osdep.h
i40e_prototype.h i40e: Add support for 'ethtool -m' 2017-10-02 12:46:35 -07:00
i40e_ptp.c i40e: separate hw_features from runtime changing flags 2017-08-25 14:46:15 -07:00
i40e_register.h i40e: fix incorrect register definition 2017-10-06 08:11:31 -07:00
i40e_status.h
i40e_trace.h
i40e_txrx.c i40e/i40evf: bump tail only in multiples of 8 2017-10-09 14:26:29 -07:00
i40e_txrx.h i40e: Add infrastructure for queue channel support 2017-10-13 13:38:17 -07:00
i40e_type.h i40e: Retry AQC GetPhyAbilities to overcome I2CRead hangs 2017-10-09 14:32:18 -07:00
i40e_virtchnl_pf.c i40e: Refactor VF BW rate limiting 2017-10-13 14:07:32 -07:00
i40e_virtchnl_pf.h i40e: fix handling of vf_states variable 2017-10-02 12:46:35 -07:00
i40e.h i40e: Add support setting TC max bandwidth rates 2017-10-13 14:16:53 -07:00
Makefile