From 238170abe7e41c75bbf77897eb84f637fb8936fd Mon Sep 17 00:00:00 2001 From: Jiawen Wu Date: Wed, 9 Feb 2022 18:42:13 +0800 Subject: [PATCH] net/txgbe: fix KR auto-negotiation Fix failure to enter auto-negotiation mode on some firmware versions for KR NICs. Fixes: f611dada1af8 ("net/txgbe: update link setup process of backplane NICs") Cc: stable@dpdk.org Signed-off-by: Jiawen Wu --- drivers/net/txgbe/base/txgbe_phy.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/net/txgbe/base/txgbe_phy.c b/drivers/net/txgbe/base/txgbe_phy.c index 3f5229ecc2..3fb929f37a 100644 --- a/drivers/net/txgbe/base/txgbe_phy.c +++ b/drivers/net/txgbe/base/txgbe_phy.c @@ -1455,6 +1455,10 @@ txgbe_set_link_to_kr(struct txgbe_hw *hw, bool autoneg) if (!(hw->devarg.auto_neg == 1)) { wr32_epcs(hw, SR_AN_CTRL, 0); wr32_epcs(hw, VR_AN_KR_MODE_CL, 0); + } else { + value = rd32_epcs(hw, TXGBE_PHY_TX_EQ_CTL1); + value &= ~(1 << 6); + wr32_epcs(hw, TXGBE_PHY_TX_EQ_CTL1, value); } if (hw->devarg.present == 1) { value = rd32_epcs(hw, TXGBE_PHY_TX_EQ_CTL1); -- 2.39.5