NVIDIA Firmware Tools (MFT) Documentation v4.28
NVIDIA Firmware Tools (MFT) Documentation v4.28


This script is used to start mst service and to stop it. It is also used in other operations with NVIDIA devices, such as in resetting or enabling remote access.


mst <command> [switches] 

mst Commands and Switches Description - Linux

mst start [--with_msix] [-- with_unknown] [--with_i2cdev] [-- with_lpcdev] [--with_fpga] [-- with_fpga_fw_access

Create special files that represent NVIDIA devices in directory /dev/mst. Load appropriate kernel modules and saves PCI configuration headers in directory /var/mst_pci. After successfully completion of this command the MST driver is ready to work. You can configure the start command by editing the configuration file: /etc/mft/mst.conf, for example you can rename you devices.


  • --with_msix: Create the msix device.

  • --with_unknown: Do not check if the device ID is supported.

  • --with_i2cdev: Create Embedded I2C master

  • --with_fpga: Create MST device for the attached FPGA card (Access via Driver)

  • --with_fpga_fw_access: Create an extended MST device for the attached FPGA (Access via Firmware)

mst stop [--force]

Stop the MST driver service, remove all special files/ directories and unload kernel modules.


  • --force: Force try to stop mst driver even if it's in use.

mst restart [--with_msix] [-- with_unknown] [--with_i2cdev] [--with_lpcdev] [--with_fpga] [--with_fpga_fw_access]

Just like "mst stop" followed by "mst start [--with_msix] [--with_unknown] [--with_i2cdev] [--with_lpcdev] [-- with_fpga] [--with_fpga_fw_access]"

mst server start [port-p <port> [-s <passphrase>]

Start mst MST server to allow incoming connection. The default port is 23108.

Use the '-s' flag to define the passphrase used by the server.

If no passphrase is provided, a random one will be generated.

mst server stop

Stop the mst server.

mst remote add <hostname>[:port] [-s <passphrase>]

Establish a connection with a specified host on a specified port. The default port is 23108.

Add devices on a remote peer to a local devices list.

<hostname> may be the host name as well as an IP address.

Use the '-s' flag to provide the host's passphrase.

If no passphrase is provided, you will be prompted to insert one.

mst remote del <hostname>[:port]

Remove all remote devices on specified hostname.

<hostname>[:port] should be specified exactly as in the "mst remote add" command.

mst ib add [OPTIONS] [local_hca_id] [local_hca_port]

Add devices found in the IB fabric for inband access. Requires OFED installation and an active IB link.

If local_hca_id and local_hca_port are given, the IB subnet connected

to the given port is scanned. Otherwise, the default subnet is scanned.


  • --discover-tool <discover-tool>: The tool that is used to discover the fabric.

Supported tools: ibnetdiscover, ibdiagnet. default: ibdiagnet

  • --add-non-mlnx: Add non NVIDIA nodes.

  • --topo-file <topology-file>: A prepared topology file which describes the fabric. For ibnetdiscover: provide an output of the tool. For ibdiagnet: provide LST file that ibdiagnet generates.

  • --use-ibdr: Access by direct route MADs. Available only when using ibnetdiscover tool, for SwitchX and ConnectIB devices.

NOTE: If a topology file is specified, device are taken from it. Otherwise, a discover tool is run to discover the fabric.

mst ib del

Remove all inband devices.

mst cable add [OPTIONS] [params]

Add the cables that are connected to 5th generation devices.

There is an option to add the cables found in the IB fabric for Cable Info access, requires WinOF-2 installation and active IB links. If local_hca_id and local_hca_port are given, the IB subnet connected to the given port is scanned. Otherwise, all the devices will be scanned.


--with_ib: Add the inband cables in addition to the local PCI devices.

params: [local_hca_id] [local_hca_port]

mst cable del

Remove all cable devices.

mst status

Print current status of NVIDIA devices


  • -v run with high verbosity level (print more info on each device)

mst save

Save PCI configuration headers in directory /var/mst_pci.

mst load

Load PCI configuration headers from directory /var/mst_pci.

mst version

Print the version info

Edit the /etc/mft/mst.conf configuration file to configure the start operation in Linux (only).

The configuration file consists of lines of rules. Every line will be a rule for mst start. It must be valid, and the rules should be unique. There should also be no duplication of new names and/or serials.

The rule general format is the following:


mst start Supported OPCODES





renames mst devices

  • Rule format: RENAME $TYPE $NEW_NAME $ID

  • Supported types: # MTUSB (where $ID is the iSerial)

  • Example: RENAME USB my 0x2A4C.

  • Effect: MTUSB with serial 0x2A4C will be renamed to /dev/mst/mymtusb-1 (always mtusb-1 will be concatenated to the new name).

To start the mst driver service:


# mst start Starting MST (Mellanox Software Tools) driver set Loading MST PCI module - Success Loading MST PCI configuration module - Success Create devices MTUSB-1 USB to I2C Bridge - Success

To stop the service:


Success# mst stop Stopping MST (Mellanox Software Tools) driver set Unloading MST PCI module - Success

To print the current status of NVIDIA devices:


# mst status MST modules: ------------ MST PCI module loaded MST PCI configuration module loaded   MST devices: ------------ /dev/mst/mt4099_pciconf0 - PCI configuration cycles access. domain:bus:dev.fn=0000:0b:00.0 addr.reg=88 data.reg=92 Chip revision is: 01 /dev/mst/mt4099_pci_cr0 - PCI direct access. domain:bus:dev.fn=0000:0b:00.0 bar=0xd2600000 size=0x100000 Chip revision is: 01 /dev/mst/mtusb-1 - USB to I2C adapter as I2C master iSerial = 0x1683

To show the devices status with detailed information


# mst status -v PCI devices: DEVICE_TYPE MST PCI RDMA NET NUMA ConnectX4(rev:0) /dev/mst/mt4115_pciconf0 08:00.0 mlx5_0 net-ib2 -1 ConnectX4(rev:0) /dev/mst/mt4115_pciconf0.1 08:00.1 mlx5_1 net-ib3 -1 ConnectIB(rev:0) /dev/mst/mt4113_pciconf0 0b:00.0 mlx5_2 net-ib4, net-ib5 -1 ConnectX3(rev:1) /dev/mst/mt4099_pciconf0 ConnectX3(rev:1) /dev/mst/mt4099_pci_cr0 0e:00.0 mlx4_0 net-ib0, net-ib1 -1 I2C devices: ------------------- MST Serial /dev/mst/mtusb-1 0x1B5C

In case the device has Function Per Port (FPP) enabled on it, a new device will appear in the `mst status -v` output with information about the second physical function. Example:


DEVICE_TYPE MST PCI RDMA NET NUMA ConnectX4(rev:0) /dev/mst/mt4115_pciconf0 07:00.0 mlx5_4 net-ib4 -1 ConnectX4(rev:0) /dev/mst/mt4115_pciconf0.1 07:00.1 mlx5_5 net-ib5 -1

© Copyright 2024, NVIDIA. Last updated on May 15, 2024.