linux/drivers/net/dsa
Andrew Lunn 585b40e25d net: dsa: mv88e6xxx: Fix failed probe due to unsupported C45 reads
Not all mv88e6xxx device support C45 read/write operations. Those
which do not return -EOPNOTSUPP. However, when phylib scans the bus,
it considers this fatal, and the probe of the MDIO bus fails, which in
term causes the mv88e6xxx probe as a whole to fail.

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. C45 allows multiple devices to be supported at one address, so
phylib will perform a few reads at each address, so although thought
not the most efficient solution, it is a way to avoid fatal
errors. Make use of this as a minimal fix for stable to fix the
probing problems.

Follow up patches will rework how C45 operates to make it similar to
C22 which considers -ENODEV as a none-fatal, and swap mv88e6xxx to
using this.

Cc: stable@vger.kernel.org
Fixes: 743a19e38d ("net: dsa: mv88e6xxx: Separate C22 and C45 transactions")
Reported-by: Tim Menninger <tmenninger@purestorage.com>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Link: https://lore.kernel.org/r/20240129224948.1531452-1-andrew@lunn.ch
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2024-01-31 15:57:07 -08:00
..
b53 net: dsa: Use conduit and user terms 2023-10-24 13:08:14 -07:00
hirschmann net: dsa: hirschmann: Convert to platform remove callback returning void 2023-09-20 10:25:57 +01:00
microchip net: dsa: microchip: use DSA_TAG_PROTO without _VALUE define 2023-12-08 11:01:21 -08:00
mv88e6xxx net: dsa: mv88e6xxx: Fix failed probe due to unsupported C45 reads 2024-01-31 15:57:07 -08:00
ocelot net: dsa: Use conduit and user terms 2023-10-24 13:08:14 -07:00
qca net: dsa: qca8k: fix illegal usage of GPIO 2024-01-29 18:14:07 -08:00
realtek net: dsa: realtek: Rewrite RTL8366RB MTU handling 2023-12-12 14:17:06 +01:00
sja1105 net: dsa: sja1105: Use units.h instead of the copy of a definition 2023-11-29 20:12:17 -08:00
xrs700x net: dsa: Use conduit and user terms 2023-10-24 13:08:14 -07:00
bcm_sf2_cfp.c net: dsa: Use conduit and user terms 2023-10-24 13:08:14 -07:00
bcm_sf2_regs.h
bcm_sf2.c net: dsa: bcm_sf2: drop priv->master_mii_dn 2024-01-05 11:56:36 +00:00
bcm_sf2.h net: dsa: bcm_sf2: drop priv->master_mii_dn 2024-01-05 11:56:36 +00:00
dsa_loop_bdinfo.c
dsa_loop.c net: dsa: dsa_loop: add phylink capabilities 2023-10-11 10:06:05 +01:00
dsa_loop.h
Kconfig net: dsa: mt7530: improve and relax PHY driver dependency 2023-08-09 11:22:55 +01:00
lan9303_i2c.c net: dsa: Switch i2c drivers back to use .probe() 2023-05-31 09:52:55 +01:00
lan9303_mdio.c net: dsa: lan9303: consequently nested-lock physical MDIO 2023-11-02 10:48:09 +01:00
lan9303-core.c net: dsa: Use conduit and user terms 2023-10-24 13:08:14 -07:00
lan9303.h
lantiq_gswip.c net: dsa: lantiq_gswip: ignore MDIO buses disabled in OF 2024-01-05 11:56:35 +00:00
lantiq_pce.h
Makefile net: dsa: mt7530: introduce driver for MT7988 built-in switch 2023-04-03 10:13:01 +01:00
mt7530-mdio.c net: dsa: mt7530: fix support for MT7531BE 2023-04-19 17:37:45 -07:00
mt7530-mmio.c net: dsa: mt7530: Convert to platform remove callback returning void 2023-09-20 10:25:57 +01:00
mt7530.c net: dsa: mt7530: fix 10M/100M speed on MT7988 switch 2024-01-26 14:18:39 -08:00
mt7530.h net: dsa: mt7530: fix handling of 802.1X PAE frames 2023-08-19 12:29:33 +01:00
mv88e6060.c net: dsa: mv88e6060: add phylink_get_caps implementation 2023-08-14 18:57:17 -07:00
mv88e6060.h
rzn1_a5psw.c net: dsa: rzn1_a5psw: Convert to platform remove callback returning void 2023-09-20 10:25:58 +01:00
rzn1_a5psw.h net: dsa: rzn1-a5psw: add vlan support 2023-08-11 11:58:36 +01:00
vitesse-vsc73xx-core.c net: dsa: vsc73xx: Add null pointer check to vsc73xx_gpio_probe 2024-01-16 17:48:27 -08:00
vitesse-vsc73xx-platform.c net: dsa: vitesse-vsc73xx: Convert to platform remove callback returning void 2023-09-20 10:25:58 +01:00
vitesse-vsc73xx-spi.c net: dsa: vitesse-vsc73xx: remove unnecessary set_drvdata() 2022-09-22 19:30:39 -07:00
vitesse-vsc73xx.h