[][kernel][mt7987][eth][net: phy: mediatek: mtk-2p5ge: Force phy to enter AN state at beginning]

[Description]
Fix and force built-in 2.5Gphy to enter AN state at beginning.

Without this patch, built-in 2.5Gphy may hang at firmware loading.

[Release-log]
N/A

Change-Id: I87668b2c8c134d1bef7e3ea15fbc310edace8652
Reviewed-on: https://gerrit.mediatek.inc/c/openwrt/feeds/mtk_openwrt_feeds/+/9641682
diff --git a/21.02/files/target/linux/mediatek/files-5.4/drivers/net/phy/mediatek/mtk-2p5ge.c b/21.02/files/target/linux/mediatek/files-5.4/drivers/net/phy/mediatek/mtk-2p5ge.c
index 87a91e9..88696da 100644
--- a/21.02/files/target/linux/mediatek/files-5.4/drivers/net/phy/mediatek/mtk-2p5ge.c
+++ b/21.02/files/target/linux/mediatek/files-5.4/drivers/net/phy/mediatek/mtk-2p5ge.c
@@ -197,6 +197,9 @@
 		goto release_fw;
 	}
 
+	/* Force 2.5Gphy back to AN state */
+	phy_set_bits(phydev, MII_BMCR, BMCR_RESET);
+	usleep_range(5000, 6000);
 	phy_set_bits(phydev, MII_BMCR, BMCR_PDOWN);
 
 	reg = readw(apb_base + SW_RESET);