netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net v1] net: dsa: mv88e6xxx: Make unsupported C45 reads return 0xffff
@ 2024-01-20 19:21 Andrew Lunn
  2024-01-22 12:24 ` Vladimir Oltean
  0 siblings, 1 reply; 10+ messages in thread
From: Andrew Lunn @ 2024-01-20 19:21 UTC (permalink / raw)
  To: netdev-maintainers, kuba, pabeni, davem
  Cc: Vladimir Oltean, netdev, Andrew Lunn, stable, Tim Menninger

When there is no device on the bus for a given address, the pull up
resistor on the data line results in the read returning 0xffff. The
phylib core code understands this when scanning for devices on the
bus, and a number of MDIO bus masters make use of this as a way to
indicate they cannot perform the read.

Make us of this as a minimal fix for stable where the mv88e6xxx
returns EOPNOTSUPP when the hardware does not support C45, but phylib
interprets this as a fatal error, which it should not be.

Cc: stable@vger.kernel.org
Reported-by: Tim Menninger <tmenninger@purestorage.com>
Fixes: 1a136ca2e089 ("net: mdio: scan bus based on bus capabilities for C22 and C45")
Fixes: da099a7fb13d ("net: phy: Remove probe_capabilities")
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
---
 drivers/net/dsa/mv88e6xxx/chip.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c
index 383b3c4d6f59..614cabb5c1b0 100644
--- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -3659,7 +3659,7 @@ static int mv88e6xxx_mdio_read_c45(struct mii_bus *bus, int phy, int devad,
 	int err;
 
 	if (!chip->info->ops->phy_read_c45)
-		return -EOPNOTSUPP;
+		return 0xffff;
 
 	mv88e6xxx_reg_lock(chip);
 	err = chip->info->ops->phy_read_c45(chip, bus, phy, devad, reg, &val);
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2024-01-24 16:00 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-20 19:21 [PATCH net v1] net: dsa: mv88e6xxx: Make unsupported C45 reads return 0xffff Andrew Lunn
2024-01-22 12:24 ` Vladimir Oltean
2024-01-22 12:29   ` Vladimir Oltean
2024-01-22 12:52     ` Vladimir Oltean
2024-01-22 13:39   ` Andrew Lunn
2024-01-22 20:44     ` Tim Menninger
2024-01-22 23:01       ` Andrew Lunn
2024-01-23 15:27         ` Tim Menninger
2024-01-23 22:59           ` Andrew Lunn
2024-01-24 15:59             ` Tim Menninger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).