mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-03-16 12:14:06 +00:00
net: phy: ax88772a: fix lost pause advertisement configuration
commitfa152f626b
upstream. 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:dde2584692
("net: usb/phy: asix: add support for ax88772A/C PHYs") Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Link: https://lore.kernel.org/r/20220628114349.3929928-1-o.rempel@pengutronix.de Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
164d0a4922
commit
d91f06ebab
1 changed files with 4 additions and 2 deletions
|
@ -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[] = {
|
||||
|
|
Loading…
Add table
Reference in a new issue