diff options
author | Russell King (Oracle) <rmk+kernel@armlinux.org.uk> | 2022-02-21 17:10:52 +0000 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2022-02-22 16:57:08 -0800 |
commit | 1054457006d4a14de4ae4132030e33d7eedaeba1 (patch) | |
tree | ef41912466cfc3358138bf4616c1713dc9656061 /net | |
parent | 12c740c8683fed9eee4ae9ddddc96a8abeeeda9e (diff) | |
download | linux-1054457006d4a14de4ae4132030e33d7eedaeba1.tar.bz2 |
net: phy: phylink: fix DSA mac_select_pcs() introduction
Vladimir Oltean reports that probing on DSA drivers that aren't yet
populating supported_interfaces now fails. Fix this by allowing
phylink to detect whether DSA actually provides an underlying
mac_select_pcs() implementation.
Reported-by: Vladimir Oltean <olteanv@gmail.com>
Fixes: bde018222c6b ("net: dsa: add support for phylink mac_select_pcs()")
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Tested-by: Vladimir Oltean <olteanv@gmail.com>
Link: https://lore.kernel.org/r/E1nMCD6-00A0wC-FG@rmk-PC.armlinux.org.uk
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net')
-rw-r--r-- | net/dsa/port.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/dsa/port.c b/net/dsa/port.c index 258782bf4271..367d141c6971 100644 --- a/net/dsa/port.c +++ b/net/dsa/port.c @@ -1058,8 +1058,8 @@ dsa_port_phylink_mac_select_pcs(struct phylink_config *config, phy_interface_t interface) { struct dsa_port *dp = container_of(config, struct dsa_port, pl_config); + struct phylink_pcs *pcs = ERR_PTR(-EOPNOTSUPP); struct dsa_switch *ds = dp->ds; - struct phylink_pcs *pcs = NULL; if (ds->ops->phylink_mac_select_pcs) pcs = ds->ops->phylink_mac_select_pcs(ds, dp->index, interface); |