Linux

Unraid at 10Gbe and 25Gbe with the X710-DA2 and XXV710-DA2

Anebula is reader-supported. When you buy through links on our site, we may earn an affiliate commission.

I recently tested a few SFP+ and SFP28 cards and DACs/AOCs with Unraid, so I thought I’d share my findings in hopes that I can help someone else upgrade to something that is compatible. As you know by scanning through the Unraid Forum and Reddit, it can be hit or miss with SFP+ & SFP28, DACs/AOCs, and Unraid support.

All of the testing was on my own AMD-based Unraid machine. Here’s the specs on Unraid:

Motherboard: Gigabyte B550 AORUS PRO V2, Bios Version F18d, the network cards were place in the second PCIe slot labeled “PCI Express x16 slot (PCIEX4), Supporting PCIe 3.0 x4 mode”

Unraid Version: 7.0.1

Switch: Mikrotik CRS310-8G+2S+IN

10Gbe SFP+ Card: Intel X710-DA2 (Dell Y5M7N)

eBay Link: https://www.ebay.com/itm/134979859540 (sold out already, but there are hundreds of these listed)

I bought it on eBay used for $39.99 USD. Based on my research, Dell branded vs non-Dell branded didn’t make a difference since I read that you can install Intel firmware on both versions. However, I tried upgrading firmware on Linux and Windows 11 machines using the Intel firmware, but ran into errors, so I did not upgrade with Intel firmware. Instead, I used Dell firmware on a Windows 11 host and the upgrade process was smooth (see firmware upgrade section below). Besides the firmware upgrade, I only unlocked the card – see the footnotes for how to unlock a card to work with any brand-encoded cables. Before and after the upgrade and unlock, Unraid 7.0.1 picked up the card with no additional packages needed so it was basically plug-and-play. I unlocked the card before trying it with Unraid, so I don’t know if it would have been picky with the cables below. However, later you’ll see that the locked XXV710-DA2 also did not have any issues with any of the three cables so I doubt I even needed the unlock on the X710-DA2.

Power consumption changes were unnoticeable on my machine. It continued to bounce around 50-60W at the wall.

Cables tested successfully and at full 10Gbe speeds:

I’d recommend the X710-DA2 + the Gtek SFP28 DAC (Intel version) if I needed a surefire solution. However, see the option below for a 25Gbe card that is just as compatible and only $10 more!

25Gbe SFP28 Card: Intel XXV710-DA2 (Dell HN7J7)

eBay link: https://www.ebay.com/itm/196538640857

I also bought this card a week apart from the V710-DA2 and swapped this into the Unraid machine instead.

Long story short, it works with all three cables listed above and I did not unlock it. I took it out of the eBay packaging and plugged it into the Unraid Machine, and it was good to go! I’m running it with the Gtek SFP28 cable that I mentioned above, but only at SFP+ speeds since I’m still limited by the Mikrotik SFP+ switch.

I don’t see a reason why anyone should go with the V710-DA2 if the XXV710-DA2 is plug-and-play, newer, supports ASPM, can go up to 25Gbe, but can also run at 10Gbe, and is only $10 USD more!

TL;DR, go with the Intel XXV710-DA2 and a Gtek SFP28 cable (intel version) and call it a day.

Power consumption, is also around the same place as before. i.e. 50-60W for the Unraid server at the wall.

Diagnostics Info from Unraid ethtool

Unraid Diagnostics from ethtool command
Bash
root@Tower:~# ethtool eth0
Settings for eth0:
        Supported ports: [ FIBRE ]
        Supported link modes:   10000baseT/Full
        Supported pause frame use: Symmetric Receive-only
        Supports auto-negotiation: No
        Supported FEC modes: None        RS      BASER
        Advertised link modes:  10000baseT/Full
        Advertised pause frame use: No
        Advertised auto-negotiation: No
        Advertised FEC modes: None       RS      BASER
        Speed: 10000Mb/s
        Duplex: Full
        Auto-negotiation: off
        Port: Direct Attach Copper
        PHYAD: 0
        Transceiver: internal
        Supports Wake-on: d
        Wake-on: d
        Current message level: 0x00000007 (7)
                               drv probe link
        Link detected: yes
