diff options
author | Russell King (Oracle) <rmk+kernel@armlinux.org.uk> | 2024-11-23 17:30:30 +0000 |
---|---|---|
committer | Russell King (Oracle) <rmk+kernel@armlinux.org.uk> | 2025-04-04 14:40:23 +0100 |
commit | dc8b93299eb40f08f8e813d9d4f21dc3e497455b (patch) | |
tree | 00ff03f6fc82706287f8e765ef0cc6d3076e5374 | |
parent | c5c551f4759833b8e7ac1850ffb3cb2f7dab3ccc (diff) |
net: phylink: handle mac_enable_tx_lpi() returning -EOPNOTSUPP
Handle -EOPNOTSUPP from mac_enable_tx_lpi() to print a sensible error.
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
-rw-r--r-- | drivers/net/phy/phylink.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/drivers/net/phy/phylink.c b/drivers/net/phy/phylink.c index d9a9dbac3a1e..308fa74eb1f7 100644 --- a/drivers/net/phy/phylink.c +++ b/drivers/net/phy/phylink.c @@ -1635,14 +1635,18 @@ static void phylink_activate_lpi(struct phylink *pl) err = pl->mac_ops->mac_enable_tx_lpi(pl->config, pl->mac_tx_lpi_timer, pl->mac_tx_clk_stop); - if (err) { + if (!err) { + pl->mac_enable_tx_lpi = true; + } else { phylink_pcs_disable_eee(pl->pcs); - phylink_err(pl, "%ps() failed: %pe\n", - pl->mac_ops->mac_enable_tx_lpi, ERR_PTR(err)); - return; + if (err == -EOPNOTSUPP) + phylink_dbg(pl, "%ps doesn't support LPI", + pl->mac_ops->mac_enable_tx_lpi); + else + phylink_err(pl, "%ps() failed: %pe\n", + pl->mac_ops->mac_enable_tx_lpi, + ERR_PTR(err)); } - - pl->mac_enable_tx_lpi = true; } static void phylink_link_up(struct phylink *pl, |