Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

net: sfp: add quirk for 2.5G OEM BX SFP

The OEM SFP-2.5G-BX10-D/U SFP module pair is meant to operate with
2500Base-X. However, in their EEPROM they incorrectly specify:
Transceiver codes : 0x00 0x12 0x00 0x00 0x12 0x00 0x01 0x05 0x00
BR, Nominal : 2500MBd

Use sfp_quirk_2500basex for this module to allow 2500Base-X mode anyway.
Tested on BananaPi R3.

Signed-off-by: Birger Koblitz <mail@birger-koblitz.de>
Reviewed-by: Daniel Golle <daniel@makrotopia.org>
Link: https://patch.msgid.link/20250218-b4-lkmsub-v1-1-1e51dcabed90@birger-koblitz.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

authored by

Birger Koblitz and committed by
Jakub Kicinski
a8503556 bb3bb6c9

+2
+2
drivers/net/phy/sfp.c
··· 515 515 516 516 SFP_QUIRK_F("OEM", "SFP-10G-T", sfp_fixup_rollball_cc), 517 517 SFP_QUIRK_M("OEM", "SFP-2.5G-T", sfp_quirk_oem_2_5g), 518 + SFP_QUIRK_M("OEM", "SFP-2.5G-BX10-D", sfp_quirk_2500basex), 519 + SFP_QUIRK_M("OEM", "SFP-2.5G-BX10-U", sfp_quirk_2500basex), 518 520 SFP_QUIRK_F("OEM", "RTSFP-10", sfp_fixup_rollball_cc), 519 521 SFP_QUIRK_F("OEM", "RTSFP-10G", sfp_fixup_rollball_cc), 520 522 SFP_QUIRK_F("Turris", "RTSFP-2.5G", sfp_fixup_rollball),