mirror-linux/drivers/net/phy
Robert Marko e027c218c4 net: phy: micrel: fix LAN8814 QSGMII soft reset
LAN8814 QSGMII soft reset was moved into the probe function to avoid
triggering it for each of 4 PHY-s in the package.

However, that broke QSGMII link between the MAC and PHY on most LAN8814
PHY-s, specificaly for us on the Microchip LAN969x switch.
Reading the QSGMII status registers it was visible that lanes were only
partially synced.

It looks like the reset timing is crucial, so lets move the reset back
into the .config_init function but guard it with phy_package_init_once()
to avoid it being triggered on each of 4 PHY-s in the package.
Change the probe function to use phy_package_probe_once() for coma and PtP
setup.

Fixes: 96a9178a29 ("net: phy: micrel: lan8814 fix reset of the QSGMII interface")
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Link: https://patch.msgid.link/20260428134138.1741253-1-robert.marko@sartura.hr
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2026-04-30 16:49:23 -07:00
..
aquantia net: phy: aquantia: check for NVMEM deferral 2025-11-28 19:40:42 -08:00
mediatek net: phy: mediatek: enable interrupts on AN7581 2026-01-05 16:16:53 -08:00
mscc Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
qcom net: phy: qcom: at803x: Use the correct bit to disable extended next page 2026-04-13 14:36:22 -07:00
realtek net: phy: realtek: use LEDCR page number define on RTL8211F 2026-04-13 16:38:25 -07:00
Kconfig net: phy: remove Kconfig symbol MDIO_BUS 2026-03-18 18:27:12 -07:00
Makefile net: phy: remove Kconfig symbol MDIO_BUS 2026-03-18 18:27:12 -07:00
adin.c net: phy: adin: enable configuration of the LP Termination Register 2026-01-15 19:36:04 -08:00
adin1100.c net: phy: adin1100: Simplify register value passing 2025-11-20 18:03:59 -08:00
air_en8811h.c net: phy: air_en8811h: Add clk provider for an8811hb 2026-01-29 19:15:46 -08:00
amd.c
as21xxx.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
ax88796b.c
ax88796b_rust.rs drivers: net: replace `kernel::c_str!` with C-Strings 2026-01-05 16:32:39 -08:00
bcm-cygnus.c
bcm-phy-lib.c
bcm-phy-lib.h
bcm-phy-ptp.c net: phy: broadcom: add HW timestamp configuration reporting 2025-11-26 16:56:34 -08:00
bcm7xxx.c
bcm63xx.c
bcm87xx.c
bcm54140.c
bcm84881.c net: phy: bcm84881: add LED framework support for BCM84891/BCM84892 2026-04-02 17:59:43 -07:00
broadcom.c net: phy: broadcom: implement .disable_autonomous_eee for BCM54xx 2026-04-12 11:33:23 -07:00
cicada.c
cortina.c
davicom.c
dp83tc811.c
dp83td510.c net: phy: dp83td510: add MSE interface support for 10BASE-T1L 2025-11-03 18:32:27 -08:00
dp83tg720.c
dp83640.c Convert remaining multi-line kmalloc_obj/flex GFP_KERNEL uses 2026-02-22 08:26:33 -08:00
dp83640_reg.h
dp83822.c net: phy: dp83822: Add support for phy_port representation 2026-01-13 18:52:34 -08:00
dp83848.c
dp83867.c net: phy: dp83867: Always program R/SGMII enable bits 2026-02-02 17:19:53 -08:00
dp83869.c net: phy: dp83869: fix setting CLK_O_SEL field. 2026-04-28 15:51:55 +02:00
et1011c.c
fixed_phy.c net: phy: fixed_phy: replace IDA with a bitmap 2026-01-13 18:58:49 -08:00
icplus.c
intel-xway.c net: phy: intel-xway: fix OF node refcount leakage 2026-01-20 15:57:21 -08:00
linkmode.c
lxt.c
marvell-88q2xxx.c net: phy: marvell-88q2xxx: Fix clamped value in mv88q2xxx_hwmon_write 2025-12-04 17:49:31 -08:00
marvell-88x2222.c net: phy: marvell-88x2222: Support SFP through phy_port interface 2026-01-13 18:52:35 -08:00
marvell.c net: phy: marvell: Support SFP through phy_port interface 2026-01-13 18:52:35 -08:00
marvell10g.c net: phy: marvell10g: Support SFP through phy_port 2026-01-13 18:52:35 -08:00
mdio-open-alliance.h net: phy: phy-c45: add SQI and SQI+ support for OATC14 10Base-T1S PHYs 2025-12-01 15:08:24 -08:00
mdio_bus.c net: phy: move remaining provider code to mdio_bus_provider.c 2026-03-14 12:23:02 -07:00
mdio_bus_provider.c Networking changes for 7.1. 2026-04-14 18:36:10 -07:00
mdio_device.c net: phy: make mdio_device.c part of libphy 2026-03-14 12:23:02 -07:00
mdio_devres.c
meson-gxl.c
micrel.c net: phy: micrel: fix LAN8814 QSGMII soft reset 2026-04-30 16:49:23 -07:00
microchip.c net: phy: microchip: enable downshift by default on LAN88xx 2026-04-02 18:03:03 -07:00
microchip_rds_ptp.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
microchip_rds_ptp.h
microchip_t1.c
microchip_t1s.c net: phy: microchip_t1s: add SQI support for LAN867x Rev.D0 PHYs 2025-12-01 15:08:24 -08:00
mii_timestamper.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
motorcomm.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2026-01-15 18:02:48 -08:00
mxl-86110.c net: phy: mxl-86110: Add power management and soft reset support 2026-01-04 09:53:33 -08:00
mxl-gpy.c net: phy: mxl-gpy: add PHY-level statistics via ethtool 2026-03-17 16:07:40 -07:00
national.c
ncn26000.c
nxp-c45-tja11xx-macsec.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
nxp-c45-tja11xx.c net: phy: nxp-c45-tja11xx: add HW timestamp configuration reporting 2025-11-26 16:56:34 -08:00
nxp-c45-tja11xx.h
nxp-cbtx.c
nxp-tja11xx.c
open_alliance_helpers.c
open_alliance_helpers.h
phy-c45.c net: phy: phy-c45: add SQI and SQI+ support for OATC14 10Base-T1S PHYs 2025-12-01 15:08:24 -08:00
phy-caps.h net: ethtool: Add support for 80Gbps speed 2026-01-19 12:09:58 -08:00
phy-core.c net: ethtool: Add support for 80Gbps speed 2026-01-19 12:09:58 -08:00
phy.c net: phy: add a PHY write barrier when disabling interrupts 2026-04-12 14:19:19 -07:00
phy_caps.c net: ethtool: Add support for 80Gbps speed 2026-01-19 12:09:58 -08:00
phy_device.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2026-04-14 12:04:00 -07:00
phy_led_triggers.c Convert remaining multi-line kmalloc_obj/flex GFP_KERNEL uses 2026-02-22 08:26:33 -08:00
phy_link_topology.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
phy_package.c net: phy: update outdated comment for removed phy_package_read/write() 2026-03-24 13:21:28 +01:00
phy_port.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
phylib-internal.h net: phy: move remaining provider code to mdio_bus_provider.c 2026-03-14 12:23:02 -07:00
phylib.h net: phy: move mmd_phy_read and mmd_phy_write to phylib.h 2026-01-08 13:18:26 +01:00
phylink.c net: phylink: use phylink_expects_phy() in phylink_fwnode_phy_connect() 2026-03-26 18:24:56 -07:00
qsemi.c
qt2025.rs drivers: net: replace `kernel::c_str!` with C-Strings 2026-01-05 16:32:39 -08:00
rockchip.c
sfp-bus.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
sfp.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2026-04-09 13:20:59 -07:00
sfp.h
smsc.c
ste10Xp.c
stubs.c
swphy.c
swphy.h
teranetics.c
uPD60620.c
vitesse.c net: phy: vitesse: add inband caps and configuration 2026-03-12 17:55:33 -07:00
xilinx_gmii2rgmii.c