linux-stable/drivers/net/ethernet/intel/igc
Aravindhan Gunasekaran 1ab011b0bf igc: Add support for CBS offloading
Implement support for Credit-based shaper(CBS) Qdisc hardware
offload mode in the driver. There are two sets of IEEE802.1Qav
(CBS) HW logic in i225 controller and this patch supports
enabling them in the top two priority TX queues.

Driver implemented as recommended by Foxville External
Architecture Specification v0.993. Idleslope and Hi-credit are
the CBS tunable parameters for i225 NIC, programmed in TQAVCC
and TQAVHC registers respectively.

In-order for IEEE802.1Qav (CBS) algorithm to work as intended
and provide BW reservation CBS should be enabled in highest
priority queue first. If we enable CBS on any of low priority
queues, the traffic in high priority queue does not allow low
priority queue to be selected for transmission and bandwidth
reservation is not guaranteed.

Signed-off-by: Aravindhan Gunasekaran <aravindhan.gunasekaran@intel.com>
Signed-off-by: Mallikarjuna Chilakala <mallikarjuna.chilakala@intel.com>
Tested-by: Dvora Fuxbrumer <dvorax.fuxbrumer@linux.intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
2021-08-27 09:31:09 -07:00
..
igc.h igc: Add support for CBS offloading 2021-08-27 09:31:09 -07:00
igc_base.c igc: Remove _I_PHY_ID checking 2021-07-20 16:11:36 -07:00
igc_base.h igc: Enable TX via AF_XDP zero-copy 2021-05-20 10:21:42 -07:00
igc_defines.h igc: Add support for CBS offloading 2021-08-27 09:31:09 -07:00
igc_diag.c igc: add support to eeprom, registers and link self-tests 2020-05-18 15:06:28 -07:00
igc_diag.h igc: add support to eeprom, registers and link self-tests 2020-05-18 15:06:28 -07:00
igc_dump.c igb/igc: use strongly typed pointer 2021-05-26 09:11:41 -07:00
igc_ethtool.c ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
igc_hw.h igc: Clean up nvm_operations structure 2021-02-03 15:20:32 -08:00
igc_i225.c igc: Fix overwrites return value 2021-04-16 13:15:45 -07:00
igc_i225.h igc: Add initial LTR support 2020-06-29 18:21:09 -07:00
igc_mac.c igc: check return value of ret_val in igc_config_fc_after_link_up 2021-02-01 10:04:43 -08:00
igc_mac.h igc: remove IGC_REMOVED function 2020-05-19 15:01:48 -07:00
igc_main.c igc: Add support for CBS offloading 2021-08-27 09:31:09 -07:00
igc_nvm.c
igc_nvm.h
igc_phy.c igc: Remove _I_PHY_ID checking 2021-07-20 16:11:36 -07:00
igc_phy.h igc: Expose the gPHY firmware version 2021-02-03 15:20:32 -08:00
igc_ptp.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-08-26 17:57:57 -07:00
igc_regs.h igc: Add support for CBS offloading 2021-08-27 09:31:09 -07:00
igc_tsn.c igc: Add support for CBS offloading 2021-08-27 09:31:09 -07:00
igc_tsn.h igc: Simplify TSN flags handling 2021-08-27 09:31:08 -07:00
igc_xdp.c igc: Enable TX via AF_XDP zero-copy 2021-05-20 10:21:42 -07:00
igc_xdp.h igc: Enable RX via AF_XDP zero-copy 2021-05-20 10:21:42 -07:00
Makefile igc: Add initial XDP support 2021-03-29 09:09:53 -07:00