linux/drivers/net/dsa
Russell King (Oracle) cae6172a94 net: dsa: mv88e6xxx: allow use of PHYs on CPU and DSA ports
[ Upstream commit 04ec4e6250 ]

Martyn Welch reports that his CPU port is unable to link where it has
been necessary to use one of the switch ports with an internal PHY for
the CPU port. The reason behind this is the port control register is
left forcing the link down, preventing traffic flow.

This occurs because during initialisation, phylink expects the link to
be down, and DSA forces the link down by synthesising a call to the
DSA drivers phylink_mac_link_down() method, but we don't touch the
forced-link state when we later reconfigure the port.

Resolve this by also unforcing the link state when we are operating in
PHY mode and the PPU is set to poll the PHY to retrieve link status
information.

Reported-by: Martyn Welch <martyn.welch@collabora.com>
Tested-by: Martyn Welch <martyn.welch@collabora.com>
Fixes: 3be98b2d5f ("net: dsa: Down cpu/dsa ports phylink will control")
Cc: <stable@vger.kernel.org> # 5.7: 2b29cb9e3f7f: net: dsa: mv88e6xxx: fix "don't use PHY_DETECT on internal PHY's"
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Link: https://lore.kernel.org/r/E1mvFhP-00F8Zb-Ul@rmk-PC.armlinux.org.uk
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-09-23 14:16:57 +02:00
..
b53 net: dsa: b53: Fix IMP port setup on BCM5301x 2021-09-22 12:28:05 +02:00
microchip net: dsa: microchip: ksz9477: fix fdb_dump last invalid entry 2022-08-25 11:38:07 +02:00
mv88e6xxx net: dsa: mv88e6xxx: allow use of PHYs on CPU and DSA ports 2022-09-23 14:16:57 +02:00
ocelot net: dsa: felix: fix ethtool 256-511 and 512-1023 TX packet counters 2022-08-25 11:38:07 +02:00
qca net: dsa: ar9331: register the mdiobus under devres 2022-02-16 12:54:25 +01:00
sja1105 net: dsa: sja1105: fix buffer overflow in sja1105_setup_devlink_regions() 2022-08-25 11:38:08 +02:00
bcm_sf2_cfp.c net: dsa: bcm_sf2_cfp: fix an incorrect NULL check on list iterator 2022-04-08 14:40:30 +02:00
bcm_sf2_regs.h
bcm_sf2.c net: dsa: bcm_sf2: force pause link settings 2022-07-07 17:52:16 +02:00
bcm_sf2.h
dsa_loop_bdinfo.c
dsa_loop.c
dsa_loop.h
Kconfig net: dsa: mt7530: make NET_DSA_MT7530 select MEDIATEK_GE_PHY 2022-02-08 18:30:41 +01:00
lan9303_i2c.c
lan9303_mdio.c
lan9303-core.c net: dsa: lan9303: fix reset on probe 2022-02-23 12:01:01 +01:00
lan9303.h
lantiq_gswip.c net: dsa: lantiq_gswip: Fix refcount leak in gswip_gphy_fw_list 2022-06-14 18:32:40 +02:00
lantiq_pce.h
Makefile
mt7530.c net: dsa: mt7530: 1G can also support 1000BASE-X link mode 2022-06-09 10:21:01 +02:00
mt7530.h
mv88e6060.c net: dsa: mv88e6060: prevent crash on an unused port 2022-08-25 11:38:06 +02:00
mv88e6060.h
qca8k.c
qca8k.h
realtek-smi-core.c net: dsa: realtek: register the MDIO bus under devres 2021-09-30 10:11:02 +02:00
realtek-smi-core.h
rtl8366.c
rtl8366rb.c net: dsa: rtl8366rb: Fix off-by-one bug 2021-11-18 14:04:03 +01:00
vitesse-vsc73xx-core.c
vitesse-vsc73xx-platform.c
vitesse-vsc73xx-spi.c
vitesse-vsc73xx.h