WSL2-Linux-Kernel/drivers/net/dsa/mv88e6xxx
Marek Behún ede359d884 net: dsa: mv88e6xxx: Link in pcs_get_state() if AN is bypassed
Function mv88e6xxx_serdes_pcs_get_state() currently does not report link
up if AN is enabled, Link bit is set, but Speed and Duplex Resolved bit
is not set, which testing shows is the case for when auto-negotiation
was bypassed (we have AN enabled but link partner does not).

An example of such link partner is Marvell 88X3310 PHY, when put into
the mode where host interface changes between 10gbase-r, 5gbase-r,
2500base-x and sgmii according to copper speed. The 88X3310 does not
enable AN in 2500base-x, and so SerDes on mv88e6xxx currently does not
link with it.

Fix this.

Fixes: a5a6858b79 ("net: dsa: mv88e6xxx: extend phylink to Serdes PHYs")
Signed-off-by: Marek Behún <kabel@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2021-12-01 14:39:10 +00:00
..
Kconfig ethernet: fix PTP_1588_CLOCK dependencies 2021-08-13 17:49:05 -07:00
Makefile net: dsa: mv88e6xxx: Make global2 support mandatory 2021-01-27 19:28:16 -08:00
chip.c net: dsa: mv88e6xxx: Don't support >1G speeds on 6191X on ports other than 10 2021-11-09 19:09:12 -08:00
chip.h net: dsa: mv88e6xxx: isolate the ATU databases of standalone and bridged ports 2021-10-08 15:47:46 -07:00
devlink.c net: dsa: tear down devlink port regions when tearing down the devlink port on error 2021-09-19 13:05:44 +01:00
devlink.h net: dsa: tear down devlink port regions when tearing down the devlink port on error 2021-09-19 13:05:44 +01:00
global1.c dsa: mv88e6xxx: Fix MTU definition 2021-09-27 13:31:10 +01:00
global1.h net: dsa: mv88e6xxx: add support for mv88e6393x family 2021-03-17 14:44:18 -07:00
global1_atu.c net: mv88e6xxx: convert comma to semicolon 2020-12-09 16:23:08 -08:00
global1_vtu.c net: dsa: mv88e6xxx: use mv88e6185_g1_vtu_loadpurge() for the 6250 2021-01-26 17:58:28 -08:00
global2.c net: dsa: mv88e6xxx: Export cross-chip PVT as devlink region 2021-04-21 10:25:09 -07:00
global2.h net: dsa: mv88e6xxx: Export cross-chip PVT as devlink region 2021-04-21 10:25:09 -07:00
global2_avb.c net: dsa: mv88e6xxx: wait for AVB Busy bit 2019-08-11 21:27:15 -07:00
global2_scratch.c net: dsa: mv88e6xxx: fix up kerneldoc some more 2021-03-22 13:09:02 -07:00
hwtstamp.c net: dsa: no longer clone skb in core driver 2021-04-27 14:10:15 -07:00
hwtstamp.h net: dsa: no longer clone skb in core driver 2021-04-27 14:10:15 -07:00
phy.c net: dsa: mv88e6xxx: introduce helpers for handling chip->reg_lock 2019-06-23 11:11:11 -07:00
phy.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
port.c net: dsa: mv88e6xxx: keep the pvid at 0 when VLAN-unaware 2021-10-08 15:47:46 -07:00
port.h net: dsa: mv88e6xxx: keep the pvid at 0 when VLAN-unaware 2021-10-08 15:47:46 -07:00
port_hidden.c net: dsa: mv88e6xxx: update code operating on hidden registers 2019-08-27 21:42:16 -07:00
ptp.c mv88e6xxx: Reject requests to enable time stamping on both edges. 2019-11-15 12:48:32 -08:00
ptp.h net: dsa: mv88e6xxx: add PTP support for MV88E6250 family 2019-08-02 17:58:53 -07:00
serdes.c net: dsa: mv88e6xxx: Link in pcs_get_state() if AN is bypassed 2021-12-01 14:39:10 +00:00
serdes.h net: dsa: mv88e6xxx: Fix inband AN for 2500base-x on 88E6393X family 2021-12-01 14:39:10 +00:00
smi.c net: dsa: mv88e6xxx: add delay in direct SMI wait 2019-08-11 21:27:15 -07:00
smi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00