Commit 3efcb86e authored by Vasu Dev's avatar Vasu Dev Committed by Jeff Kirsher

ixgbe: Fill at least min credits to a TC credit refills

Currently credit_refill and credit_max could be zero for a TC and that
is causing Tx hang for CEE mode configuration, so to fix that have at
min credit assigned to a TC and that is as what IEEE mode already does.

Change-ID: If652c133093a21e530f4e9eab09097976f57fb12
Signed-off-by: default avatarVasu Dev <vasu.dev@intel.com>
Tested-by: default avatarPhil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent 24759daa
...@@ -139,6 +139,11 @@ s32 ixgbe_dcb_calculate_tc_credits(struct ixgbe_hw *hw, ...@@ -139,6 +139,11 @@ s32 ixgbe_dcb_calculate_tc_credits(struct ixgbe_hw *hw,
/* Calculate credit refill ratio using multiplier */ /* Calculate credit refill ratio using multiplier */
credit_refill = min(link_percentage * min_multiplier, credit_refill = min(link_percentage * min_multiplier,
MAX_CREDIT_REFILL); MAX_CREDIT_REFILL);
/* Refill at least minimum credit */
if (credit_refill < min_credit)
credit_refill = min_credit;
p->data_credits_refill = (u16)credit_refill; p->data_credits_refill = (u16)credit_refill;
/* Calculate maximum credit for the TC */ /* Calculate maximum credit for the TC */
...@@ -149,7 +154,7 @@ s32 ixgbe_dcb_calculate_tc_credits(struct ixgbe_hw *hw, ...@@ -149,7 +154,7 @@ s32 ixgbe_dcb_calculate_tc_credits(struct ixgbe_hw *hw,
* of a TC is too small, the maximum credit may not be * of a TC is too small, the maximum credit may not be
* enough to send out a jumbo frame in data plane arbitration. * enough to send out a jumbo frame in data plane arbitration.
*/ */
if (credit_max && (credit_max < min_credit)) if (credit_max < min_credit)
credit_max = min_credit; credit_max = min_credit;
if (direction == DCB_TX_CONFIG) { if (direction == DCB_TX_CONFIG) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment