Mellanox Firmware Tools for ConnectX-2?

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

danb35

Member
Nov 25, 2017
34
4
8
44
tl;dr: Does anyone know where I can find a copy of Mellanox Firmware Tools that will work with a ConnectX-2?

I recently bought a custom CX-2 (specifically, model # MCQH29-XFR) as a mezzanine card for a Dell PowerEdge C6220 II. The card fits physically just fine, and both Windows and Debian recognize it, but they both recognize it as an Infiniband adapter, and I want to use it for Ethernet. According to the manual I found for the card, if it's labeled with both a MAC address and a GUID, it can do both Infiniband and Ethernet, and it is so labeled.

So download MFT and use mlxconfig to change the setting, right? Not so fast. The CX-2 cards are old, and according to the MFT release notes, support for them was removed in MFT 4.0. The last prior release was 3.8.0, and by implication, that release should have supported the CX-2 cards. So off to find a download of 3.8.0, and Google shows me this. But when I install it, it says it only supports the CX-3 and CX-3 Pro cards, and doesn't recognize mine at all.

So, does anyone have, or know where I can find, a package for MFT that will support the CX-2 cards? Or an alternative way to configure the card? I'm OS-neutral here; Windows, Linux, even FreeBSD would work.
 

i386

Well-Known Member
Mar 18, 2016
4,310
1,580
113
35
Germany
You could try this firmware package (windows executable) from hp(e): HPE Support Center

start the installation (wait until the msi file is extracted and started)
go to the appdata directory of the user
search for "*.mlx"
open the folder that contains the mlx file

there should be everything that is needed to work with cx-2 firmware files and configurations
 
  • Like
Reactions: danb35

danb35

Member
Nov 25, 2017
34
4
8
44
Thanks for the suggestion. Stupidly, I hadn't considered doing just that with Dell's support, since it's a Dell server and a Dell part number on the adapter. But more on that in a moment.

I downloaded that package and installed it (Win 10 Pro x64). Searched in the user's AppData folder for *.mlx and found nothing. Searched the entire system for *.mlx and found nothing. Restarted and tried again--still nothing. But with some poking around, I found c:\Program Files\Mellanox, which seemed to have relevant files. And somehow--and I wish I'd written down how, because I haven't been able to find it again--I got to a Properties window for the adapter, with a Ports tab. On that Ports tab, both ports were set to AUTO, and I changed them to ETH.

Once I did that, I had two entries in the Device Manager for the card, one for each port, but neither of those appeared in the Network Connections window. Both had the Yellow Triangle of Doom indicating a problem, and opening the device properties and going to the Events tab told me "the device requires further installation." I also had a lot of unknown System Devices there, and wondering if they might be related, I went to Dell's support and entered the service tag number.

Lo and behold, they have drivers for the Mellanox card. Downloaded and installed them, and now the card is listed without a warning:
1652728300260.png
...and it shows up in the network connections:
1652728322895.png
...and I even have a link light on the adapter--though not on the other end of the connection, which may have something to do with the QSFP-to-SFP+ adapter I'm using.

But when I instead boot into Linux--specifically Proxmox, which is what I intend to use the card with--it's still being detected as an Infiniband adapter. Strange.
 

i386

Well-Known Member
Mar 18, 2016
4,310
1,580
113
35
Germany
And somehow--and I wish I'd written down how, because I haven't been able to find it again--I got to a Properties window for the adapter, with a Ports tab. On that Ports tab, both ports were set to AUTO, and I changed them to ETH.
It was the property window of the mellanox device that's listed under system devices (not sure how it's exactly called in the english version of windows :D). You will need the mellanox drivers to get that tab, it won't show up with the windows out of the box drivers.

Edit: I clicked on post insstead of preview...
Edit 2: fixed typos

But when I instead boot into Linux--specifically Proxmox, which is what I intend to use the card with--it's still being detected as an Infiniband adapter. Strange.
Yes, port configuration is usally saved as a driver setting somewhere in the registry. It should be possible to persist the configuration in the firmware, but I can't remember which tool and how the command line looks.
 
  • Like
Reactions: danb35

oneplane

Well-Known Member
Jul 23, 2021
848
485
63
If I'm not mistaken the 'registry' version on Linux would be something like setting the port type via connectx_port_config for OS-based port control, and you can change the firmware-default port type using the Mellanox Firmware Tools.

If you don't mind hacking about with init scripts, you could also use sysfs for on-the-fly reconfiguration, i.e.:

echo eth > /sys/bus/pci/devices/0000\:00\:00.0/mlx_port1 (replace the PCI device ID as needed)

