summaryrefslogtreecommitdiff
path: root/target/linux/mediatek/patches-4.9/0095-ephy.patch
blob: 52d8299077331f0577adddfca0a3b9e5505a4db7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Index: linux-4.9.20/drivers/net/dsa/mt7530.c
===================================================================
--- linux-4.9.20.orig/drivers/net/dsa/mt7530.c
+++ linux-4.9.20/drivers/net/dsa/mt7530.c
@@ -629,6 +629,11 @@ mt7530_setup(struct dsa_switch *ds)
 	val = mt7530_read(priv, MT7530_MHWTRAP);
 	val &= ~MHWTRAP_P6_DIS & ~MHWTRAP_PHY_ACCESS;
 	val |= MHWTRAP_MANUAL;
+	if (!dsa_is_cpu_port(ds, 5)) {
+		val |= MHWTRAP_P5_DIS;
+		val |= MHWTRAP_P5_MAC_SEL;
+		val |= MHWTRAP_P5_RGMII_MODE;
+	}
 	mt7530_write(priv, MT7530_MHWTRAP, val);
 
 	/* Enable and reset MIB counters */
Index: linux-4.9.20/drivers/net/ethernet/mediatek/mtk_eth_soc.c
===================================================================
--- linux-4.9.20.orig/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+++ linux-4.9.20/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -221,6 +221,9 @@ static void mtk_phy_link_adjust(struct n
 		netif_carrier_on(dev);
 	else
 		netif_carrier_off(dev);
+
+	if (!of_phy_is_fixed_link(mac->of_node))
+		phy_print_status(dev->phydev);
 }
 
 static int mtk_phy_connect_node(struct mtk_eth *eth, struct mtk_mac *mac,