提交 80ab193d 编写于 作者: J John Fastabend 提交者: Jeff Kirsher

ixgbe: DCB: credit max only needs to be gt TSO size for 82598

The maximum credits per traffic class only needs to be greater
then the TSO size for 82598 devices. The 82599 devices do not
have this requirement so only do this test for 82598 devices.
Signed-off-by: NJohn Fastabend <john.r.fastabend@intel.com>
Tested-by: NRoss Brattain <ross.b.brattain@intel.com>
Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
上级 16b61beb
...@@ -42,7 +42,8 @@ ...@@ -42,7 +42,8 @@
* It should be called only after the rules are checked by * It should be called only after the rules are checked by
* ixgbe_dcb_check_config(). * ixgbe_dcb_check_config().
*/ */
s32 ixgbe_dcb_calculate_tc_credits(struct ixgbe_dcb_config *dcb_config, s32 ixgbe_dcb_calculate_tc_credits(struct ixgbe_hw *hw,
struct ixgbe_dcb_config *dcb_config,
int max_frame, u8 direction) int max_frame, u8 direction)
{ {
struct tc_bw_alloc *p; struct tc_bw_alloc *p;
...@@ -124,7 +125,8 @@ s32 ixgbe_dcb_calculate_tc_credits(struct ixgbe_dcb_config *dcb_config, ...@@ -124,7 +125,8 @@ s32 ixgbe_dcb_calculate_tc_credits(struct ixgbe_dcb_config *dcb_config,
* credit may not be enough to send out a TSO * credit may not be enough to send out a TSO
* packet in descriptor plane arbitration. * packet in descriptor plane arbitration.
*/ */
if (credit_max && if ((hw->mac.type == ixgbe_mac_82598EB) &&
credit_max &&
(credit_max < MINIMUM_CREDIT_FOR_TSO)) (credit_max < MINIMUM_CREDIT_FOR_TSO))
credit_max = MINIMUM_CREDIT_FOR_TSO; credit_max = MINIMUM_CREDIT_FOR_TSO;
......
...@@ -150,7 +150,8 @@ struct ixgbe_dcb_config { ...@@ -150,7 +150,8 @@ struct ixgbe_dcb_config {
/* DCB driver APIs */ /* DCB driver APIs */
/* DCB credits calculation */ /* DCB credits calculation */
s32 ixgbe_dcb_calculate_tc_credits(struct ixgbe_dcb_config *, int, u8); s32 ixgbe_dcb_calculate_tc_credits(struct ixgbe_hw *,
struct ixgbe_dcb_config *, int, u8);
/* DCB hw initialization */ /* DCB hw initialization */
s32 ixgbe_dcb_hw_config(struct ixgbe_hw *, struct ixgbe_dcb_config *); s32 ixgbe_dcb_hw_config(struct ixgbe_hw *, struct ixgbe_dcb_config *);
......
...@@ -3366,9 +3366,9 @@ static void ixgbe_configure_dcb(struct ixgbe_adapter *adapter) ...@@ -3366,9 +3366,9 @@ static void ixgbe_configure_dcb(struct ixgbe_adapter *adapter)
max_frame = max(max_frame, IXGBE_FCOE_JUMBO_FRAME_SIZE); max_frame = max(max_frame, IXGBE_FCOE_JUMBO_FRAME_SIZE);
#endif #endif
ixgbe_dcb_calculate_tc_credits(&adapter->dcb_cfg, max_frame, ixgbe_dcb_calculate_tc_credits(hw, &adapter->dcb_cfg, max_frame,
DCB_TX_CONFIG); DCB_TX_CONFIG);
ixgbe_dcb_calculate_tc_credits(&adapter->dcb_cfg, max_frame, ixgbe_dcb_calculate_tc_credits(hw, &adapter->dcb_cfg, max_frame,
DCB_RX_CONFIG); DCB_RX_CONFIG);
/* reconfigure the hardware */ /* reconfigure the hardware */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册