summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChunHao Lin <hau@realtek.com>2023-03-23 22:33:09 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-04-05 11:23:47 +0200
commit69ed49a7b881ffe6588058411b0205f49b81071a (patch)
treeda7feb911dad2f03e3693a7c76b395659eff70c1
parent3907fcb5a439933cf8c10d6dc300bc11eba30de3 (diff)
downloadlinux-69ed49a7b881ffe6588058411b0205f49b81071a.tar.gz
linux-69ed49a7b881ffe6588058411b0205f49b81071a.tar.bz2
linux-69ed49a7b881ffe6588058411b0205f49b81071a.zip
r8169: fix RTL8168H and RTL8107E rx crc error
[ Upstream commit 33189f0a94b9639c058781fcf82e4ea3803b1682 ] When link speed is 10 Mbps and temperature is under -20°C, RTL8168H and RTL8107E may have rx crc error. Disable phy 10 Mbps pll off to fix this issue. Fixes: 6e1d0b898818 ("r8169:add support for RTL8168H and RTL8107E") Signed-off-by: ChunHao Lin <hau@realtek.com> Reviewed-by: Heiner Kallweit <hkallweit1@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/net/ethernet/realtek/r8169_phy_config.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/realtek/r8169_phy_config.c b/drivers/net/ethernet/realtek/r8169_phy_config.c
index 913d030d73eb..e18a76f5049f 100644
--- a/drivers/net/ethernet/realtek/r8169_phy_config.c
+++ b/drivers/net/ethernet/realtek/r8169_phy_config.c
@@ -970,6 +970,9 @@ static void rtl8168h_2_hw_phy_config(struct rtl8169_private *tp,
/* disable phy pfm mode */
phy_modify_paged(phydev, 0x0a44, 0x11, BIT(7), 0);
+ /* disable 10m pll off */
+ phy_modify_paged(phydev, 0x0a43, 0x10, BIT(0), 0);
+
rtl8168g_disable_aldps(phydev);
rtl8168g_config_eee_phy(phydev);
}