[PATCH net 5/6] net: dsa: vsc73xx: allow phy resetting
From: Pawel Dembicki
Date: Fri Aug 02 2024 - 04:05:43 EST
Now, phy reset isn't a problem for vsc73xx switches.
'soft_reset' can be done normally.
This commit removes the reset blockade in the 'vsc73xx_phy_write'
function.
Signed-off-by: Pawel Dembicki <paweldembicki@xxxxxxxxx>
---
This patch came from net-next series[0].
Changes since net-next:
- rebased to netdev/main only
[0] https://patchwork.kernel.org/project/netdevbpf/patch/20240729210615.279952-6-paweldembicki@xxxxxxxxx/
---
drivers/net/dsa/vitesse-vsc73xx-core.c | 11 -----------
1 file changed, 11 deletions(-)
diff --git a/drivers/net/dsa/vitesse-vsc73xx-core.c b/drivers/net/dsa/vitesse-vsc73xx-core.c
index 42b4f312c418..5f63c56db905 100644
--- a/drivers/net/dsa/vitesse-vsc73xx-core.c
+++ b/drivers/net/dsa/vitesse-vsc73xx-core.c
@@ -614,17 +614,6 @@ static int vsc73xx_phy_write(struct dsa_switch *ds, int phy, int regnum,
if (ret)
return ret;
- /* It was found through tedious experiments that this router
- * chip really hates to have it's PHYs reset. They
- * never recover if that happens: autonegotiation stops
- * working after a reset. Just filter out this command.
- * (Resetting the whole chip is OK.)
- */
- if (regnum == 0 && (val & BIT(15))) {
- dev_info(vsc->dev, "reset PHY - disallowed\n");
- return 0;
- }
-
cmd = FIELD_PREP(VSC73XX_MII_CMD_PHY_ADDR, phy) |
FIELD_PREP(VSC73XX_MII_CMD_PHY_REG, regnum) |
FIELD_PREP(VSC73XX_MII_CMD_WRITE_DATA, val);
--
2.34.1