linux-loongson/drivers/net/phy
Horatiu Vultur bc1a59cff9 phy: mscc: Fix timestamping for vsc8584
There was a problem when we received frames and the frames were
timestamped. The driver is configured to store the nanosecond part of
the timestmap in the ptp reserved bits and it would take the second part
by reading the LTC. The problem is that when reading the LTC we are in
atomic context and to read the second part will go over mdio bus which
might sleep, so we get an error.
The fix consists in actually put all the frames in a queue and start the
aux work and in that work to read the LTC and then calculate the full
received time.

Fixes: 7d272e63e0 ("net: phy: mscc: timestamping and PHC support")
Signed-off-by: Horatiu Vultur <horatiu.vultur@microchip.com>
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Link: https://patch.msgid.link/20250818081029.1300780-1-horatiu.vultur@microchip.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-08-19 17:52:02 -07:00
..
aquantia net: phy: aquantia: fix commenting format 2025-04-29 15:13:21 -07:00
mediatek net: phy: add Kconfig symbol PHY_PACKAGE 2025-06-16 14:59:30 -07:00
mscc phy: mscc: Fix timestamping for vsc8584 2025-08-19 17:52:02 -07:00
qcom treewide: rename GPIO set callbacks back to their original names 2025-08-07 10:07:06 +02:00
realtek net: phy: realtek: add error handling to rtl8211f_get_wol 2025-06-25 16:54:31 -07:00
adin1100.c net: phy: Allow loopback speed selection for PHY drivers 2025-03-20 08:45:08 +01:00
adin.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
air_en8811h.c net: phy: air_en8811h: Introduce resume/suspend and clk_restore_context to ensure correct CKO settings after network interface reinitialization. 2025-07-01 19:35:43 -07:00
amd.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
as21xxx.c net: phy: Add support for Aeonsemi AS21xxx PHYs 2025-05-21 15:56:10 -07:00
ax88796b_rust.rs rust: module: introduce authors key 2025-03-10 15:12:17 +01:00
ax88796b.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
bcm7xxx.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
bcm63xx.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
bcm87xx.c net: phy: bcm87xx: simplify .match_phy_device OP 2025-05-21 15:56:09 -07:00
bcm54140.c net: phy: move PHY package related code from phy.h to phy_package.c 2025-03-05 19:13:53 -08:00
bcm84881.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
bcm-cygnus.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
bcm-phy-lib.c net: phy: broadcom: use genphy_c45_an_config_eee_aneg in bcm_config_lre_aneg 2024-11-07 20:31:06 -08:00
bcm-phy-lib.h
bcm-phy-ptp.c broadcom: fix supported flag check in periodic output function 2025-03-20 08:50:03 +01:00
broadcom.c net: phy: bcm54811: PHY initialization 2025-07-09 19:32:31 -07:00
cicada.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
cortina.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
davicom.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
dp83tc811.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
dp83td510.c net: phy: dp83td510: introduce LED framework support 2025-02-10 17:49:19 -08:00
dp83tg720.c net: phy: dp83tg720: switch to adaptive polling and remove random delays 2025-06-13 18:09:47 -07:00
dp83640_reg.h
dp83640.c net: ptp: introduce .supported_perout_flags to ptp_clock_info 2025-04-15 20:20:58 -07:00
dp83822.c net: phy: simplify phy_get_internal_delay() 2025-06-12 18:23:54 -07:00
dp83848.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
dp83867.c net: phy: dp83867: use 2ns delay if not specified in DTB 2025-05-12 18:43:35 -07:00
dp83869.c net: phy: simplify phy_get_internal_delay() 2025-06-12 18:23:54 -07:00
et1011c.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
fixed_phy.c net: phy: fixed_phy: constify status argument where possible 2025-05-20 18:17:43 -07:00
icplus.c net: phy: pass PHY driver to .match_phy_device OP 2025-05-21 15:56:09 -07:00
intel-xway.c net: phy: simplify phy_get_internal_delay() 2025-06-12 18:23:54 -07:00
Kconfig net: phy: add Kconfig symbol PHY_PACKAGE 2025-06-16 14:59:30 -07:00
linkmode.c
lxt.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
Makefile net: phy: add Kconfig symbol PHY_PACKAGE 2025-06-16 14:59:30 -07:00
marvell10g.c net: phy: pass PHY driver to .match_phy_device OP 2025-05-21 15:56:09 -07:00
marvell-88q2xxx.c net: phy: marvell-88q2xxx: Enable temperature measurement in probe again 2025-05-15 12:32:09 +02:00
marvell-88x2222.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
marvell.c net: phy: marvell: Align set_loopback() implementation 2025-03-20 08:45:08 +01:00
mdio_bus_provider.c net: mdiobus: release reset_gpio in mdiobus_unregister_device() 2025-08-12 12:32:58 +02:00
mdio_bus.c net: mdiobus: release reset_gpio in mdiobus_unregister_device() 2025-08-12 12:32:58 +02:00
mdio_device.c net: phy: assign default match function for non-PHY MDIO devices 2025-06-12 18:12:37 -07:00
mdio_devres.c
mdio-boardinfo.c net: phy: directly copy struct mdio_board_info in mdiobus_register_board_info 2025-06-13 16:37:23 -07:00
mdio-boardinfo.h net: phy: improve mdio-boardinfo.h 2025-06-13 16:37:23 -07:00
mdio-open-alliance.h
meson-gxl.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
micrel.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-07-26 11:49:45 -07:00
microchip_rds_ptp.c net: ptp: introduce .supported_perout_flags to ptp_clock_info 2025-04-15 20:20:58 -07:00
microchip_rds_ptp.h net: phy: microchip_rds_ptp: Header file library changes for PEROUT 2025-01-16 17:27:56 -08:00
microchip_t1.c net: phy: microchip_t1: Enable pin out specific to lan887x phy for PEROUT signal 2025-01-16 17:27:56 -08:00
microchip_t1s.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
microchip.c net: phy: microchip: limit 100M workaround to link-down events on LAN88xx 2025-07-10 18:08:16 -07:00
mii_timestamper.c
motorcomm.c
mxl-86110.c net: phy: add driver for MaxLinear MxL86110 PHY 2025-05-27 09:36:17 +02:00
mxl-gpy.c net: phy: mxl-gpy: remove call to devm_hwmon_sanitize_name 2025-03-21 18:05:30 +01:00
national.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
ncn26000.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
nxp-c45-tja11xx-macsec.c
nxp-c45-tja11xx.c net: phy: nxp-c45-tja11xx: fix the PHY ID mismatch issue when using C45 2025-08-12 12:01:07 +02:00
nxp-c45-tja11xx.h
nxp-cbtx.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
nxp-tja11xx.c net: phy: pass PHY driver to .match_phy_device OP 2025-05-21 15:56:09 -07:00
open_alliance_helpers.c
open_alliance_helpers.h
phy_caps.c net: phy: MII-Lite PHY interface mode 2025-07-09 19:32:30 -07:00
phy_device.c net: phy: Don't register LEDs for genphy 2025-07-14 17:54:06 -07:00
phy_led_triggers.c net: phy: leds: fix memory leak 2025-04-22 18:25:18 -07:00
phy_link_topology.c phy: fix xa_alloc_cyclic() error handling 2025-03-19 09:57:37 +00:00
phy_package.c net: phy: make phy_package a separate module 2025-06-16 14:59:30 -07:00
phy-c45.c net: phy: move definition of genphy_c45_driver to phy_device.c 2025-06-12 18:23:08 -07:00
phy-caps.h net: phylink: Use phy_caps to get an interface's capabilities and modes 2025-03-18 09:03:12 +01:00
phy-core.c net: phy: MII-Lite PHY interface mode 2025-07-09 19:32:30 -07:00
phy.c net: phy: Support speed selection for PHY loopback 2025-03-20 08:45:08 +01:00
phylib-internal.h net: phy: move __phy_package_[read|write]_mmd to phy_package.c 2025-06-16 14:59:29 -07:00
phylib.h net: phy: move PHY package MMD access function declarations from phy.h to phylib.h 2025-03-17 19:07:54 +01:00
phylink.c net: phy: MII-Lite PHY interface mode 2025-07-09 19:32:30 -07:00
qsemi.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
qt2025.rs Rust changes for v6.15 2025-03-30 17:03:26 -07:00
rockchip.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
sfp-bus.c
sfp.c net: sfp: add quirk for Potron SFP+ XGSPON ONU Stick 2025-06-19 15:42:33 -07:00
sfp.h
smsc.c net: phy: smsc: add proper reset flags for LAN8710A 2025-07-30 18:14:11 -07:00
spi_ks8995.c sysfs: treewide: switch back to bin_attribute::read()/write() 2025-06-17 10:44:13 +02:00
ste10Xp.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
stubs.c
swphy.c
swphy.h
teranetics.c net: phy: pass PHY driver to .match_phy_device OP 2025-05-21 15:56:09 -07:00
uPD60620.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
vitesse.c net: phy: Constify struct mdio_device_id 2025-01-14 15:01:32 -08:00
xilinx_gmii2rgmii.c net: phy: Allow loopback speed selection for PHY drivers 2025-03-20 08:45:08 +01:00