diff options
author | Russell King <rmk+kernel@armlinux.org.uk> | 2020-07-21 14:04:10 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2020-07-22 01:46:50 +0300 |
commit | 7cceb599d15d6639b1298ae400c26d822148e86f (patch) | |
tree | 2154fd670210241a0c56ab88b74d40352874f88c /drivers/net/phy/phylink.c | |
parent | 5005b163440f3fe18b434a20e8944dad508a15e8 (diff) | |
download | linux-7cceb599d15d6639b1298ae400c26d822148e86f.tar.xz |
net: phylink: avoid mac_config calls
Avoid calling mac_config() when using split PCS, and the interface
remains the same.
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/phy/phylink.c')
-rw-r--r-- | drivers/net/phy/phylink.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/phy/phylink.c b/drivers/net/phy/phylink.c index f1693ec63366..424a927d7889 100644 --- a/drivers/net/phy/phylink.c +++ b/drivers/net/phy/phylink.c @@ -631,10 +631,12 @@ static void phylink_resolve(struct work_struct *w) } phylink_pcs_config(pl, false, &link_state); pl->link_config.interface = link_state.interface; - } else { + } else if (!pl->pcs_ops) { /* The interface remains unchanged, only the speed, * duplex or pause settings have changed. Call the - * old mac_config() method to configure the MAC/PCS. + * old mac_config() method to configure the MAC/PCS + * only if we do not have a PCS installed (an + * unconverted user.) */ phylink_mac_config(pl, &link_state); } |