Yes this is a well known workaround when you have a supported operating system - but will not work (for instance) on ESXiSee, post below, no flashing needed
Craig
Yes this is a well known workaround when you have a supported operating system - but will not work (for instance) on ESXiSee, post below, no flashing needed
Can confirm this worked well for me! I bulk did 4 Dell x520’s. Wish I would have had this walkthrough when I did my first like 3-4 months ago. Thank you so much Bomberski!!Lot of info for a new person to take on,
this might help some one.
(Copy & Paste )
Might have to run sudo before every command(I don't remember if i did for every command)
I had problems with the live Ubuntu on usb so I just installed it on a old HD I had laying around.(20.04.1 was used) did the apt-update and apt-upgrade and you will need to install ethtool in Ubuntu.
-‐----------------------------------------------------------------------
Dell XYT17 Intel X520-DA2
‐---------------------------------‐-------------------------------------
sudo ip link show (find your cards port one number)
View attachment 25704
‐----------------------------------‐---------------------------------
(Find current value)
Sudo ethtool -e PUTCARDNUMBERHERE offset 0x58 length 1
Offset Values
------ ------
0x0058: fc
‐---------------------------------‐-------------------------------------
(To Change value)
sudo lspci -nn
This will give you the manufacturer ID and the PCI ID( thanks Craig!) Like the text below.
(04:00.0 Ethernet controller [0200]: Intel Corporation Ethernet 10G 2P X520 Adapter [8086:154d] (rev 01)
The magic number was made from this line above [8086:154d] to 0x154d8086 To use below.
Sudo ethtool -E PUTCARDNUMBERHERE magic 0x154d8086 offset 0x58 value 0xfd length 1
‐---------------------------------‐-------------------------------------
(Check if it took)
Sudo ethtool -e PUTCARDNUMBERHERE offset 0x58 length 1
Offset Values
------ ------
0x0058: fd
Should be good
‐---------------------------------‐-------------------------------------
I am just a home lab user with very little Linux experience. This took me hours to figure out skimming the 3 pages here and basic Linux commands at others sites.
This only works for the dell version listed.
No spoon feeding at this site lol
Installed in a R210ii with pfsense and set my interfaces after boot. Works great so far, sfp+ rj45 adapter worked perfectly with my xb7 modem. Modem shows 2.5g and pfsense shows 10g.
root@HomeController:~# ethtool -e enp1s0f0
Offset Values
------ ------
0x0000: 60 08 02 00 00 00 40 00 6d 00 fd 00 8d 01 a3 01
0x0010: a9 01 af 01 b7 01 bf 01 c7 01 cf 01 09 02 b8 05
0x0020: 00 04 ff ff ff ff ff ff ff ff 10 02 ff ff c8 02
0x0030: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x0040: 22 28 ff ff ff ff ff ff ff ff ff ff ff ff 19 28
0x0050: 13 28 40 40 40 40 c5 26 fd ff da 06 00 80 48 02
ubuntu@ubuntu:~$ sudo ethtool -e ens6f0
Offset Values
------ ------
0x0000: 60 07 00 00 00 00 40 00 6d 00 fd 00 8d 01 a3 01
0x0010: a9 01 af 01 b7 01 bf 01 c7 01 cf 01 09 02 b8 05
0x0020: 00 04 ff ff ff ff ff ff ff ff ff ff ff ff c8 02
0x0030: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x0040: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x0050: ff ff 30 10 ff ff 6a 0d ff ff 01 00 ab 1b 48 02
Silicom requires you to get the -SRD versions of their card to support both 1G/10G. Additionally on the Silicoms we use (which are the bypass versions) I have to set 1G manually likeThis is what a Silicom PE210G2SP19-SR 82599ES looks like:
I'm thinking this card is already unlocked from the factory. Reached out to Silicom's developers and they state there is no firmware upgrade for this card. The card was manufactured in 2018. Here's the read from the card without any patching.
It still won't recognize Avago 16gb transceivers. I believe this is because the transceiver won't do 1gbps. The data sheet claims 16, 10, 8, 4gbps but not 1gbps. That's odd because I have a Trend Networks LanXPLORER PRO and a Fluke Optiview iii that will read the 16gb transceivers and each of those tools only support up to 1gbps through the transceiver slot. Each tester will send/receive data at 1gbps using the Avago 16gbps transceivers. IDK.Code:ubuntu@ubuntu:~$ sudo ethtool -e ens6f0 Offset Values ------ ------ 0x0000: 60 07 00 00 00 00 40 00 6d 00 fd 00 8d 01 a3 01 0x0010: a9 01 af 01 b7 01 bf 01 c7 01 cf 01 09 02 b8 05 0x0020: 00 04 ff ff ff ff ff ff ff ff ff ff ff ff c8 02 0x0030: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 0x0040: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 0x0050: ff ff 30 10 ff ff 6a 0d ff ff 01 00 ab 1b 48 02
ethtool -s <nic> speed 1000 duplex full autoneg on
instead of automatically working at 1G or 10G like other brands.Yes, it should be possible to restore a working EEPROM with ethtool.sooo,
I think I might have bricked my hp 560sfp+ editing the eeprom..
any way to fix the card or its dead dead?
for context, the card after the eeprom edit and a reboot the card doesn't show up anymore on lspci but it appears on ilo console. (box is a dl380 g9).
Yes, at least on the X710 and XL710 cards. I don't know about X810.As anyone accomplished similar results/process with the X710 or X810 Ethernet cards? Removing the ability to use "allow_unsupported_sfp=1" in the ixgbe and ice drivers is a really uncool move by Intel.
Have you tried adding the flag to allow unsupported modules, just to see if the vendor lock is the issue?I've applied this patch to two separate Intel X520's, but I still get the dreaded "failed to load because an unsupported SFP+ or QSFP module type was detected" message. I'm using Cisco coded 10G BiDi SFP+ modules from FS.com. Unfortunately, I don't have any other SFP+ optics to test at the moment (DACs work fine however).
I'm wondering if these optics really are incompatible for some reason, or maybe the ixgbe driver has been patched to ignore the bit in EEPROM? I've searched around but I can't find another example of this patch not working on an Intel brand X520.
I've tried loading the driver with allow_unsupported_sfp set with the same results. I'm not even sure if the option was being applied correctly.Have you tried adding the flag to allow unsupported modules, just to see if the vendor lock is the issue?
Modifying these bits is essentially equivalent to what that flag does, but in a way that also works with drivers that don't offer a way to disable the lock.
I see. Is this on a recent firmware too, in case there have been any changes to transceiver compatibility?I've tried loading the driver with allow_unsupported_sfp set with the same results. I'm not even sure if the option was being applied correctly.
I suspect that between the driver flag and the eeprom bit, something should've worked. That's why I'm wondering if there is a legitimate reason these optics aren't compatible.
I would order an Intel coded optic from FS to try, but I think instead I'll buy another NIC.
I wasn't aware there was anything on these cards worth updating (I've seen references to PXE and UEFI), but I'm not opposed to trying. Do you know where I can find the OEM firmware for this card?I see. Is this on a recent firmware too, in case there have been any changes to transceiver compatibility?
Yeah, it's old enough that there likely hasn't been a firmware update released from Intel in a long time. It you bought it used, it might be worth checking though.I wasn't aware there was anything on these cards worth updating (I've seen references to PXE and UEFI), but I'm not opposed to trying. Do you know where I can find the OEM firmware for this card?
Sorry, It's Intel branded. I haven't been able to find an official firmware update from Intel for this card. From what I have found, Intel handles firmware updates from the driver (or not at all).Yeah, it's old enough that there likely hasn't been a firmware update released from Intel in a long time. It you bought it used, it might be worth checking though.
Is it an Intel branded card, or an OEM model? If the latter, which OEM and model number?
I'm afraid I might be suffering from this. although I really don't know how to check.As such just patching the EEPROM or setting allow_unsupported_sfp will not have an effect if the driver determines that it's not a 10GE module. As such after patching the EEPROM ensure to try out multiple modules. Else Intel's driver will block initialization.
Yes, some quick googling suggests that might be the case. For my Dell OEM X710-DA2 there were separate firmware updates. That's why I assumed it was the same for your X520.Sorry, It's Intel branded. I haven't been able to find an official firmware update from Intel for this card. From what I have found, Intel handles firmware updates from the driver (or not at all).