2022-09-19 15:01:20

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH] net: sh_eth: Fix PHY state warning splat during system resume

Since commit 744d23c71af39c7d ("net: phy: Warn about incorrect
mdio_bus_phy_resume() state"), a warning splat is printed during system
resume with Wake-on-LAN disabled:

WARNING: CPU: 0 PID: 626 at drivers/net/phy/phy_device.c:323 mdio_bus_phy_resume+0xbc/0xe4

As the Renesas SuperH Ethernet driver already calls phy_{stop,start}()
in its suspend/resume callbacks, it is sufficient to just mark the MAC
responsible for managing the power state of the PHY.

Fixes: fba863b816049b03 ("net: phy: make PHY PM ops a no-op if MAC driver manages PHY PM")
Signed-off-by: Geert Uytterhoeven <[email protected]>
---
drivers/net/ethernet/renesas/sh_eth.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c
index 67ade78fb7671c4a..7fd8828d3a846169 100644
--- a/drivers/net/ethernet/renesas/sh_eth.c
+++ b/drivers/net/ethernet/renesas/sh_eth.c
@@ -2029,6 +2029,8 @@ static int sh_eth_phy_init(struct net_device *ndev)
if (mdp->cd->register_type != SH_ETH_REG_GIGABIT)
phy_set_max_speed(phydev, SPEED_100);

+ /* Indicate that the MAC is responsible for managing PHY PM */
+ phydev->mac_managed_pm = true;
phy_attached_info(phydev);

return 0;
--
2.25.1


2022-09-19 18:11:45

by Florian Fainelli

[permalink] [raw]
Subject: Re: [PATCH] net: sh_eth: Fix PHY state warning splat during system resume

On 9/19/22 07:48, Geert Uytterhoeven wrote:
> Since commit 744d23c71af39c7d ("net: phy: Warn about incorrect
> mdio_bus_phy_resume() state"), a warning splat is printed during system
> resume with Wake-on-LAN disabled:
>
> WARNING: CPU: 0 PID: 626 at drivers/net/phy/phy_device.c:323 mdio_bus_phy_resume+0xbc/0xe4
>
> As the Renesas SuperH Ethernet driver already calls phy_{stop,start}()
> in its suspend/resume callbacks, it is sufficient to just mark the MAC
> responsible for managing the power state of the PHY.
>
> Fixes: fba863b816049b03 ("net: phy: make PHY PM ops a no-op if MAC driver manages PHY PM")
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Reviewed-by: Florian Fainelli <[email protected]>
--
Florian

2022-09-19 19:09:16

by Sergey Shtylyov

[permalink] [raw]
Subject: Re: [PATCH] net: sh_eth: Fix PHY state warning splat during system resume

On 9/19/22 5:48 PM, Geert Uytterhoeven wrote:

> Since commit 744d23c71af39c7d ("net: phy: Warn about incorrect
> mdio_bus_phy_resume() state"), a warning splat is printed during system
> resume with Wake-on-LAN disabled:
>
> WARNING: CPU: 0 PID: 626 at drivers/net/phy/phy_device.c:323 mdio_bus_phy_resume+0xbc/0xe4
>
> As the Renesas SuperH Ethernet driver already calls phy_{stop,start}()
> in its suspend/resume callbacks, it is sufficient to just mark the MAC
> responsible for managing the power state of the PHY.
>
> Fixes: fba863b816049b03 ("net: phy: make PHY PM ops a no-op if MAC driver manages PHY PM")
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Reviewed-by: Sergey Shtylyov <[email protected]>

[...]

> diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c
> index 67ade78fb7671c4a..7fd8828d3a846169 100644
> --- a/drivers/net/ethernet/renesas/sh_eth.c
> +++ b/drivers/net/ethernet/renesas/sh_eth.c
> @@ -2029,6 +2029,8 @@ static int sh_eth_phy_init(struct net_device *ndev)
> if (mdp->cd->register_type != SH_ETH_REG_GIGABIT)
> phy_set_max_speed(phydev, SPEED_100);
>
> + /* Indicate that the MAC is responsible for managing PHY PM */
> + phydev->mac_managed_pm = true;

Again, this field is declared as *unsigned*...

> phy_attached_info(phydev);
[...]

MBR, Sergey

2022-09-19 19:20:34

by Sergey Shtylyov

[permalink] [raw]
Subject: Re: [PATCH] net: sh_eth: Fix PHY state warning splat during system resume

On 9/19/22 5:48 PM, Geert Uytterhoeven wrote:

> Since commit 744d23c71af39c7d ("net: phy: Warn about incorrect
> mdio_bus_phy_resume() state"), a warning splat is printed during system
> resume with Wake-on-LAN disabled:
>
> WARNING: CPU: 0 PID: 626 at drivers/net/phy/phy_device.c:323 mdio_bus_phy_resume+0xbc/0xe4
>
> As the Renesas SuperH Ethernet driver already calls phy_{stop,start}()
> in its suspend/resume callbacks, it is sufficient to just mark the MAC
> responsible for managing the power state of the PHY.
>
> Fixes: fba863b816049b03 ("net: phy: make PHY PM ops a no-op if MAC driver manages PHY PM")
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Reviewed-by: Sergey Shtylyov <[email protected]>

[...]

> diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c
> index 67ade78fb7671c4a..7fd8828d3a846169 100644
> --- a/drivers/net/ethernet/renesas/sh_eth.c
> +++ b/drivers/net/ethernet/renesas/sh_eth.c
> @@ -2029,6 +2029,8 @@ static int sh_eth_phy_init(struct net_device *ndev)
> if (mdp->cd->register_type != SH_ETH_REG_GIGABIT)
> phy_set_max_speed(phydev, SPEED_100);
>
> + /* Indicate that the MAC is responsible for managing PHY PM */

Again, this field is declared as *unsigned*...

> + phydev->mac_managed_pm = true;
> phy_attached_info(phydev);
[...]

MBR, Sergey

2022-09-21 00:18:19

by patchwork-bot+netdevbpf

[permalink] [raw]
Subject: Re: [PATCH] net: sh_eth: Fix PHY state warning splat during system resume

Hello:

This patch was applied to netdev/net.git (master)
by Jakub Kicinski <[email protected]>:

On Mon, 19 Sep 2022 16:48:28 +0200 you wrote:
> Since commit 744d23c71af39c7d ("net: phy: Warn about incorrect
> mdio_bus_phy_resume() state"), a warning splat is printed during system
> resume with Wake-on-LAN disabled:
>
> WARNING: CPU: 0 PID: 626 at drivers/net/phy/phy_device.c:323 mdio_bus_phy_resume+0xbc/0xe4
>
> As the Renesas SuperH Ethernet driver already calls phy_{stop,start}()
> in its suspend/resume callbacks, it is sufficient to just mark the MAC
> responsible for managing the power state of the PHY.
>
> [...]

Here is the summary with links:
- net: sh_eth: Fix PHY state warning splat during system resume
https://git.kernel.org/netdev/net/c/6a1dbfefdae4

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html