net: phy: dp83tg720: implement soft reset with asymmetric delay
authorDavid Jander <david@protonic.nl>
Thu, 12 Jun 2025 10:41:55 +0000 (12:41 +0200)
committerJakub Kicinski <kuba@kernel.org>
Sat, 14 Jun 2025 01:09:47 +0000 (18:09 -0700)
commit5f6ec55777d5a1253615851fa50fd405a0db8eb9
treea496839ba369b3b855b401fe39fa036fe2a3431f
parent0051ea4aca6714965ea1e5ce78bde329eb37b138
net: phy: dp83tg720: implement soft reset with asymmetric delay

Add a .soft_reset callback for the DP83TG720 PHY that issues a hardware
reset followed by an asymmetric post-reset delay. The delay differs
based on the PHY's master/slave role to avoid synchronized reset
deadlocks, which are known to occur when both link partners use
identical reset intervals.

The delay includes:
- a fixed 1ms wait to satisfy MDC access timing per datasheet, and
- an empirically chosen extra delay (97ms for master, 149ms for slave).

Co-developed-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: David Jander <david@protonic.nl>
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/20250612104157.2262058-2-o.rempel@pengutronix.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/phy/dp83tg720.c