diff options
author | Russell King (Oracle) <rmk+kernel@armlinux.org.uk> | 2024-05-29 14:29:19 +0100 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2024-05-30 18:32:15 -0700 |
commit | 75518b0dc9d602bdd0e0ee4e04806dff53cb761a (patch) | |
tree | 9eb189de40441ff49e52ad41aad91a78ee463927 /drivers/net/phy/phylink.c | |
parent | 2f19a795e1f9c722b182f9a3d3dedd80f90a0715 (diff) |
net: phylink: rearrange phylink_parse_mode()
Of the two users of phylink_config->ovr_an_inband, both manually check
for a fixed link before setting this flag (or clearing it if they find
a fixed link.) This is unnecessary complication.
Rearrange phylink_parse_mode() a little so we can change how
phylink_config->ovr_an_inband works. This will allow the flag to be
tested before checking for the fixed link properties in the next patch.
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Reviewed-by: Andrew Halaney <ahalaney@redhat.com>
Link: https://lore.kernel.org/r/E1sCJMl-00Ecqp-K0@rmk-PC.armlinux.org.uk
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/phy/phylink.c')
-rw-r--r-- | drivers/net/phy/phylink.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/phy/phylink.c b/drivers/net/phy/phylink.c index 994471fad833..5abd12713598 100644 --- a/drivers/net/phy/phylink.c +++ b/drivers/net/phy/phylink.c @@ -899,12 +899,15 @@ static int phylink_parse_mode(struct phylink *pl, return -EINVAL; } + pl->cfg_link_an_mode = MLO_AN_INBAND; + } + + if (pl->cfg_link_an_mode == MLO_AN_INBAND) { linkmode_zero(pl->supported); phylink_set(pl->supported, MII); phylink_set(pl->supported, Autoneg); phylink_set(pl->supported, Asym_Pause); phylink_set(pl->supported, Pause); - pl->cfg_link_an_mode = MLO_AN_INBAND; switch (pl->link_config.interface) { case PHY_INTERFACE_MODE_SGMII: |