Message ID | 20221021174552.6828-1-hayashi.kunihiko@socionext.com (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] net: ethernet: ave: Remove duplicate suspend/resume calls for phy | expand |
On 21.10.2022 19:45, Kunihiko Hayashi wrote: > Since AVE has its own suspend/resume functions, there is no need to call > mdio_bus suspend/resume functions. Set phydev->mac_managed_pm to true > to avoid the calls. > The commit description doesn't make clear (any longer) what the issue is that you're fixing. You should mention the WARN_ON() dump here like in your first attempt. > In addition, ave_open() executes __phy_resume() via phy_start() in > ave_resume(), so no need to call phy_resume() explicitly. Remove it. > This sounds like an improvement, being independent of the actual fix. The preferred approach would be: - submit the fix to net - submit the improvement in a separate patch to net-next > Suggested-by: Heiner Kallweit <hkallweit1@gmail.com> > Fixes: 0ba78b4a4989 ("net: ethernet: ave: Add suspend/resume support") > Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> > --- > drivers/net/ethernet/socionext/sni_ave.c | 8 ++------ > 1 file changed, 2 insertions(+), 6 deletions(-) > > diff --git a/drivers/net/ethernet/socionext/sni_ave.c b/drivers/net/ethernet/socionext/sni_ave.c > index 14cdd2e8373c..b4e0c57af7c3 100644 > --- a/drivers/net/ethernet/socionext/sni_ave.c > +++ b/drivers/net/ethernet/socionext/sni_ave.c > @@ -1271,6 +1271,8 @@ static int ave_init(struct net_device *ndev) > > phy_support_asym_pause(phydev); > > + phydev->mac_managed_pm = true; > + > phy_attached_info(phydev); > > return 0; > @@ -1806,12 +1808,6 @@ static int ave_resume(struct device *dev) > wol.wolopts = priv->wolopts; > __ave_ethtool_set_wol(ndev, &wol); > > - if (ndev->phydev) { > - ret = phy_resume(ndev->phydev); > - if (ret) > - return ret; > - } > - > if (netif_running(ndev)) { > ret = ave_open(ndev); > netif_device_attach(ndev);
Hi, On 2022/10/22 5:55, Heiner Kallweit wrote: > On 21.10.2022 19:45, Kunihiko Hayashi wrote: >> Since AVE has its own suspend/resume functions, there is no need to call >> mdio_bus suspend/resume functions. Set phydev->mac_managed_pm to true >> to avoid the calls. >> > The commit description doesn't make clear (any longer) what the issue > is that you're fixing. You should mention the WARN_ON() dump here > like in your first attempt. Indeed, I forgot to mention the WARN_ON() dump issue. >> In addition, ave_open() executes __phy_resume() via phy_start() in >> ave_resume(), so no need to call phy_resume() explicitly. Remove it. >> > This sounds like an improvement, being independent of the actual fix. > The preferred approach would be: > - submit the fix to net > - submit the improvement in a separate patch to net-next Ah, I see. The one is for fixing WARN_ON() dump, and the other isn't affected by the behavior, but it should be duplicate removal. I'll separate it into two patches. Thank you, --- Best Regards Kunihiko Hayashi
diff --git a/drivers/net/ethernet/socionext/sni_ave.c b/drivers/net/ethernet/socionext/sni_ave.c index 14cdd2e8373c..b4e0c57af7c3 100644 --- a/drivers/net/ethernet/socionext/sni_ave.c +++ b/drivers/net/ethernet/socionext/sni_ave.c @@ -1271,6 +1271,8 @@ static int ave_init(struct net_device *ndev) phy_support_asym_pause(phydev); + phydev->mac_managed_pm = true; + phy_attached_info(phydev); return 0; @@ -1806,12 +1808,6 @@ static int ave_resume(struct device *dev) wol.wolopts = priv->wolopts; __ave_ethtool_set_wol(ndev, &wol); - if (ndev->phydev) { - ret = phy_resume(ndev->phydev); - if (ret) - return ret; - } - if (netif_running(ndev)) { ret = ave_open(ndev); netif_device_attach(ndev);
Since AVE has its own suspend/resume functions, there is no need to call mdio_bus suspend/resume functions. Set phydev->mac_managed_pm to true to avoid the calls. In addition, ave_open() executes __phy_resume() via phy_start() in ave_resume(), so no need to call phy_resume() explicitly. Remove it. Suggested-by: Heiner Kallweit <hkallweit1@gmail.com> Fixes: 0ba78b4a4989 ("net: ethernet: ave: Add suspend/resume support") Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> --- drivers/net/ethernet/socionext/sni_ave.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-)