Someone wrote up a Proxmox-specific guid for the OFED version of the driver: https://forums.servethehome.com/index.php?threads/install-mellanox-driver-proxmox-ve-5-1.17913/ but I havent' checked to see if the OFED drivers work with the MLX 2 type chips.

A quick search finds that your part number doesn't seem to be a known firmware configuration:Updating Firmware for ConnectX®-2 EN PCI Express Network Interface Cards (NICs) so that's odd.

Perhaps using a much older MFT_for Linux might help? (2.x version)
 
Last edited:
  • Like
Reactions: danb35

danb35

Member
Nov 25, 2017
34
4
8
44
Thanks for both of the latter two links. Since I'm not getting a link even under Windows (which does see the NIC in Ethernet mode), I'm waiting for delivery of another QSFP-to-SFP+ adapter. I'll dig back into this once I'm able to establish an Ethernet link with the card.
 

danb35

Member
Nov 25, 2017
34
4
8
44
OK, the adapter from eBay arrived today, and the NIC gets a link right away on Windows. But when I boot Proxmox on the same hardware, it's still seeing the card as an Infiniband adapter. Let's see if I can get either the very old or the open-source MFT to work with this card.
 

oneplane

Well-Known Member
Jul 23, 2021
848
485
63
OK, the adapter from eBay arrived today, and the NIC gets a link right away on Windows. But when I boot Proxmox on the same hardware, it's still seeing the card as an Infiniband adapter. Let's see if I can get either the very old or the open-source MFT to work with this card.
It is likely that in Windows it changes the port mode when the driver loads during startup. The same can be done in Proxmox.

echo eth > /sys/bus/pci/devices/0000\:00\:00.0/mlx_port1 (replace the PCI device ID as needed)
 
  • Like
Reactions: danb35

danb35

Member
Nov 25, 2017
34
4
8
44
echo eth > /sys/bus/pci/devices/0000\:00\:00.0/mlx_port1 (replace the PCI device ID as needed)
Thanks; that does result in the card appearing as an Ethernet interface (though with the property as mlx4_port1, and as mlx4_port2 for the second port). I'd like to get the firmware default set properly, but this should be a usable fallback if I can't. Install sysfsutils, edit sysfs.conf to specify those values, and pretty well good to go. The interface is up, and iperf3 reports pretty much full bandwidth.

The latest release of mstflint, just like the latest release of MFT, doesn't have support for the CX-2 cards. However, there's a RPM of version 3.7 in the repos for CentOS 7, so I think I'll be giving that a shot. But if I can't make that work, this may be the answer.
 

kiraciro

New Member
Feb 14, 2023
8
0
1
salve ragazzi ho avuto il vostro stesso problema e con i driver in dotazione sono riuscito ad avere la scheda in modalità ethernet.
Non trovo i driver però per togliere i triangoli e abilitare la scheda per windows
 

Attachments

oneplane

Well-Known Member
Jul 23, 2021
848
485
63
salve ragazzi ho avuto il vostro stesso problema e con i driver in dotazione sono riuscito ad avere la scheda in modalità ethernet.
Non trovo i driver però per togliere i triangoli e abilitare la scheda per windows
giphy.gif
Sorry, but while I think it looks Italian I can't actually read it:p can you post an English version so we can all collaborate?
 

kiraciro

New Member
Feb 14, 2023
8
0
1
hi guys I had your same problem and with the supplied drivers I managed to have the card in ethernet mode.
However, I can't find the drivers to remove the triangles and enable the card for windows
View attachment 27197
Sorry, but while I think it looks Italian I can't actually read it:p can you post an English version so we can all collaborate?
 

oneplane

Well-Known Member
Jul 23, 2021
848
485
63
hi guys I had your same problem and with the supplied drivers I managed to have the card in ethernet mode.
However, I can't find the drivers to remove the triangles and enable the card for windows
Can you check what the error code is? It might simply be the 'device could not start' code which might imply a driver problem or a firmware problem. Sometimes you can get better data using flint to see if it's the driver or the card having the issue.
 

kiraciro

New Member
Feb 14, 2023
8
0
1
I installed the dand35 driver in fact I managed to put the ports in eth mode..
surely, being the old card, windows 10 cannot find the drivers to start the ethernet mode.
Does anyone happen to have them in stock?
I'm having problems with the same card but mounted on esxi 6.5 .. I see it among the devices but not in the network card section.
I can't find mft for this type of board as the download doesn't exist on the site
 

TheRac25

New Member
May 30, 2023
12
0
1
salve ragazzi ho avuto il vostro stesso problema e con i driver in dotazione sono riuscito ad avere la scheda in modalità ethernet.
Non trovo i driver però per togliere i triangoli e abilitare la scheda per windows
this is usually a diver version mismatch between the driver that lives under system devices and the driver the lives under network adaptors