2022-06-26 15:50:21

by Oleksij Rempel

[permalink] [raw]
Subject: [PATCH net-next v2 1/1] net: phy: ax88772a: fix lost pause advertisement configuration

In case of asix_ax88772a_link_change_notify() workaround, we run soft
reset which will automatically clear MII_ADVERTISE configuration. The
PHYlib framework do not know about changed configuration state of the
PHY, so we need use phy_init_hw() to reinit PHY configuration.

Fixes: dde258469257 ("net: usb/phy: asix: add support for ax88772A/C PHYs")
Signed-off-by: Oleksij Rempel <[email protected]>
---
drivers/net/phy/ax88796b.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/net/phy/ax88796b.c b/drivers/net/phy/ax88796b.c
index 457896337505..0f1e617a26c9 100644
--- a/drivers/net/phy/ax88796b.c
+++ b/drivers/net/phy/ax88796b.c
@@ -88,8 +88,10 @@ static void asix_ax88772a_link_change_notify(struct phy_device *phydev)
/* Reset PHY, otherwise MII_LPA will provide outdated information.
* This issue is reproducible only with some link partner PHYs
*/
- if (phydev->state == PHY_NOLINK && phydev->drv->soft_reset)
- phydev->drv->soft_reset(phydev);
+ if (phydev->state == PHY_NOLINK) {
+ phy_init_hw(phydev);
+ phy_start_aneg(phydev);
+ }
}

static struct phy_driver asix_driver[] = {
--
2.30.2


2022-06-26 17:10:23

by Andrew Lunn

[permalink] [raw]
Subject: Re: [PATCH net-next v2 1/1] net: phy: ax88772a: fix lost pause advertisement configuration

On Sun, Jun 26, 2022 at 05:27:03PM +0200, Oleksij Rempel wrote:
> In case of asix_ax88772a_link_change_notify() workaround, we run soft
> reset which will automatically clear MII_ADVERTISE configuration. The
> PHYlib framework do not know about changed configuration state of the
> PHY, so we need use phy_init_hw() to reinit PHY configuration.
>
> Fixes: dde258469257 ("net: usb/phy: asix: add support for ax88772A/C PHYs")
> Signed-off-by: Oleksij Rempel <[email protected]>

Reviewed-by: Andrew Lunn <[email protected]>

Andrew

2022-06-28 05:48:36

by Jakub Kicinski

[permalink] [raw]
Subject: Re: [PATCH net-next v2 1/1] net: phy: ax88772a: fix lost pause advertisement configuration

On Sun, 26 Jun 2022 17:27:03 +0200 Oleksij Rempel wrote:
> Subject: [PATCH net-next v2 1/1] net: phy: ax88772a: fix lost pause advertisement configuration
>
> In case of asix_ax88772a_link_change_notify() workaround, we run soft
> reset which will automatically clear MII_ADVERTISE configuration. The
> PHYlib framework do not know about changed configuration state of the
> PHY, so we need use phy_init_hw() to reinit PHY configuration.
>
> Fixes: dde258469257 ("net: usb/phy: asix: add support for ax88772A/C PHYs")

Why net-next?

2022-06-28 06:57:44

by Oleksij Rempel

[permalink] [raw]
Subject: Re: [PATCH net-next v2 1/1] net: phy: ax88772a: fix lost pause advertisement configuration

On Mon, Jun 27, 2022 at 10:17:05PM -0700, Jakub Kicinski wrote:
> On Sun, 26 Jun 2022 17:27:03 +0200 Oleksij Rempel wrote:
> > Subject: [PATCH net-next v2 1/1] net: phy: ax88772a: fix lost pause advertisement configuration
> >
> > In case of asix_ax88772a_link_change_notify() workaround, we run soft
> > reset which will automatically clear MII_ADVERTISE configuration. The
> > PHYlib framework do not know about changed configuration state of the
> > PHY, so we need use phy_init_hw() to reinit PHY configuration.
> >
> > Fixes: dde258469257 ("net: usb/phy: asix: add support for ax88772A/C PHYs")
>
> Why net-next?

It is old bug but it will be notable only after this patch:
https://lore.kernel.org/all/[email protected]/

Should I resend it to net?

Regards,
Oleksij
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |

2022-06-28 11:29:40

by Paolo Abeni

[permalink] [raw]
Subject: Re: [PATCH net-next v2 1/1] net: phy: ax88772a: fix lost pause advertisement configuration

On Tue, 2022-06-28 at 08:43 +0200, Oleksij Rempel wrote:
> On Mon, Jun 27, 2022 at 10:17:05PM -0700, Jakub Kicinski wrote:
> > On Sun, 26 Jun 2022 17:27:03 +0200 Oleksij Rempel wrote:
> > > Subject: [PATCH net-next v2 1/1] net: phy: ax88772a: fix lost pause advertisement configuration
> > >
> > > In case of asix_ax88772a_link_change_notify() workaround, we run soft
> > > reset which will automatically clear MII_ADVERTISE configuration. The
> > > PHYlib framework do not know about changed configuration state of the
> > > PHY, so we need use phy_init_hw() to reinit PHY configuration.
> > >
> > > Fixes: dde258469257 ("net: usb/phy: asix: add support for ax88772A/C PHYs")
> >
> > Why net-next?
>
> It is old bug but it will be notable only after this patch:
> https://lore.kernel.org/all/[email protected]/
>
> Should I resend it to net?

It depends ;) is the fix functionally depending on the above patch? If
yes, please update the commit message including such info (and the fix
will go via net-next).

If instead this patch is correct even regarless of
89183b6ea8dd39771d92e99723f6cf60b5670dad, I *think* it should go via -
net.

Thanks!

Paolo