root@Tower:~# ethtool eth1
Settings for eth1:
        Supported ports: [  ]
        Supported link modes:   10000baseT/Full
                                25000baseCR/Full
                                25000baseSR/Full
                                1000baseX/Full
                                10000baseSR/Full
                                10000baseLR/Full
        Supported pause frame use: Symmetric Receive-only
        Supports auto-negotiation: Yes
        Supported FEC modes: None        RS      BASER
        Advertised link modes:  10000baseT/Full
                                25000baseCR/Full
                                25000baseSR/Full
                                1000baseX/Full
                                10000baseSR/Full
                                10000baseLR/Full
        Advertised pause frame use: No
        Advertised auto-negotiation: Yes
        Advertised FEC modes: None       RS      BASER
        Speed: Unknown!
        Duplex: Unknown! (255)
        Auto-negotiation: off
        Port: Other
        PHYAD: 0
        Transceiver: internal
        Supports Wake-on: d
        Wake-on: d
        Current message level: 0x00000007 (7)
                               drv probe link
        Link detected: no
Unraid lspci command (ASMP looks to be disabled, so I need to investigate)
Bash
0000:00:02.1/02:00.2/03:00.0/04:00.0 Ethernet controller [0200]: Intel Corporation Ethernet Controller XXV710 for 25GbE SFP28 [8086:158b] (rev 02)
        Subsystem: Intel Corporation Ethernet 25G 2P XXV710 Adapter [8086:0009]
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin A routed to IRQ 33
        IOMMU group: 10
        Region 0: Memory at c2000000 (64-bit, prefetchable) [size=16M]
        Region 3: Memory at c4800000 (64-bit, prefetchable) [size=32K]
        Expansion ROM at fc600000 [disabled] [size=512K]
        Capabilities: [40] Power Management version 3
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
                Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=1 PME-
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
                Address: 0000000000000000  Data: 0000
                Masking: 00000000  Pending: 00000000
        Capabilities: [70] MSI-X: Enable+ Count=129 Masked-
                Vector table: BAR=3 offset=00000000
                PBA: BAR=3 offset=00001000
        Capabilities: [a0] Express (v2) Endpoint, IntMsgNum 0
                DevCap: MaxPayload 2048 bytes, PhantFunc 0, Latency L0s <512ns, L1 <64us
                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowerLimit 0W TEE-IO-
                DevCtl: CorrErr+ NonFatalErr+ FatalErr+ UnsupReq+
                        RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop- FLReset-
                        MaxPayload 256 bytes, MaxReadReq 512 bytes
                DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransPend-
                LnkCap: Port #0, Speed 8GT/s, Width x4, ASPM L1, Exit Latency L1 <16us
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 8GT/s, Width x4
                        TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
                DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- LTR-
                         10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
                         EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
                         FRS- TPHComp- ExtTPHComp-
                         AtomicOpsCap: 32bit- 64bit- 128bitCAS-
                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-
                         AtomicOpsCtl: ReqEn-
                         IDOReq- IDOCompl- LTR- EmergencyPowerReductionReq-
                         10BitTagReq- OBFF Disabled, EETLPPrefixBlk-
                LnkCap2: Supported Link Speeds: 2.5-8GT/s, Crosslink- Retimer- 2Retimers- DRS-
                LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-
                         Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
                         Compliance Preset/De-emphasis: -6dB de-emphasis, 0dB preshoot
                LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete+ EqualizationPhase1+
                         EqualizationPhase2+ EqualizationPhase3+ LinkEqualizationRequest-
                         Retimer- 2Retimers- CrosslinkRes: unsupported
        Capabilities: [e0] Vital Product Data
                Product Name: XXV710 25GbE Controller\x00
                Read-only fields:
                        [V0] Vendor specific: FFV20.5.13
                        [PN] Part number: 00M95
                        [MN] Manufacture ID: 1028
                        [V1] Vendor specific: DSV1028VPDR.VER2.1
                        [V3] Vendor specific: DTINIC
                        [V4] Vendor specific: DCM1001FFFFFF2101FFFFFF1202FFFFFF2302FFFFFF1403FFFFFF2503FFFFFF1604FFFFFF2704FFFFFF1805FFFFFF2905FFFFFF1A06FFFFFF2B06FFFFFF1C07FFFFFF2D07FFFFFF1E08FFFFFF2F08FFFFFF
                        [V5] Vendor specific: NPY2
                        [V6] Vendor specific: PMTD
                        [V7] Vendor specific: NMVIntel Corp
                        [V8] Vendor specific: L1D0
                        [RV] Reserved: checksum good, 1 byte(s) reserved
                Read/write fields:
                        [Y1] System specific: CCF1
                End
        Capabilities: [100 v2] Advanced Error Reporting
                UESta:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP-
                        ECRC- UnsupReq- ACSViol- UncorrIntErr- BlockedTLP- AtomicOpBlocked- TLPBlockedErr-
                        PoisonTLPBlocked- DMWrReqBlocked- IDECheck- MisIDETLP- PCRC_CHECK- TLPXlatBlocked-
                UEMsk:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt+ UnxCmplt- RxOF- MalfTLP-
                        ECRC- UnsupReq- ACSViol- UncorrIntErr- BlockedTLP- AtomicOpBlocked- TLPBlockedErr-
                        PoisonTLPBlocked- DMWrReqBlocked- IDECheck- MisIDETLP- PCRC_CHECK- TLPXlatBlocked-
                UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+
                        ECRC- UnsupReq- ACSViol- UncorrIntErr- BlockedTLP- AtomicOpBlocked- TLPBlockedErr-
                        PoisonTLPBlocked- DMWrReqBlocked- IDECheck- MisIDETLP- PCRC_CHECK- TLPXlatBlocked-
                CESta:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+ CorrIntErr- HeaderOF-
                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+ CorrIntErr- HeaderOF-
                AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkCap+ ECRCChkEn-
                        MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
                HeaderLog: 00000000 00000000 00000000 00000000
        Capabilities: [140 v1] Device Serial Number 80-08-21-ff-ff-6f-7c-50
        Capabilities: [150 v1] Alternative Routing-ID Interpretation (ARI)
                ARICap: MFVC- ACS-, Next Function: 1
                ARICtl: MFVC- ACS-, Function Group: 0
        Capabilities: [160 v1] Single Root I/O Virtualization (SR-IOV)
                IOVCap: Migration- 10BitTagReq- IntMsgNum 0
                IOVCtl: Enable- Migration- Interrupt- MSE- ARIHierarchy- 10BitTagReq-
                IOVSta: Migration-
                Initial VFs: 64, Total VFs: 64, Number of VFs: 0, Function Dependency Link: 00
                VF offset: 272, stride: 1, Device ID: 154c
                Supported Page Size: 00000553, System Page Size: 00000001
                Region 0: Memory at 00000000c4000000 (64-bit, prefetchable)
                Region 3: Memory at 00000000c4810000 (64-bit, prefetchable)
                VF Migration: offset: 00000000, BIR: 0
        Capabilities: [1a0 v1] Transaction Processing Hints
                Device specific mode supported
                No steering table available
        Capabilities: [1b0 v1] Access Control Services
                ACSCap: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans-
                ACSCtl: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans-
        Capabilities: [1d0 v1] Secondary PCI Express
                LnkCtl3: LnkEquIntrruptEn- PerformEqu-
                LaneErrStat: 0
        Kernel driver in use: i40e
        Kernel modules: i40e

