| From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl> |
| Date: Mon, 15 Feb 2021 23:59:26 +0100 |
| Subject: [PATCH] net: dsa: bcm_sf2: enable GPHY for switch probing |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| GPHY needs to be enabled to succesfully probe & setup switch port |
| connected to it. Otherwise hardcoding PHY OUI would be required. |
| |
| Before: |
| brcm-sf2 80080000.switch lan4 (uninitialized): PHY [800c05c0.mdio--1:08] driver [Generic PHY] (irq=POLL) |
| brcm-sf2 80080000.switch lan3 (uninitialized): PHY [800c05c0.mdio--1:09] driver [Generic PHY] (irq=POLL) |
| brcm-sf2 80080000.switch lan2 (uninitialized): PHY [800c05c0.mdio--1:0a] driver [Generic PHY] (irq=POLL) |
| brcm-sf2 80080000.switch lan1 (uninitialized): PHY [800c05c0.mdio--1:0b] driver [Generic PHY] (irq=POLL) |
| brcm-sf2 80080000.switch wan (uninitialized): error -5 setting up PHY for tree 0, switch 0, port 7 |
| |
| After: |
| brcm-sf2 80080000.switch lan4 (uninitialized): PHY [800c05c0.mdio--1:08] driver [Generic PHY] (irq=POLL) |
| brcm-sf2 80080000.switch lan3 (uninitialized): PHY [800c05c0.mdio--1:09] driver [Generic PHY] (irq=POLL) |
| brcm-sf2 80080000.switch lan2 (uninitialized): PHY [800c05c0.mdio--1:0a] driver [Generic PHY] (irq=POLL) |
| brcm-sf2 80080000.switch lan1 (uninitialized): PHY [800c05c0.mdio--1:0b] driver [Generic PHY] (irq=POLL) |
| brcm-sf2 80080000.switch wan (uninitialized): PHY [800c05c0.mdio--1:0c] driver [Generic PHY] (irq=POLL) |
| |
| Signed-off-by: Rafał Miłecki <rafal@milecki.pl> |
| --- |
| drivers/net/dsa/bcm_sf2.c | 4 ++++ |
| 1 file changed, 4 insertions(+) |
| |
| --- a/drivers/net/dsa/bcm_sf2.c |
| +++ b/drivers/net/dsa/bcm_sf2.c |
| @@ -1396,10 +1396,14 @@ static int bcm_sf2_sw_probe(struct platf |
| rev = reg_readl(priv, REG_PHY_REVISION); |
| priv->hw_params.gphy_rev = rev & PHY_REVISION_MASK; |
| |
| + bcm_sf2_gphy_enable_set(priv->dev->ds, true); |
| + |
| ret = b53_switch_register(dev); |
| if (ret) |
| goto out_mdio; |
| |
| + bcm_sf2_gphy_enable_set(priv->dev->ds, false); |
| + |
| dev_info(&pdev->dev, |
| "Starfighter 2 top: %x.%02x, core: %x.%02x, IRQs: %d, %d\n", |
| priv->hw_params.top_rev >> 8, priv->hw_params.top_rev & 0xff, |