bcm4908: backport the latest bcm_sf2 commits
[openwrt/openwrt.git] / target / linux / bcm4908 / patches-5.4 / 701-net-dsa-bcm_sf2-keep-GPHY-enabled-on-the-BCM4908.patch
1 From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
2 Date: Tue, 16 Feb 2021 00:06:35 +0100
3 Subject: [PATCH] net: dsa: bcm_sf2: keep GPHY enabled on the BCM4908
4
5 Trying to access disabled PHY results in MDIO_READ_FAIL and:
6 [ 11.962886] brcm-sf2 80080000.switch wan: configuring for phy/internal link mode
7 [ 11.972500] 8021q: adding VLAN 0 to HW filter on device wan
8 [ 11.980205] ------------[ cut here ]------------
9 [ 11.984885] WARNING: CPU: 0 PID: 7 at phy_error+0x10/0x58
10
11 Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
12 ---
13 drivers/net/dsa/bcm_sf2.c | 6 ++++++
14 1 file changed, 6 insertions(+)
15
16 --- a/drivers/net/dsa/bcm_sf2.c
17 +++ b/drivers/net/dsa/bcm_sf2.c
18 @@ -1333,6 +1333,12 @@ static int bcm_sf2_sw_probe(struct platf
19 priv->hw_params.core_rev >> 8, priv->hw_params.core_rev & 0xff,
20 priv->irq0, priv->irq1);
21
22 + /* BCM4908 has 5 GPHYs which means bcm_sf2_port_setup() will not enable
23 + * GPHY when needed. Leave it enabled here.
24 + */
25 + if (priv->type == BCM4908_DEVICE_ID)
26 + bcm_sf2_gphy_enable_set(priv->dev->ds, true);
27 +
28 return 0;
29
30 out_mdio: