I tried to apply a quirk (as you described), but it doesn’t seem to work like we’d expect:
--- a/drivers/net/phy/sfp.c
+++ b/drivers/net/phy/sfp.c
@@ -515,6 +515,7 @@
SFP_QUIRK_F("OEM", "SFP-GE-T", sfp_fixup_ignore_tx_fault),
SFP_QUIRK_F("OEM", "SFP-10G-T", sfp_fixup_rollball_cc),
+SFP_QUIRK_F("OEM", "ZK-10G-TX", sfp_fixup_rollball_cc),
SFP_QUIRK_M("OEM", "SFP-2.5G-T", sfp_quirk_oem_2_5g),
SFP_QUIRK_M("OEM", "SFP-2.5G", sfp_quirk_oem_2_5g),
SFP_QUIRK_M("OEM", "SFP-2.5G-BX10-D", sfp_quirk_2500basex),
But when booting the kernel, somehow, the module seems to fail validation:
[ 18.881557] mtk_soc_eth 15100000.ethernet sfp-wan: configuring for inband/10gbase-r link mode
[ 18.913436] bondjp: (slave sfp-wan): making interface the new active one
[ 18.920948] bondjp: (slave sfp-wan): Enslaving as an active interface with an up link
[ 18.930753] mt7530-mmio 15020000.switch wan: configuring for phy/internal link mode
[ 18.939839] mt7530-mmio 15020000.switch wan: configuring for phy/internal link mode
[ 18.947861] bondjp: (slave wan): Enslaving as a backup interface with an up link
[ 22.349999] mt7530-mmio 15020000.switch lan3: Link is Up - 1Gbps/Full - flow control off
[ 23.060038] mt7530-mmio 15020000.switch wan: Link is Up - 1Gbps/Full - flow control rx/tx
[ 32.268141] mtk_soc_eth 15100000.ethernet sfp-wan: validation with support 00,00000000,00000000,00000000 failed: -EINVAL
[ 32.279115] sfp sfp1: sfp_add_phy failed: -EINVAL
Does this “validation” thing tell you anything?
I tried (once again) your i2csfp tool, but it was in vain:
root@APBureau4:~# i2csfp sfp1 eepromfix
[ 1141.132693] sfp sfp1: module removed
Checksum 0x00-0x3e matched 89
Checksum 0x40-0x5e matched 9b
RollBall Password used: 0x63737777
Checksum 0x00-0x3e matched 89
Checksum 0x40-0x5e matched 9b
root@APBureau4:~# i2csfp sfp1 restore
[ 1154.964505] sfp sfp1: Host maximum power 3.0W
[ 1155.287121] sfp sfp1: module OEM ZK-10G-TX rev 1 sn 2505010443 dc 250412
[ 1155.336988] hwmon hwmon1: temp1_input not attached to any thermal zone
[ 1163.222307] mtk_soc_eth 15100000.ethernet sfp-wan: validation with support 00,00000000,00000000,00000000 failed: -EINVAL
[ 1163.233253] sfp sfp1: sfp_add_phy failed: -EINVAL
so, based on this mysterious validation error, can you help me out?