How to understand the eeprom dump from ethtool -m for an SFP+?
I have executed ethtool -m
on one of the SFPs on a server and now I am trying to interpret it. I get this printout,
Identifier : 0x03 (SFP)
Extended identifier : 0x04 (GBIC/SFP defined by 2-wire interface ID)
Connector : 0x07 (LC)
Transceiver codes : 0x10 0x00 0x00 0x01 0x00 0x00 0x00 0x00 0x00
Transceiver type : 10G Ethernet: 10G Base-SR
Transceiver type : Ethernet: 1000BASE-SX
Encoding : 0x06 (64B/66B)
BR, Nominal : 10300MBd
Rate identifier : 0x02 (8/4/2G Rx Rate_Select only)
Length (SMF,km) : 0km
Length (SMF) : 0m
Length (50um) : 80m
Length (62.5um) : 30m
Length (Copper) : 0m
Length (OM3) : 300m
Laser wavelength : 850nm
Most is clear, but what confuses me are the lengths. I do not have access to the HW, so I cannot go and physically check the connections, but I would have expected only one length printout would be there. Instead I see several length printouts here.
It would be great if someone knows how this is interpreted. What does it mean I have
300m 0m 30m, 80m 50um and 30m, 62.5um? Or have I misunderstood this and that this only provides the maximal supported cable length?
Solution 1:
I managed to find some info about the eeprom file for SFPs. I found this from Finisar https://cdn.hackaday.io/files/21599924091616/AN_2030_DDMI_for_SFP_Rev_E2.pdf
and the Length is as suspected, the maximum length per cable type, where 0 means the cable type is not supported.
Solution 2:
For completeness, the memory layout is specified in SFF-8472 "Management Interface for SFP+".