linux/drivers/net/phy
Heiner Kallweit a4db9055fd net: phy: fix duplex out of sync problem while changing settings
As reported by Zhang there's a small issue if in forced mode the duplex
mode changes with the link staying up [0]. In this case the MAC isn't
notified about the change.

The proposed patch relies on the phylib state machine and ignores the
fact that there are drivers that uses phylib but not the phylib state
machine. So let's don't change the behavior for such drivers and fix
it w/o re-adding state PHY_FORCING for the case that phylib state
machine is used.

[0] https://lore.kernel.org/netdev/a5c26ffd-4ee4-a5e6-4103-873208ce0dc5@huawei.com/T/

Fixes: 2bd229df5e ("net: phy: remove state PHY_FORCING")
Reported-by: Zhang Changzhong <zhangchangzhong@huawei.com>
Tested-by: Zhang Changzhong <zhangchangzhong@huawei.com>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Link: https://lore.kernel.org/r/7b8b9456-a93f-abbc-1dc5-a2c2542f932c@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2021-11-04 16:46:29 -07:00
..
mscc ethernet: constify references to netdev->dev_addr in drivers 2021-10-14 09:22:11 -07:00
adin.c net: phy: Demote non-compliant kernel-doc headers 2021-05-17 14:12:39 -07:00
amd.c net: phy: amd: remove the use of .ack_interrupt() 2020-11-17 11:37:00 -08:00
aquantia_hwmon.c
aquantia_main.c net: phy: aquantia: do not return an error on clearing pending IRQs 2020-11-11 14:09:54 -08:00
aquantia.h
at803x.c net: phy: Fix unsigned comparison with less than zero 2021-10-27 18:26:14 -07:00
ax88796b.c net: usb/phy: asix: add support for ax88772A/C PHYs 2021-06-07 13:23:02 -07:00
bcm7xxx.c net: phy: bcm7xxx: Add EPHY entry for 7712 2021-10-24 13:42:28 +01:00
bcm63xx.c net: phy: broadcom: remove use of ack_interrupt() 2020-11-05 16:32:39 -08:00
bcm87xx.c net: phy: change format of some declarations 2021-06-16 12:34:07 -07:00
bcm54140.c net: phy: broadcom: remove use of ack_interrupt() 2020-11-05 16:32:39 -08:00
bcm84881.c
bcm-cygnus.c net: phy: broadcom: remove use of ack_interrupt() 2020-11-05 16:32:39 -08:00
bcm-phy-lib.c net: phy: broadcom: Only advertise EEE for supported modes 2021-03-30 17:39:23 -07:00
bcm-phy-lib.h net: phy: broadcom: implement generic .handle_interrupt() callback 2020-11-05 16:32:27 -08:00
broadcom.c net: phy: broadcom: Utilize appropriate suspend for BCM54810/11 2021-09-21 10:58:35 +01:00
cicada.c net: phy: cicada: remove the use of .ack_interrupt() 2020-11-05 16:32:39 -08:00
cortina.c
davicom.c net: phy: fix space alignment issues 2021-06-16 12:34:07 -07:00
dp83tc811.c net: phy: ti: take into account all possible interrupt sources 2021-03-01 11:46:55 -08:00
dp83640_reg.h ptp: dp83640: don't define PAGE0 2021-09-14 20:03:24 -07:00
dp83640.c net: phy: remove unnecessary line continuation 2021-06-16 12:34:07 -07:00
dp83822.c net: phy: Fix data type in DP83822 dp8382x_disable_wol() 2021-07-18 09:46:34 -07:00
dp83848.c net: phy: ti: remove the use of .ack_interrupt() 2020-11-25 11:18:38 -08:00
dp83867.c net: phy: constify netdev->dev_addr references 2021-10-24 13:59:44 +01:00
dp83869.c net: phy: constify netdev->dev_addr references 2021-10-24 13:59:44 +01:00
et1011c.c net: phy: remove unnecessary line continuation 2021-06-16 12:34:07 -07:00
fixed_phy.c net: phy: fix formatting issues with braces 2021-06-16 12:34:07 -07:00
icplus.c net: phy: icplus: call phy_restore_page() when phy_select_page() fails 2021-02-22 18:47:48 -08:00
intel-xway.c net: phy: intel-xway: Add RGMII internal delay configuration 2021-07-20 07:23:16 -07:00
Kconfig ethernet: fix PTP_1588_CLOCK dependencies 2021-08-13 17:49:05 -07:00
linkmode.c
lxt.c net: phy: correct format of block comments 2021-06-16 12:34:07 -07:00
Makefile net: phy: add Maxlinear GPY115/21x/24x driver 2021-07-20 06:55:20 -07:00
marvell10g.c net: phy: marvell10g: add downshift tunable support 2021-09-30 13:22:46 +01:00
marvell-88x2222.c net: phy: marvell-88x2222: enable autoneg by default 2021-04-27 14:05:41 -07:00
marvell.c net: phy: marvell: Add WAKE_PHY support to WOL event 2021-08-16 11:05:52 +01:00
mdio_bus.c net: mdio: ensure the type of mdio devices match mdio drivers 2021-10-08 15:20:45 +01:00
mdio_device.c net: mdio: introduce a shutdown method to mdio device drivers 2021-09-19 12:08:37 +01:00
mdio_devres.c
mdio-boardinfo.c net: phy: Correct function name mdiobus_register_board_info() in comment 2021-03-29 13:42:44 -07:00
mdio-boardinfo.h
mediatek-ge.c net: phy: mediatek: add the missing suspend/resume callbacks 2021-08-24 16:52:43 -07:00
meson-gxl.c net: phy: meson-gxl: remove the use of .ack_callback() 2020-11-25 11:18:37 -08:00
micrel.c phy: micrel: ksz8041nl: do not use power down mode 2021-10-20 14:38:12 +01:00
microchip_t1.c net: phy: microchip_t1: add lan87xx_config_rgmii_delay for lan87xx phy 2021-11-02 17:16:27 -07:00
microchip.c net: phy: microchip: remove the use of .ack_interrupt() 2020-11-17 11:36:59 -08:00
mii_timestamper.c net: mii_timestamper: check NULL in unregister_mii_timestamper() 2021-06-11 13:08:52 -07:00
motorcomm.c net: phy: abort loading yt8511 driver in unsupported modes 2021-05-30 14:24:38 -07:00
mxl-gpy.c net: phy: enhance GPY115 loopback disable function 2021-09-27 13:49:38 +01:00
national.c net: phy: correct format of block comments 2021-06-16 12:34:07 -07:00
nxp-c45-tja11xx.c net: phy: nxp-c45-tja11xx: enable MDIO write access to the master/slave registers 2021-06-14 13:12:59 -07:00
nxp-tja11xx.c net: phy: nxp-tja11xx: log critical health state 2021-08-12 10:51:45 +01:00
phy_device.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-10-14 16:50:14 -07:00
phy_led_triggers.c net: phy: leds: Deduplicate link LED trigger registration 2020-10-30 10:43:37 -07:00
phy-c45.c net: phy: fixed warning: Function parameter not described 2021-10-26 14:09:50 -07:00
phy-core.c net: phy: correct format of block comments 2021-06-16 12:34:07 -07:00
phy.c net: phy: fix duplex out of sync problem while changing settings 2021-11-04 16:46:29 -07:00
phylink.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-11-01 20:05:14 -07:00
qsemi.c net: phy: change format of some declarations 2021-06-16 12:34:07 -07:00
realtek.c net: phy: realtek: add support for RTL8365MB-VC internal PHYs 2021-10-18 14:02:56 +01:00
rockchip.c net: phy: Demote non-compliant kernel-doc headers 2021-05-17 14:12:39 -07:00
sfp-bus.c net: convert users of bitmap_foo() to linkmode_foo() 2021-10-24 13:58:52 +01:00
sfp.c net: sfp: Fix typo in state machine debug string 2021-10-05 13:08:13 +01:00
sfp.h phy: sfp: add netlink SFP support to generic SFP code 2021-04-11 16:34:56 -07:00
smsc.c net: phy: lan87xx: fix access to wrong register of LAN87xx 2021-03-30 13:13:08 -07:00
spi_ks8995.c net: phy: fix space alignment issues 2021-06-16 12:34:07 -07:00
ste10Xp.c net: phy: fix space alignment issues 2021-06-16 12:34:07 -07:00
swphy.c
swphy.h
teranetics.c
uPD60620.c
vitesse.c net: phy: correct format of block comments 2021-06-16 12:34:07 -07:00
xilinx_gmii2rgmii.c net: phy: gmii2rgmii: Support PHY loopback 2021-08-20 14:31:46 +01:00