]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
net: pcs: pcs-mtk-lynxi: report in-band capability for 2500Base-X
authorDaniel Golle <daniel@makrotopia.org>
Wed, 21 Jan 2026 02:23:17 +0000 (02:23 +0000)
committerJakub Kicinski <kuba@kernel.org>
Thu, 22 Jan 2026 04:01:03 +0000 (20:01 -0800)
It turns out that 2500Base-X actually works fine with in-band status on
MediaTek's LynxI PCS -- I wrongly concluded it didn't because it is
broken in all the copper SFP modules and GPON sticks I used for testing.

Hence report LINK_INBAND_ENABLE also for 2500Base-X mode.

This reverts most of commit a003c38d9bbb ("net: pcs: pcs-mtk-lynxi:
correctly report in-band status capabilities").

The removal of the QSGMII interface mode was correct and is left
untouched.

Link: https://github.com/openwrt/openwrt/issues/21436
Fixes: a003c38d9bbb ("net: pcs: pcs-mtk-lynxi: correctly report in-band status capabilities")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Link: https://patch.msgid.link/b1cf26157b63fee838be09ae810497fb22fd8104.1768961746.git.daniel@makrotopia.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/pcs/pcs-mtk-lynxi.c

index 149ddf51d785647bc0101de22b38dbec4bc5d0cc..87df3a9dfc9bccbb97229c8862b41f306ae18f8a 100644 (file)
@@ -93,12 +93,10 @@ static unsigned int mtk_pcs_lynxi_inband_caps(struct phylink_pcs *pcs,
 {
        switch (interface) {
        case PHY_INTERFACE_MODE_1000BASEX:
+       case PHY_INTERFACE_MODE_2500BASEX:
        case PHY_INTERFACE_MODE_SGMII:
                return LINK_INBAND_DISABLE | LINK_INBAND_ENABLE;
 
-       case PHY_INTERFACE_MODE_2500BASEX:
-               return LINK_INBAND_DISABLE;
-
        default:
                return 0;
        }