linux_dsm_epyc7002/drivers/net/phy
Clemens Gruber 3b72f84f8f net: phy: marvell: Fix pause frame negotiation
The negotiation of flow control / pause frame modes was broken since
commit fcf1f59afc ("net: phy: marvell: rearrange to use
genphy_read_lpa()") moved the setting of phydev->duplex below the
phy_resolve_aneg_pause call. Due to a check of DUPLEX_FULL in that
function, phydev->pause was no longer set.

Fix it by moving the parsing of the status variable before the blocks
dealing with the pause frames.

As the Marvell 88E1510 datasheet does not specify the timing between the
link status and the "Speed and Duplex Resolved" bit, we have to force
the link down as long as the resolved bit is not set, to avoid reporting
link up before we even have valid Speed/Duplex.

Tested with a Marvell 88E1510 (RGMII to Copper/1000Base-T)

Fixes: fcf1f59afc ("net: phy: marvell: rearrange to use genphy_read_lpa()")
Signed-off-by: Clemens Gruber <clemens.gruber@pqgruber.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2020-04-11 16:51:09 -07:00
..
mscc net: phy: mscc: consolidate a common RGMII delay implementation 2020-03-24 16:36:37 -07:00
adin.c net: phy: adin: fix a warning about msleep 2020-01-19 16:06:42 +01:00
amd.c
aquantia_hwmon.c
aquantia_main.c net: phy: aquantia: use phy_read_mmd_poll_timeout() to simplify the code 2020-03-23 22:00:02 -07:00
aquantia.h
at803x.c net: phy: at803x: fix clock sink configuration on ATH8030 and ATH8035 2020-04-01 11:20:47 -07:00
ax88796b.c
bcm7xxx.c net: phy: bcm7xx: add jumbo frame configuration to PHY 2020-03-27 16:07:24 -07:00
bcm63xx.c net: phy: bcm63xx: fix OOPS due to missing driver name 2020-03-03 17:37:06 -08:00
bcm87xx.c
bcm84881.c net: phy: bcm84881: use phy_read_mmd_poll_timeout() to simplify the code 2020-03-23 22:00:02 -07:00
bcm-cygnus.c
bcm-phy-lib.c net: phy: bcm7xx: add jumbo frame configuration to PHY 2020-03-27 16:07:24 -07:00
bcm-phy-lib.h net: phy: bcm7xx: add jumbo frame configuration to PHY 2020-03-27 16:07:24 -07:00
broadcom.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-02-21 13:39:34 -08:00
cicada.c
cortina.c
davicom.c
dp83tc811.c
dp83640_reg.h
dp83640.c ptp: Avoid deadlocks in the programmable pin code. 2020-03-30 11:16:38 -07:00
dp83822.c net: phy: DP83822: Add support for additional DP83825 devices 2020-01-23 21:21:12 +01:00
dp83848.c
dp83867.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-03-25 18:58:11 -07:00
dp83869.c
et1011c.c
fixed_phy.c net: phy: fixed_phy: switch to using fwnode_gpiod_get_index 2020-01-05 14:27:01 -08:00
icplus.c
intel-xway.c
Kconfig net: phy: add marvell usb to mdio controller 2020-03-26 19:49:34 -07:00
linkmode.c net: add linkmode helper for setting flow control advertisement 2020-02-16 19:39:44 -08:00
lxt.c
Makefile net: phy: add marvell usb to mdio controller 2020-03-26 19:49:34 -07:00
marvell10g.c net: phy: marvell10g: use phy_read_mmd_poll_timeout() to simplify the code 2020-03-23 22:00:02 -07:00
marvell.c net: phy: marvell: Fix pause frame negotiation 2020-04-11 16:51:09 -07:00
mdio_bus.c Documentation: mdio_bus.c - fix warnings 2020-04-07 18:33:48 -07:00
mdio_device.c
mdio-aspeed.c
mdio-bcm-iproc.c net: phy: restore mdio regs in the iproc mdio driver 2020-02-16 19:19:18 -08:00
mdio-bcm-unimac.c net: phy: mdio-bcm-unimac: Fix clock handling 2020-03-24 16:45:32 -07:00
mdio-bitbang.c
mdio-boardinfo.c
mdio-boardinfo.h
mdio-cavium.c
mdio-cavium.h
mdio-gpio.c
mdio-hisi-femac.c
mdio-i2c.c
mdio-i2c.h
mdio-ipq8064.c net: mdio: add ipq8064 mdio driver 2020-03-06 22:07:05 -08:00
mdio-moxart.c
mdio-mscc-miim.c
mdio-mux-bcm-iproc.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-03-25 18:58:11 -07:00
mdio-mux-gpio.c
mdio-mux-meson-g12a.c
mdio-mux-mmioreg.c
mdio-mux-multiplexer.c
mdio-mux.c
mdio-mvusb.c net: phy: add marvell usb to mdio controller 2020-03-26 19:49:34 -07:00
mdio-octeon.c
mdio-sun4i.c
mdio-thunder.c
mdio-xgene.c
mdio-xgene.h
mdio-xpcs.c net: phy: xpcs: Restart AutoNeg if outcome was invalid 2020-03-23 21:01:58 -07:00
meson-gxl.c
micrel.c net: phy: micrel: kszphy_resume(): add delay after genphy_resume() before accessing PHY registers 2020-04-03 16:04:24 -07:00
microchip_t1.c
microchip.c
mii_timestamper.c net: mii_timestamper: fix static allocation by PHY driver 2020-01-31 07:46:11 -08:00
national.c
nxp-tja11xx.c net: phy: tja11xx: use phy_read_poll_timeout() to simplify the code 2020-03-23 22:00:02 -07:00
phy_device.c net: phy: don't touch suspended flag if there's no suspend/resume callback 2020-03-26 20:29:51 -07:00
phy_led_triggers.c
phy-c45.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-02-27 18:31:39 -08:00
phy-core.c net: phy: add and use phy_check_downshift 2020-03-23 21:09:47 -07:00
phy.c net: phy: add and use phy_check_downshift 2020-03-23 21:09:47 -07:00
phylink.c net: phylink: add separate pcs operations structure 2020-03-30 11:52:27 -07:00
qsemi.c
realtek.c net: phy: realtek: read actual speed to detect downshift 2020-03-18 17:05:34 -07:00
rockchip.c
sfp-bus.c net: phy: sfp-bus.c: get rid of docs warnings 2020-03-17 23:39:29 -07:00
sfp.c
sfp.h
smsc.c net: phy: smsc: use phy_read_poll_timeout() to simplify the code 2020-03-23 22:00:02 -07:00
spi_ks8995.c
ste10Xp.c
swphy.c
swphy.h
teranetics.c
uPD60620.c
vitesse.c
xilinx_gmii2rgmii.c