Right SFP EEPROM config for DFP-34X-2C2 to work automatically work at 2500base-X? #250
Replies: 6 comments 42 replies
-
to change this, do you use SFPTotal Whistle or Mini ? |
Beta Was this translation helpful? Give feedback.
-
Can you share the .bin of the entire firwmare with this modification ? will use a programer to flash direct in SOP |
Beta Was this translation helpful? Give feedback.
-
I found this command can change EEPROM value, but eeprom content does not same as I read from chip using programer, anyone can check it work or not? |
Beta Was this translation helpful? Give feedback.
-
I tried
Mikrotik detect as this instance The way Mikrotik show supported are different, I wonder what value to make |
Beta Was this translation helpful? Give feedback.
-
I test this on Banana Pi BPI-R4, it's work. |
Beta Was this translation helpful? Give feedback.
-
How to flashing modified firmware? Only programmer? |
Beta Was this translation helpful? Give feedback.
-
Edit: This procedure also works for ODI DFP-34X-2I3, more details here
Seems ODI has wrong configuration in DFP-34X-2C2's eeprom. And this blocks linux to use 2500base-X by default.
First, they set BR, Nominal value to 1300MBd, while it should be 3125MBd(Since 3125 cannot be set, it should be round off to 3100MBd).
Second, 1000base-LX is enabled by default, so that linux would prefer that speed (https://github.com/torvalds/linux/blob/cf1182944c7cc9f1c21a8a44e0d29abe12527412/drivers/net/phy/sfp-bus.c#L327)
After disabling 1000base-LX and set BR, Nominal value to 3100MBd in EEPROM, my device (Banana pi BPI-R3 + Openwrt 23.05.2) would use 2500base-X by default now.
For example:
Set addr 0x06 to 0x00(Disable 1000base-LX), addr 0x0c to 0x1f(3100MBd), addr 0x3f to 0x80(Checksum)
When using openwrt, you need to install ethtool-full and i2c-tools before operating. To dump eeprom, you can use
ethtool -m *your sfp port here* raw on > dump.bin
, then download the bin using winscp or something and open it using SFPTotal Wizard(It is used to calculate checksum, you can use other software instead)Beta Was this translation helpful? Give feedback.
All reactions