Updating Firmware After Installation

Linux Kernel Upstream Release Notes v5.17

The firmware can be updated using one of the following methods:

To update the device online on the machine from Mellanox site, use the following command line:

Copy
Copied!
            

mlxfwmanager --online -u -d <device>

Example:

Copy
Copied!
            

mlxfwmanager --online -u -d 0000:09:00.0 Querying Mellanox devices firmware ...   Device #1: ----------   Device Type: ConnectX3 Part Number: MCX354A-FCA_A2-A4 Description: ConnectX-3 VPI adapter card; dual-port QSFP; FDR IB (56Gb/s) and 40GigE; PCIe3.0 x8 8GT/s; RoHS R6 PSID: MT_1020120019 PCI Device Name: 0000:09:00.0 Port1 GUID: 0002c9000100d051 Port2 MAC: 0002c9000002 Versions: Current Available FW 2.32.5000 2.33.5000   Status: Update required --------- Found 1 device(s) requiring firmware update. Please use -u flag to perform the update.

In case you ran the mlnxofedinstall script with the ‘--without-fw-update’ option or you are using an OEM card and now you wish to (manually) update firmware on your adapter card(s), you need to perform the steps below. The following steps are also appropriate in case you wish to burn newer firmware that you have downloaded from Mellanox Technologies’ Web site (i.e., nvidia.com/en-us/networking/ → Support → Support → Firmware Download).

  1. Get the device’s PSID.

    Copy
    Copied!
                

    mlxfwmanager_pci | grep PSID PSID: MT_1210110019

  2. Download the firmware BIN file from the Mellanox website or the OEM website.

  3. Burn the firmware.

    Copy
    Copied!
                

    mlxfwmanager_pci -i <fw_file.bin>

  4. Reboot your machine once the firmware burning is completed.

As of MLNX_OFED v3.1-x.x.x, firmware can be automatically updated upon system boot.
The firmware update package (mlnx-fw-updater) is installed in the “/opt/mellanox/mlnx-fw-updater” folder, and the openibd service script can invoke the firmware update process if requested on boot.
If the firmware is updated, the following message will be printed to the system’s standard logging file:

Copy
Copied!
            

fw_updater: Firmware was updated. Please reboot your system for the changes to take effect.

Otherwise, the following message will be printed:

Copy
Copied!
            

fw_updater: Didn't detect new devices with old firmware.

Please note, this feature is disabled by default. To enable the automatic firmware update upon system boot, set the following parameter to “yes” “RUN_FW_UPDATER_ONBOOT=yes” in the openibd service configuration file “/etc/infiniband/openib.conf”.
You can opt to exclude a list of devices from the automatic firmware update procedure. To do so, edit the configurations file “/opt/mellanox/mlnx-fw-updater/mlnx-fw-updater.conf” and provide a comma separated list of PCI devices to exclude from the firmware update.
Example:

Copy
Copied!
            

MLNX_EXCLUDE_DEVICES="00:05.0,00:07.0"

The firmware and FPGA update package (mlnx-fw-updater) are installed under “/opt/mellanox/mlnx-fw-updater” folder.
The latest FW and FPGA update package can be downloaded from nvidia.com/en-us/networking/ Products → Adapters → Smart Adapters → Innova IPsec → Download tab.

Warning

The current update package available on nvidia.com/en-us/networking/ does not support the script below. An update package that supports this script will become available in a future release.

You can run the following update script using one of the modes below:

Copy
Copied!
            

/opt/mellanox/mlnx-fw-updater/mlnx_fpga_updater.sh

  • With -u flag to provide URL to the software package (tarball). Example:

    Copy
    Copied!
                

    ./mlnx_fpga_updater.sh -u http://www.mellanox.com/downloads/fpga/ipsec/Innova_IPsec_<version>.tgz

  • With -t flag to provide the path to the downloaded tarball. Example:

    Copy
    Copied!
                

    ./mlnx_fpga_updater.sh -t <Innova_IPsec_bundle_file.tgz>

  • With -p flag to provide the path to the downloaded and extracted tarball. Example:

    Copy
    Copied!
                

    ./mlnx_fpga_updater.sh -p <Innova_IPsec_extracted_bundle_directory>

    For more information on the script usage, you can run mlnx_fpga_updater.sh -h.

    Warning

    It is recommended to perform firmware and FPGA upgrade on Innova IPsec cards using this script only.

© Copyright 2023, NVIDIA. Last updated on May 23, 2023.