0000:00:02.1/02:00.2/03:00.0/04:00.1 Ethernet controller [0200]: Intel Corporation Ethernet Controller XXV710 for 25GbE SFP28 [8086:158b] (rev 02)
        Subsystem: Intel Corporation Ethernet Network Adapter XXV710 [8086:0000]
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin A routed to IRQ 33
        IOMMU group: 10
        Region 0: Memory at c3000000 (64-bit, prefetchable) [size=16M]
        Region 3: Memory at c4808000 (64-bit, prefetchable) [size=32K]
        Expansion ROM at fc680000 [disabled] [size=512K]
        Capabilities: [40] Power Management version 3
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
                Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=1 PME-
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
                Address: 0000000000000000  Data: 0000
                Masking: 00000000  Pending: 00000000
        Capabilities: [70] MSI-X: Enable+ Count=129 Masked-
                Vector table: BAR=3 offset=00000000
                PBA: BAR=3 offset=00001000
        Capabilities: [a0] Express (v2) Endpoint, IntMsgNum 0
                DevCap: MaxPayload 2048 bytes, PhantFunc 0, Latency L0s <512ns, L1 <64us
                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowerLimit 0W TEE-IO-
                DevCtl: CorrErr+ NonFatalErr+ FatalErr+ UnsupReq+
                        RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop- FLReset-
                        MaxPayload 256 bytes, MaxReadReq 512 bytes
                DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransPend-
                LnkCap: Port #0, Speed 8GT/s, Width x4, ASPM L1, Exit Latency L1 <16us
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 8GT/s, Width x4
                        TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
                DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- LTR-
                         10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
                         EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
                         FRS- TPHComp- ExtTPHComp-
                         AtomicOpsCap: 32bit- 64bit- 128bitCAS-
                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-
                         AtomicOpsCtl: ReqEn-
                         IDOReq- IDOCompl- LTR- EmergencyPowerReductionReq-
                         10BitTagReq- OBFF Disabled, EETLPPrefixBlk-
                LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete- EqualizationPhase1-
                         EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
                         Retimer- 2Retimers- CrosslinkRes: unsupported
        Capabilities: [e0] Vital Product Data
                Product Name: XXV710 25GbE Controller\x00
                Read-only fields:
                        [V0] Vendor specific: FFV20.5.13
                        [PN] Part number: 00M95
                        [MN] Manufacture ID: 1028
                        [V1] Vendor specific: DSV1028VPDR.VER2.1
                        [V3] Vendor specific: DTINIC
                        [V4] Vendor specific: DCM1001FFFFFF2101FFFFFF1202FFFFFF2302FFFFFF1403FFFFFF2503FFFFFF1604FFFFFF2704FFFFFF1805FFFFFF2905FFFFFF1A06FFFFFF2B06FFFFFF1C07FFFFFF2D07FFFFFF1E08FFFFFF2F08FFFFFF
                        [V5] Vendor specific: NPY2
                        [V6] Vendor specific: PMTD
                        [V7] Vendor specific: NMVIntel Corp
                        [V8] Vendor specific: L1D0
                        [RV] Reserved: checksum good, 1 byte(s) reserved
                Read/write fields:
                        [Y1] System specific: CCF1
                End
        Capabilities: [100 v2] Advanced Error Reporting
                UESta:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP-
                        ECRC- UnsupReq- ACSViol- UncorrIntErr- BlockedTLP- AtomicOpBlocked- TLPBlockedErr-
                        PoisonTLPBlocked- DMWrReqBlocked- IDECheck- MisIDETLP- PCRC_CHECK- TLPXlatBlocked-
                UEMsk:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt+ UnxCmplt- RxOF- MalfTLP-
                        ECRC- UnsupReq- ACSViol- UncorrIntErr- BlockedTLP- AtomicOpBlocked- TLPBlockedErr-
                        PoisonTLPBlocked- DMWrReqBlocked- IDECheck- MisIDETLP- PCRC_CHECK- TLPXlatBlocked-
                UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+
                        ECRC- UnsupReq- ACSViol- UncorrIntErr- BlockedTLP- AtomicOpBlocked- TLPBlockedErr-
                        PoisonTLPBlocked- DMWrReqBlocked- IDECheck- MisIDETLP- PCRC_CHECK- TLPXlatBlocked-
                CESta:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+ CorrIntErr- HeaderOF-
                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+ CorrIntErr- HeaderOF-
                AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkCap+ ECRCChkEn-
                        MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
                HeaderLog: 00000000 00000000 00000000 00000000
        Capabilities: [140 v1] Device Serial Number 80-08-21-ff-ff-6f-7c-50
        Capabilities: [150 v1] Alternative Routing-ID Interpretation (ARI)
                ARICap: MFVC- ACS-, Next Function: 0
                ARICtl: MFVC- ACS-, Function Group: 0
        Capabilities: [160 v1] Single Root I/O Virtualization (SR-IOV)
                IOVCap: Migration- 10BitTagReq- IntMsgNum 0
                IOVCtl: Enable- Migration- Interrupt- MSE- ARIHierarchy- 10BitTagReq-
                IOVSta: Migration-
                Initial VFs: 64, Total VFs: 64, Number of VFs: 0, Function Dependency Link: 01
                VF offset: 335, stride: 1, Device ID: 154c
                Supported Page Size: 00000553, System Page Size: 00000001
                Region 0: Memory at 00000000c4400000 (64-bit, prefetchable)
                Region 3: Memory at 00000000c4910000 (64-bit, prefetchable)
                VF Migration: offset: 00000000, BIR: 0
        Capabilities: [1a0 v1] Transaction Processing Hints
                Device specific mode supported
                No steering table available
        Capabilities: [1b0 v1] Access Control Services
                ACSCap: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans-
                ACSCtl: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans-
        Kernel driver in use: i40e
        Kernel modules: i40e

