CodingBox Q&A Ask question

Intel X520 EEPROM patcher: flipping the bit at offset 0x58 to accept any SFP+ module on every OS

Asked Active Viewed 260
0

Intel X520 (82599) cards enforce a list of approved SFP+ modules; under Linux the ixgbe parameter helps, but on Windows or ESXi there is no such option. The gist provides a Python script that reads the card EEPROM with ethtool -e and sets bit 0 of the byte at offset 0x58 (0 = Intel modules only, 1 = any module) with ethtool -E using the device-specific magic value. Users reported Python 3 and Ubuntu 22.04 incompatibilities that were fixed in forks, cards staying unlocked after moving to Windows, and at least one X520-SR2 that still rejected non-Intel modules after patching.

  • Hardware: Intel X520-DA1, Intel X520-DA2, Intel X520-SR2, Intel 82599ES
  • Transceivers: third-party SFP+
  • Form factor: SFP+

Symptoms / messages:

unsupported SFP+ module rejected on Windows/ESXi
no carrier with non-Intel module

Comments 1

Accepted answer

Boot Linux (a live USB is fine), run the script as root to set bit 0 at EEPROM offset 0x58 via ethtool -E with the correct magic; the change is permanent and works on any OS afterwards. Use the community-fixed version on Python 3 / Ubuntu 22.04+.

net_admin
Log in to comment. Log in