net: sfp: allow use 2500base-X for 2500base-T modules
authorRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Sun, 28 Apr 2024 14:51:07 +0000 (15:51 +0100)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 30 Apr 2024 13:22:57 +0000 (15:22 +0200)
Allow use of 2500base-X interface mode for PHY modules that support
2500base-T.

Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Reviewed-by: Daniel Machon <daniel.machon@microchip.com>
Link: https://lore.kernel.org/r/E1s15rv-00AHyk-5S@rmk-PC.armlinux.org.uk
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/phy/sfp-bus.c

index 413021619afe8de6b84e7b0587140cc344005821..c6e3baf00f236da8af7e7484629fdba7957c9f15 100644 (file)
@@ -373,7 +373,8 @@ phy_interface_t sfp_select_interface(struct sfp_bus *bus,
        if (phylink_test(link_modes, 5000baseT_Full))
                return PHY_INTERFACE_MODE_5GBASER;
 
-       if (phylink_test(link_modes, 2500baseX_Full))
+       if (phylink_test(link_modes, 2500baseX_Full) ||
+           phylink_test(link_modes, 2500baseT_Full))
                return PHY_INTERFACE_MODE_2500BASEX;
 
        if (phylink_test(link_modes, 1000baseT_Half) ||