As noted above, I’m still trying to figure out why ASPM is disabled. This is the case for both the X710-DA2 and the XXV710-DA2, on both Unraid and Ubuntu 24.04. I enabled PCIe ASPM Mode “L1 Entry” on both motherboards, along with running powertop --auto-tune but no matter what, I’m still not seeing ASPM enabled via lspci command. Let me know if you have any ideas.

Unlocking a X710 Intel Card to work with any brand-encoded cable

I followed this guide, but simplified the instructions.

As mentioned above, all three cables worked fine on the locked XXV710-DA2, so I don’t think I personally needed to unlock the X710-DA2, but here is how I did it in case you need to unlock yours for your application.

Bash
# I was on Ubuntu 24.04, so your instruction can vary
# 1 - Install v710 card in machine (I did not test with XXV710)
# 2 - Clone repo and compile code, repo is kinda old, but code worked fine
git clone https://github.com/bibigon812/xl710-unlocker.git
cd xl710-unlocker/
make
chmod +x xl710_unlock

# 3 get device name
sudo lshw -class network -short 

# H/W path                    Device          Class          Description
# ======================================================================
# /0/100/1.2/0/2/0            enp36s0f0np0    network        Ethernet Controller X710 for 10GbE SFP+
# /0/100/1.2/0/2/0.1          enp36s0f1np1    network        Ethernet Controller X710 for 10GbE SFP+
# /0/100/1.2/0/4/0            enp38s0         network        RTL8125 2.5GbE Controller
# /0/100/1.2/0/6/0            wlo1            network        Wi-Fi 6 AX200

