[PATCH] net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8061

Mathieu Othacehe posted 1 patch 1 year, 8 months ago
drivers/net/phy/micrel.c | 1 +
1 file changed, 1 insertion(+)
[PATCH] net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8061
Posted by Mathieu Othacehe 1 year, 8 months ago
Following a similar reinstate for the KSZ8081 and KSZ9031.

Older kernels would use the genphy_soft_reset if the PHY did not implement
a .soft_reset.

The KSZ8061 errata described here:
https://ww1.microchip.com/downloads/en/DeviceDoc/KSZ8061-Errata-DS80000688B.pdf
and worked around with 232ba3a51c ("net: phy: Micrel KSZ8061: link failure after cable connect")
is back again without this soft reset.

Fixes: 6e2d85ec0559 ("net: phy: Stop with excessive soft reset")
Tested-by: Karim Ben Houcine <karim.benhoucine@landisgyr.com>
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
---
 drivers/net/phy/micrel.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
index 13e30ea7eec5..1d769322b059 100644
--- a/drivers/net/phy/micrel.c
+++ b/drivers/net/phy/micrel.c
@@ -5327,6 +5327,7 @@ static struct phy_driver ksphy_driver[] = {
 	/* PHY_BASIC_FEATURES */
 	.probe		= kszphy_probe,
 	.config_init	= ksz8061_config_init,
+	.soft_reset	= genphy_soft_reset,
 	.config_intr	= kszphy_config_intr,
 	.handle_interrupt = kszphy_handle_interrupt,
 	.suspend	= kszphy_suspend,
-- 
2.41.0
Re: [PATCH] net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8061
Posted by Florian Fainelli 1 year, 8 months ago

On 5/20/2024 11:54 PM, Mathieu Othacehe wrote:
> Following a similar reinstate for the KSZ8081 and KSZ9031.
> 
> Older kernels would use the genphy_soft_reset if the PHY did not implement
> a .soft_reset.
> 
> The KSZ8061 errata described here:
> https://ww1.microchip.com/downloads/en/DeviceDoc/KSZ8061-Errata-DS80000688B.pdf
> and worked around with 232ba3a51c ("net: phy: Micrel KSZ8061: link failure after cable connect")
> is back again without this soft reset.
> 
> Fixes: 6e2d85ec0559 ("net: phy: Stop with excessive soft reset")
> Tested-by: Karim Ben Houcine <karim.benhoucine@landisgyr.com>
> Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>

Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
-- 
Florian
Re: [PATCH] net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8061
Posted by Andrew Lunn 1 year, 8 months ago
On Tue, May 21, 2024 at 08:54:06AM +0200, Mathieu Othacehe wrote:
> Following a similar reinstate for the KSZ8081 and KSZ9031.
> 
> Older kernels would use the genphy_soft_reset if the PHY did not implement
> a .soft_reset.
> 
> The KSZ8061 errata described here:
> https://ww1.microchip.com/downloads/en/DeviceDoc/KSZ8061-Errata-DS80000688B.pdf
> and worked around with 232ba3a51c ("net: phy: Micrel KSZ8061: link failure after cable connect")
> is back again without this soft reset.
> 
> Fixes: 6e2d85ec0559 ("net: phy: Stop with excessive soft reset")
> Tested-by: Karim Ben Houcine <karim.benhoucine@landisgyr.com>
> Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew
Re: [PATCH] net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8061
Posted by Paolo Abeni 1 year, 8 months ago
On Tue, 2024-05-21 at 08:54 +0200, Mathieu Othacehe wrote:
> Following a similar reinstate for the KSZ8081 and KSZ9031.
> 
> Older kernels would use the genphy_soft_reset if the PHY did not implement
> a .soft_reset.
> 
> The KSZ8061 errata described here:
> https://ww1.microchip.com/downloads/en/DeviceDoc/KSZ8061-Errata-DS80000688B.pdf
> and worked around with 232ba3a51c ("net: phy: Micrel KSZ8061: link failure after cable connect")
> is back again without this soft reset.
> 
> Fixes: 6e2d85ec0559 ("net: phy: Stop with excessive soft reset")
> Tested-by: Karim Ben Houcine <karim.benhoucine@landisgyr.com>
> Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>

LGTM, but waiting a little longer for anyone from phy crew to ack it.

Thanks,

Paolo