Blob Blame History Raw
From: Yufeng Mo <moyufeng@huawei.com>
Date: Fri, 30 Apr 2021 17:06:22 +0800
Subject: net: hns3: disable phy loopback setting in hclge_mac_start_phy
Patch-mainline: v5.13-rc1
Git-commit: 472497d0bdae890a896013332a0b673f9acdf2bf
References: bsc#1104353 FATE#326415

If selftest and reset are performed at the same time, the phy
loopback setting may be still in enable state after the reset,
and device cannot link up. So fix this issue by disabling phy
loopback before phy_start().

Fixes: 256727da7395 ("net: hns3: Add MDIO support to HNS3 Ethernet driver for hip08 SoC")
Signed-off-by: Yufeng Mo <moyufeng@huawei.com>
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
---
 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mdio.c |    2 ++
 1 file changed, 2 insertions(+)

--- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mdio.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mdio.c
@@ -258,6 +258,8 @@ void hclge_mac_start_phy(struct hclge_de
 	if (!phydev)
 		return;
 
+	phy_loopback(phydev, false);
+
 	phy_start(phydev);
 }