mlxfwmanager – Firmware Update and Query Tool
The mlxfwmanager is a firmware update and query utility which scans the system for available NVIDIA devices (only mst PCI devices) and performs the necessary firmware updates.
For further information on firmware update, please refer to Booting HCA Device in Livefish Mode.
The examples throughout the document use pci “bus.dev.fn” format. However, all the examples are inter-changeable with the mlxfwmanager -d /dev/mst/<device> format.
# [-d|--dev DeviceName] [-h|--help] [-v|--version] [--query] [--query-format Format] [-u|--update] [-i|--image-file FileName] [-D|--image-dir DirectoryName] [-f|--force] [-y|--yes] [--no] [--clear-semaphore] [--exe-rel-path] [-l|--list-content] [--archive-names] [--nofs] [--log] [-L|--log-file LogFileName] [--no-progress] [-o|--outfile OutputFileName] [--online] [--online query-psid PSIDs] [--key key] [--download DirectoryName] [--download-default
] [--get-downloadopt OPT] [--download-device Device] [--download-os OS] [--download-type Type] [--ssl-certificate Certificate] [--no_fw_ctrl]
where:
-d|--dev DeviceName | Perform operation for specified mst device(s). Run 'mst status' command to list the available devices. Multiple devices can be specified delimited by semicolons. A device list containing semicolons must be quoted. |
-h|--help | Show this message and exit. |
-v|--version | Show the executable version and exit. |
--query | Query device(s) info |
--query-format Format | (Query|Onlinequery)outputformat,XML|Text-defaultText |
-u|--update | Update firmware image(s) on the device(s). |
-i|--image-file FileName | Specified image file to use. |
-D|--image-dir DirectoryName | Specified directory instead of default to locate image files. |
-f|--force | Force image update |
-y|--yes | Answer is yes in prompts |
--no | Answer is no in prompts |
--clear-semaphore | Force clear the flash semaphore on the device, No command is allowed when this flag is used. NOTE: May result in system instability or flash corruption if the device or another application is currently using the flash. Exercise caution. |
--exe-rel-path | Use paths relative to the location of the executable |
-l|--list-content | List file/Directory content, used with --image-dir and --image-file flags |
--archive-names | Display archive names in listing |
--nofs | Burn image in a non failsafe manner |
--log | Create log file |
-L|--log-file LogFileName | Use specified log file |
--no_fw_ctrl | Do not use firmware Ctrl update |
--no-progress | Do not show progress |
-o|--outfile OutputFileName | Write to specified output file |
--online | Fetch required FW images online from NVIDIA server |
--online-query-psid PSIDs | Query FW info, PSID(s) are comma separated |
--key key | Key for custom download/update |
--download DirectoryName | Download files from server to a specified directory |
--download-default | Use Default values for download |
--get-download-opt OPT | Get download options for OS or Device Options are: OS, Device |
--download-device Device | Use '--get-download-opt Device' option to view available devices for device specific downloads |
--download-os OS | Only for self_extractor download: Use '--get-download-opt OS' option to view available OS for sfx download |
--download-type Type | MFA | self_extractor - default All |
--ssl-certificate Certificate | SSL certificate for secure connection |
To query a specific device, use the following command line:
# mlxfwmanager -d <device> --query
To query all the devices on the machine, use the following command line:
# mlxfwmanager --query
Examples:
Query the device.
mlxfwmanager -d 18
:00.0
--query
Querying Mellanox devices firmware ...
Device #1
:
----------
Device Type: ConnectX7
Part Number: CX713106AE-HEA_QP1_Ax
Description: NVIDIA ConnectX-7
HHHL adapter Card; 200GbE (default
mode) / NDR200 IB; Dual-port QSFP112; PCIe 5.0
x16 with x16 PCIe extension option; Crypto Enabled; Secure Boot Capable; IPN for
internal use
PSID: MT_0000000894
PCI Device Name: 18
:00.0
Base MAC: 1070fd875230
Versions: Current Available
FW 28.43
.0180
28.45
.1008
PXE N/A 3.7
.0500
UEFI N/A 14.38
.0016
Status: Update required
---------
Found 1
device(s) requiring firmware update. Please use -u flag to perform the update.
Query all the devices.
Querying Mellanox devices firmware ...
Device #1
:
----------
Device Type: ConnectX6
Part Number: MCX653106A-ECA_Ax
Description: ConnectX-6
VPI adapter card; H100Gb/s (HDR100; EDR IB and 100GbE); dual-port QSFP56; PCIe3.0
x16; tall bracket; ROHS R6
PSID: MT_0000000224
PCI Device Name: 0000
:04
:00.0
Base GUID: b8599f030023f954
Versions: Current Available
FW 20.43
.1014
20.43
.1014
PXE 3.7
.0500
3.7
.0500
UEFI 14.36
.0016
14.36
.0016
Status: Up to date
Device #2
:
----------
Device Type: ConnectX6LX
Part Number: MCX631102AN-ADA_Ax
Description: ConnectX-6
Lx EN adapter card; 25GbE ; Dual-port SFP28; PCIe 4.0
x8; No Crypto
PSID: MT_0000000531
PCI Device Name: 0000
:07
:00.0
Base GUID: 0c42a1030060614c
Base MAC: 0c42a160614c
Versions: Current Available
FW 26.45
.0386
26.45
.1008
PXE 3.7
.0500
3.7
.0500
UEFI 14.38
.0014
14.38
.0016
Status: Update required
Device #3
:
----------
Device Type: ConnectX5
Part Number: MCX556A-ECA_Ax
Description: ConnectX-5
VPI adapter card; EDR IB (100Gb/s) and 100GbE; dual-port QSFP28; PCIe3.0
x16; tall bracket; ROHS R6
PSID: MT_0000000008
PCI Device Name: 0000
:21
:00.0
Base GUID: 248a0703008db026
Versions: Current Available
FW 16.35
.3004
16.35
.3004
PXE N/A 3.6
.0902
UEFI N/A 14.29
.0015
Status: Up to date
Device #4
:
----------
Device Type: ConnectX4
Part Number: MCX455A-FCA_Ax
Description: ConnectX-4
VPI adapter card; FDR IB (56Gb/s) and 40GbE; single-port QSFP28; PCIe3.0
x16; ROHS R6
PSID: MT_2160111021
PCI Device Name: 0000
:24
:00.0
Base GUID: 8e0b01e681d98270
Versions: Current Available
FW 12.28
.2006
12.28
.2006
PXE 3.6
.0102
3.6
.0102
UEFI 14.21
.0017
14.21
.0017
Status: Up to date
Device #5
:
----------
Device Type: ConnectX6LX
Part Number: MCX631102AN-ADA_Ax
Description: ConnectX-6
Lx EN adapter card; 25GbE ; Dual-port SFP28; PCIe 4.0
x8; No Crypto
PSID: MT_0000000531
PCI Device Name: 0000
:0a:00.0
Base GUID: 0c42a10300a981fe
Base MAC: 0c42a1a981fe
Versions: Current Available
FW 26.45
.0386
26.45
.1008
PXE 3.7
.0500
3.7
.0500
UEFI 14.38
.0014
14.38
.0016
Status: Update required
---------
Found 2
device(s) requiring firmware update. Please use -u flag to perform the update.
Query XML:
mlxfwmanager --query-format xml
<Devices>
<Device pciName="0000:04:00.0"
type="ConnectX6"
psid="MT_0000000224"
partNumber="MCX653106A-ECA_Ax"
>
<Versions>
<FW current="20.43.1014"
available="20.43.1014"
/>
<PXE current="3.7.0500"
available="3.7.0500"
/>
<UEFI current="14.36.0016"
available="14.36.0016"
/>
</Versions>
<GUIDs Base_Guid="b8599f030023f954"
/>
<Status>Up to date</Status>
<Description>ConnectX-6
VPI adapter card; H100Gb/s (HDR100; EDR IB and 100GbE); dual-port QSFP56; PCIe3.0
x16; tall bracket; ROHS R6</Description>
</Device>
<Device pciName="0000:07:00.0"
type="ConnectX6LX"
psid="MT_0000000531"
partNumber="MCX631102AN-ADA_Ax"
>
<Versions>
<FW current="26.45.0386"
available="26.45.1008"
/>
<PXE current="3.7.0500"
available="3.7.0500"
/>
<UEFI current="14.38.0014"
available="14.38.0016"
/>
</Versions>
<MACs Base_Mac="0c42a160614c"
/>
<GUIDs Base_Guid="0c42a1030060614c"
/>
<Status>Update required</Status>
<Description>ConnectX-6
Lx EN adapter card; 25GbE ; Dual-port SFP28; PCIe 4.0
x8; No Crypto</Description>
</Device>
<Device pciName="0000:21:00.0"
type="ConnectX5"
psid="MT_0000000008"
partNumber="MCX556A-ECA_Ax"
>
<Versions>
<FW current="16.35.3004"
available="16.35.3004"
/>
<PXE current="N/A"
available="3.6.0902"
/>
<UEFI current="N/A"
available="14.29.0015"
/>
</Versions>
<GUIDs Base_Guid="248a0703008db026"
/>
<Status>Up to date</Status>
<Description>ConnectX-5
VPI adapter card; EDR IB (100Gb/s) and 100GbE; dual-port QSFP28; PCIe3.0
x16; tall bracket; ROHS R6</Description>
</Device>
<Device pciName="0000:24:00.0"
type="ConnectX4"
psid="MT_2160111021"
partNumber="MCX455A-FCA_Ax"
>
<Versions>
<FW current="12.28.2006"
available="12.28.2006"
/>
<PXE current="3.6.0102"
available="3.6.0102"
/>
<UEFI current="14.21.0017"
available="14.21.0017"
/>
</Versions>
<GUIDs Base_Guid="8e0b01e681d98270"
/>
<Status>Up to date</Status>
<Description>ConnectX-4
VPI adapter card; FDR IB (56Gb/s) and 40GbE; single-port QSFP28; PCIe3.0
x16; ROHS R6</Description>
</Device>
<Device pciName="0000:0a:00.0"
type="ConnectX6LX"
psid="MT_0000000531"
partNumber="MCX631102AN-ADA_Ax"
>
<Versions>
<FW current="26.45.0386"
available="26.45.1008"
/>
<PXE current="3.7.0500"
available="3.7.0500"
/>
<UEFI current="14.38.0014"
available="14.38.0016"
/>
</Versions>
<MACs Base_Mac="0c42a1a981fe"
/>
<GUIDs Base_Guid="0c42a10300a981fe"
/>
<Status>Update required</Status>
<Description>ConnectX-6
Lx EN adapter card; 25GbE ; Dual-port SFP28; PCIe 4.0
x8; No Crypto</Description>
</Device>
</Devices>
Supports listing the contents of images archive.
When running this command, the tool will list all firmware images within this PLDM package for each image it displays.
Usage:
mlxfwmanager -i <pldm-path> --list-content
When running this command, the tool will list all firmware images within this mfa package.
Usage:
mlxfwmanager -i <mfa-file> --list-content
For each image, it displays the following: PSID, Part Number, firmware version, and device description.