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

Subsystems: ethernet phy library, networking drivers, the rest

STALE2028d

2 messages, 2 authors, 2021-02-23 · open the first message on its own page

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

From: Christian Melki <hidden>
Date: 2021-02-23 08:31:11

Following a similar reinstate for the KSZ9031.

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

Bluntly removing that default may expose a lot of situations where 
various PHYs/board implementations won't recover on various changes.
Like with tgus implementation during a 4.9.x to 5.4.x LTS transition.
I think it's a good thing to remove unwanted soft resets but wonder if 
it did open a can of worms?

Atleast this fixes one iMX6 FEC/RMII/8081 combo.

Fixes: 6e2d85ec0559 ("net: phy: Stop with excessive soft reset")
Signed-off-by: Christian Melki <redacted>
---
diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
index 7ec6f70d6a82..a14a00328fa3 100644
--- a/drivers/net/phy/micrel.c
+++ b/drivers/net/phy/micrel.c
@@ -1303,6 +1303,7 @@ static struct phy_driver ksphy_driver[] = {
  	.driver_data	= &ksz8081_type,
  	.probe		= kszphy_probe,
  	.config_init	= ksz8081_config_init,
+	.soft_reset	= genphy_soft_reset,
  	.config_intr	= kszphy_config_intr,
  	.handle_interrupt = kszphy_handle_interrupt,
  	.get_sset_count = kszphy_get_sset_count,
--

Re: [PATCH v2 net] net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8081

From: Jakub Kicinski <kuba@kernel.org>
Date: 2021-02-23 19:25:43

On Tue, 23 Feb 2021 09:30:30 +0100 Christian Melki wrote:
Following a similar reinstate for the KSZ9031.

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

Bluntly removing that default may expose a lot of situations where 
various PHYs/board implementations won't recover on various changes.
Like with tgus implementation during a 4.9.x to 5.4.x LTS transition.
I think it's a good thing to remove unwanted soft resets but wonder if 
it did open a can of worms?

Atleast this fixes one iMX6 FEC/RMII/8081 combo.

Fixes: 6e2d85ec0559 ("net: phy: Stop with excessive soft reset")
Signed-off-by: Christian Melki <redacted>
Still does not apply to net/master:

Applying: net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8081
error: patch failed: drivers/net/phy/micrel.c:1303
error: drivers/net/phy/micrel.c: patch does not apply
Patch failed at 0001 net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8081
hint: Use 'git am --show-current-patch=diff' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help