]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
net: sfp: add quirk for Lantech 8330-265D
authorMarek Behún <kabel@kernel.org>
Wed, 28 Jan 2026 17:00:44 +0000 (18:00 +0100)
committerJakub Kicinski <kuba@kernel.org>
Fri, 30 Jan 2026 03:39:56 +0000 (19:39 -0800)
Similar to Lantech 8330-262D-E, the Lantech 8330-265D also reports
2500MBd instead of 3125MBd.

Also, all 8330-265D report normal RX_LOS in EEPROM, but some signal
inverted RX_LOS. We therefore need to ignore RX_LOS on these modules.

Signed-off-by: Marek Behún <kabel@kernel.org>
Link: https://patch.msgid.link/20260128170044.15576-1-kabel@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/phy/sfp.c

index 47f095bd91ceabcdf4532ffe0a07d2b3fae78127..4746a8af3a8db2ca87ffe4e6d7e4f7e68dafe809 100644 (file)
@@ -530,9 +530,13 @@ static const struct sfp_quirk sfp_quirks[] = {
        SFP_QUIRK("HUAWEI", "MA5671A", sfp_quirk_2500basex,
                  sfp_fixup_ignore_tx_fault),
 
-       // Lantech 8330-262D-E can operate at 2500base-X, but incorrectly report
-       // 2500MBd NRZ in their EEPROM
+       // Lantech 8330-262D-E and 8330-265D can operate at 2500base-X, but
+       // incorrectly report 2500MBd NRZ in their EEPROM.
+       // Some 8330-265D modules have inverted LOS, while all of them report
+       // normal LOS in EEPROM. Therefore we need to ignore LOS entirely.
        SFP_QUIRK_S("Lantech", "8330-262D-E", sfp_quirk_2500basex),
+       SFP_QUIRK("Lantech", "8330-265D", sfp_quirk_2500basex,
+                 sfp_fixup_ignore_los),
 
        SFP_QUIRK_S("UBNT", "UF-INSTANT", sfp_quirk_ubnt_uf_instant),