# Above the device name is "enp36s0f0np0", you just need to pick one of the devices even though it has 2 ports

# 4 unlock the card with this command: 
./xl710_unlock -n enp36s0f0np0

# EMP SR offset: 0x67f1
# PHY offset: 0x6941
# PHY data struct size: 0x000d
# MISC: 0x6b0c <- locked
# MISC: 0x6b0c <- locked
# MISC: 0x6b0c <- locked
# MISC: 0x6b0c <- locked
# Ready to fix it? [y/N]: y

# That's it, it was pretty straight forward. Then I moved the card to my unraid machine.

Speed Testing

Before, with 1Gbe Cat 6

After, with 10Gbe SFP+

Here is a speed test using the XXV710-DA2 -> Mikrotik -> X710-DA2

Unraid had the Intel X710-DA2 with the cable 10Gtek 25G SFP28 SFP+ DAC Cable to Mikrotik CRS310-8G+2S+IN, then to Ubuntu 24.04 Desktop with XXV710-DA2 with the AOC OM2 cable.

Success! speed went from 942 Mbits/sec to 9.02 Gbits/sec.

Upgrading Firmware on Dell Intel X710-DA2 and XXV710-DA2

To start here is the version on X710-DA2, taken from Ubuntu 24.04. Notice firmware version 9.20.

