diff mbox series

[v3,net] net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8081

Message ID 20210224205536.9349-1-christian.melki@t2data.com (mailing list archive)
State Accepted
Delegated to: Netdev Maintainers
Headers show
Series [v3,net] net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8081 | expand

Checks

Context Check Description
netdev/cover_letter success Link
netdev/fixes_present success Link
netdev/patch_count success Link
netdev/tree_selection success Clearly marked for net
netdev/subject_prefix success Link
netdev/cc_maintainers fail 2 blamed authors not CCed: f.fainelli@gmail.com davem@davemloft.net; 3 maintainers not CCed: linux@armlinux.org.uk f.fainelli@gmail.com davem@davemloft.net
netdev/source_inline success Was 0 now: 0
netdev/verify_signedoff success Link
netdev/module_param success Was 0 now: 0
netdev/build_32bit success Errors and warnings before: 0 this patch: 0
netdev/kdoc success Errors and warnings before: 0 this patch: 0
netdev/verify_fixes success Link
netdev/checkpatch success total: 0 errors, 0 warnings, 0 checks, 7 lines checked
netdev/build_allmodconfig_warn success Errors and warnings before: 0 this patch: 0
netdev/header_inline success Link
netdev/stable success Stable not CCed

Commit Message

Christian Melki Feb. 24, 2021, 8:55 p.m. UTC
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 this 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 <christian.melki@t2data.com>
---
 drivers/net/phy/micrel.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Andrew Lunn Feb. 25, 2021, 1:59 a.m. UTC | #1
On Wed, Feb 24, 2021 at 09:55:36PM +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 this 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 <christian.melki@t2data.com>

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

    Andrew
Jakub Kicinski Feb. 25, 2021, 5:52 p.m. UTC | #2
On Thu, 25 Feb 2021 02:59:51 +0100 Andrew Lunn wrote:
> On Wed, Feb 24, 2021 at 09:55:36PM +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 this 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 <christian.melki@t2data.com>  
> 
> Reviewed-by: Andrew Lunn <andrew@lunn.ch>

Applied, thanks!
diff mbox series

Patch

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,