Save UEFI ROM from ConnectX3, 3Pro?

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

klui

Well-Known Member
Feb 3, 2019
846
464
63
I purchased some CX3s and CX3 Pros throughout these past few years and I've discovered that some of them are "OEM" versions even though the part is Mellanox.

The issue with these parts is they won't work with non-Mellanox transceivers. Flashing them with the standard Mellanox firmware fixes these limitations. The unexpected thing is the CX3 Pro card I have didn't require -allow_psid_change but flashing to the last firmware fixes the optics problem. Expectedly, the HP-branded card required the PSID change flag.

My CX3 Pros came with the following firmware:
Code:
  Part Number:      MCX314A-BCCT_C11_Ax
  Versions:         Current
     FW             2.43.7028
     PXE            3.4.0662
     UEFI           14.9.0090
After flashing one it has:
Code:
  Versions:         Current
     FW             2.42.5000
     PXE            3.4.0752
Because the stock firmware has no UEFI ROM, I'm wondering if I could extract an existing one and use that seeing how nobody in this forum has been able to find a UEFI ROM for these older Mellanox cards. nVIDIA has removed UEFI ROMs for CX3 Pro and earlier at Mellanox UEFI even though the last release notes for 2.42.5000 mentions UEFI 14.11.45.

I tried the command flint -d <DEV> ri > fw but while the size for a CX3 is ~80K, the CX3 Pro's FW is 9K. flint -d <DEV> rrom > rom results in 12K for a CX3 and 68 bytes for the CX3 Pro.

@BeTeP, will a variant of your procedure at https://forums.servethehome.com/ind...tom-firmware-package.18476/page-3#post-362217 work? By "work" I mean change the card's profile to allow all optics from a standard card but leave the firmware intact.
 

BeTeP

Well-Known Member
Mar 23, 2019
659
436
63
Well, the "procedure" is nothing but replacing the text config section of the image. If the functionality you want is controlled by the config and you know which values to edit to enable it - the procedure would certainly "work". But personally I'd first try adding UEFI to the retail image instead of trying to enable transceivers in the OEM.