mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-03-09 12:57:39 +07:00
![]() What features a phy supports is masked in genphy_config_init() by looking at the PHYs BMSR register. If the link is down, fixed_phy_update_regs() will only set the auto- negotiation capable bit in BMSR. Thus genphy_config_init() comes to the conclusion the PHY can only perform 10/Half, and masks out the higher speed features. If however the link it up, BMSR is set to indicate the speed the PHY is capable of auto-negotiating, and genphy_config_init() does not mask out the high speed features. To fix this, when the link is down, have fixed_phy_update_regs() leave the link status, auto-negotiation complete, and link partner capabilities unset, but set all the local capabilities depending on the fixed phy speed. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net> |
||
---|---|---|
.. | ||
amd.c | ||
aquantia.c | ||
at803x.c | ||
bcm7xxx.c | ||
bcm63xx.c | ||
bcm87xx.c | ||
broadcom.c | ||
cicada.c | ||
davicom.c | ||
dp83640_reg.h | ||
dp83640.c | ||
dp83867.c | ||
et1011c.c | ||
fixed_phy.c | ||
icplus.c | ||
Kconfig | ||
lxt.c | ||
Makefile | ||
marvell.c | ||
mdio_bus.c | ||
mdio-bcm-unimac.c | ||
mdio-bitbang.c | ||
mdio-gpio.c | ||
mdio-moxart.c | ||
mdio-mux-gpio.c | ||
mdio-mux-mmioreg.c | ||
mdio-mux.c | ||
mdio-octeon.c | ||
mdio-sun4i.c | ||
micrel.c | ||
national.c | ||
phy_device.c | ||
phy.c | ||
qsemi.c | ||
realtek.c | ||
smsc.c | ||
spi_ks8995.c | ||
ste10Xp.c | ||
teranetics.c | ||
vitesse.c |