62
mstfwreset for Socket-Direct NICs
To reset the firmware on a socket-direct NIC, run the tool on all PCI devices related to the same NIC
with function 0 simultaneously.
See the following example on a Linux OSs:
$ lspci -d 15b3:
08
:
00.0
Infiniband controller: Mellanox Technologies MT27800 Family [ConnectX-
5
]
08
:
00.1
Infiniband controller: Mellanox Technologies MT27800 Family [ConnectX-
5
]
0e:
00.0
Infiniband controller: Mellanox Technologies MT27800 Family [ConnectX-
5
]
0e:
00.1
Infiniband controller: Mellanox Technologies MT27800 Family [ConnectX-
5
]
* All PCI devices above are related to the same NIC
* Run mstfwreset on all the PCI devices with function
0
(
08
:
00.0
, 0e:
00.0
)
$ mstfwreset -d
08
:
00.0
reset -y &
$ mstfwreset -d 0e:
00.0
reset -y &
mstfwreset for SmartNICs
To reset the firmware on a SmartNIC, run the tool simultaneously on the host and on the NIC's
integrated Arm processor.
Examples of mstfwreset Usage
To query device reset level after firmware update use the following command line:
# mstfwreset -d
41
:
00.0
query
Supported reset levels for loading firmware on device, 41:00.0
Example:
Reset-levels:
0
: Driver, PCI link, network link will remain up (
"live-Patch"
) -Not Supported
3
: Driver restart and PCI reset -Supported (
default
)
4
: Warm Reboot -Supported
5
: Cold Reboot -Supported
Reset-types (relevant only
for
reset-levels
3
,
4
):
0
: Full chip reset -Supported (
default
)
1
: Phy-less reset (
"port-alive"
- network link will remain up) -Not Supported
Reset-sync (relevant only
for
reset-level
3
):
0
: Tool is the owner -Supported (
default
)
1
: Driver is the owner -Supported
To reset device in order to load new firmware, use the following command line:
# mstfwreset -d
41
:
00.0
reset
Example
3
: Driver restart and PCI reset
Continue with reset?[y/N] y
-I- Stopping Driver -Done
-I- Sending Reset Command To Fw -Done
-I- Resetting PCI -Done
-I- Starting Driver -Done
-I- Restarting MST -Done
-I- FW was loaded successfully.
Firmware reset will trigger the adapter card’s reset which will reboot the Arm processor.