Bash
(base) user@ubuntu-desktop:~$ ethtool -i enp36s0f0np0
driver: i40e
version: 6.8.0-55-generic
firmware-version: 9.20 0x8000d95b 22.0.9
expansion-rom-version: 
bus-info: 0000:24:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: yes

I tried using Intel firmware, but kept getting “Update is Unavailable” , so I switched to Dell firmware which only support RHEL and Windows. Luckily, I was already dual-booting Windows 11 and Ubuntu 24.04, so I switched to Windows for the upgrade.

Failed Intel NVM Upgrade “Update Not Available”
Bash
root@ubuntu-desktop:/home/user/Downloads/700series_nvmupdatepackage_v8_40/700Series_NVMUpdatePackage_v8_40_Linux/700Series/Linux_x64#  ./nvmupdate64e
Intel(R) Ethernet NVM Update Tool
NVMUpdate version 1.37.13.5
Copyright(C) 2013 - 2021 Intel Corporation.

WARNING: To avoid damage to your device, do not stop the update or reboot or power off the system during this update.
Inventory in progress. Please wait [|.........]

Num Description                          Ver.(hex)  DevId S:B    Status
=== ================================== ============ ===== ====== ==============
01) Intel(R) Ethernet 25G 2P XXV710     8.64(8.40)   158B 00:036 Update not    
   Adapter                                                      available

Tool execution completed with the following status: Device not found.
Press any key to exit.

Here is how to upgrade NVM Firmware using Dell Firmware on both X710 and XXV710

  1. Download the latest Dell Firmware, you can find the link below or do a Google search for “Dell X710 Firmware” to find the latest firmware on the Dell site, since the Dell internal search sucks.
  2. Download the Update Package for MS Windows 64-Bit
  3. Right-click the .exe file and click on Run As Administrator

4. Follow the prompts and upgrade, then restart.

Here’s what it looks like back in Ubuntu after the upgrade

Bash
(base) user@ubuntu-desktop:~$ ethtool -i enp36s0f0np0
driver: i40e
version: 6.8.0-55-generic
firmware-version: 9.40 0x8000e9c2 22.5.7
expansion-rom-version: 
bus-info: 0000:24:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: yes

Notice the firmware went from 9.20 to 9.40. Also, firmware upgrade worked even though the card was unlocked.

Michael

Recent Posts

Docker Compose Stack for Home Assistant with Grafana and InfluxDB

Documentation on this from a Docker Compose angle is sparse, so I wanted to share…

6 months ago

Ceiling Fan Smart Wall Switch With Fan Speed and Dimming Control

My house gets hot in the summer, and while central air helps, it's not enough.…

8 months ago

Must-Have Open Source Ubuntu 24.04 & Debian 12 Applications

Nextcloud Desktop Client Usage: Sync files to Nextcloud Server The Nextcloud Desktop Client syncs to…

1 year ago

TP-Link Omada and pfSense Setup for 2023 (Updated for July 2024)

It's been two years and firve months since I upgraded to TP-LInk Omada and pfSense.…

2 years ago

Part 6: How to set up multiple WordPress sites on Docker

This guide is part of the How to host multiple sites on one virtual machine…

2 years ago

Part 5: How to set up NGINX Proxy Manager using Docker Compose

This guide is part of the How to host multiple sites on one virtual machine…

2 years ago