mx-mft 用户手册
概述
墨芯 AI 计算卡上的固件分为板载固件和动态加载的固件两个部分。板载固件是存储在计算卡 Flash 上的固件,又分为板卡设备固件和板卡上的 MCU 固件。mx-mft 是用于管理墨芯 AI 计算卡设备固件的工具,您可使用 mx-mft 查询设备固件版本、给设备加载动态固件、重启设备、更新板载设备固件和 MCU 固件。
前提条件
在主机上安装 SOLA。具体的步骤,请参见SOLA Toolkit 安装指南。 安装 SOLA 后,mx-mft 的二进制文件位于/usr/bin
目录下。
命令说明
执行 mx-mft --help
命令获取 mx-mft 的使用方法:
$ mx-mft --help
mx-mft(V1.15) avaliable commands:
mx-mft status <id> : show device status
mx-mft boot <id> <firmware package>: load bootimage for devices
mx-mft reboot <id> : reboot device
mx-mft mcu-ota <id> [<fw_file_path>]: ota devices mcu fw
mx-mft update <id> <firmware package>: update bootloader for devices
for command detail help, use "mx-mft -h <command>"
for mx-mft version information, use "mx-mft -v"
mx-mft 命令支持以下选项:
选项 | 说明 |
---|---|
-v | 查看 mx-mft 的版本信息。 |
status |
显示设备的状态和版本信息。如不指定设备 id,则显示所有设备的状态和版本信息。 |
boot |
对设备加载固件。 |
update |
更新板卡设备固件。 注意: 您需要获取 root 权限后才能更新板卡固件。卡处于 bootloader 模式时才能更新卡的固件,如果卡已经加载动态固件,请使用 mx-mft reboot 命令使卡重新启动到 bootloader 模式。固件升级可以不加 -f 参数,固件降级和平级更新则需要增加-f 参数。 |
reboot |
重启设备,使设备进入 bootloader 模式。 |
mcu-ota |
更新板卡上 MCU 的固件。 注意:仅 S30 计算卡、S40 计算卡和S40AC计算卡支持此功能,墨芯其他计算卡不支持此功能。 |
说明:
device_id:设备的 ID,参数可以类似是 0 或者 0-2(表示 0,1,2 这 3 个设备),或者是 all(表示所有的设备)
firmware package:墨芯发布的固件包压缩文件,例如 moffett-antoum-V3.110.17-20250331.tar.gz
fw_file_path:墨芯发布的 MCU 固件文件的路径,例如 /usr/local/sola/driver/firmware/ota-test/mcu_fw.tar.gz
使用示例
目前发布包 /usr/local/sola/driver/firmware/ota-test 目录下的压缩包是用来做固件更新测试的固件,仅用于测试目的。如果您烧录了该测试固件,请在测试完成后烧录回/usr/local/sola/driver/firmware/目录下的固件压缩包。
降级固件
查询当前的固件版本。
$ mx-qual list | grep "Firmware version" Firmware version: 1.0.17 Firmware version: 1.0.17 Firmware version: 1.0.17
重启设备,使设备进入 bootloader 状态。
$ sudo mx-mft reboot all
获取 V1.0.15 版本的固件压缩包:如果您的宿主机上已存在该版本固件压缩包,请直接使用;如果没有,请执行下文命令下载。
$ wget https://moffett-oss-bucket.tos-cn-shanghai.volces.com/driver/firmware/moffett-antoum-V3.91.15-20241219.tar.gz
降级板载的设备固件到 V1.0.15 版本。
#请以实际文件名和文件路径为准 $ sudo mx-mft update all ./moffett-antoum-V3.91.15-20241219.tar.gz -f Package bootloader version info: version: V1.0.15 type: Release build time: Dec 19 2024 19:17:46 Device 0 info: SN: 2024083080112 PN: 00S30-00A PCI bus: 0000:67:00.0 Mode: Bootloader Bootloader version info: version: V1.0.16 type: Release build date: Jan 8 2025 active slot: B Device 1 info: SN: 2024083080112 PN: 00S30-00A PCI bus: 0000:68:00.0 Mode: Bootloader Bootloader version info: version: V1.0.16 type: Release build date: Jan 8 2025 active slot: B Device 2 info: SN: 2024083080112 PN: 00S30-00A PCI bus: 0000:69:00.0 Mode: Bootloader Bootloader version info: version: V1.0.16 type: Release build date: Jan 8 2025 active slot: B ********************************************************************************** ** ** ** Important: Don't power off or reboot the machine during the update process ** ** ** ********************************************************************************** Start updating bootloader for device 0-2: 0 (00S30-00A/2024083080112 0000:67:00.0): bootloader update success, version is V1.0.15 now 1 (00S30-00A/2024083080112 0000:68:00.0): bootloader update success, version is V1.0.15 now 2 (00S30-00A/2024083080112 0000:69:00.0): bootloader update success, version is V1.0.15 now Total 3 devices update bootloader, all success
如果出现类似下文需要关闭服务器的提示, 则需要将服务器关机后重启以使用新的设备固件。
Important: Please power off this server to use device new firmware
如果未提示需要关闭服务器,则使用下面的命令重新启动 mx-daemon 服务,并等待 1 分钟左右后再查询新的固件版本。
$ sudo systemctl restart mx-daemon
查询新的固件版本。
$ mx-qual list | grep "Firmware version" Firmware version: 1.0.15 Firmware version: 1.0.15 Firmware version: 1.0.15
升级固件
查询当前的固件版本。
$ mx-qual list | grep "Firmware version" Firmware version: 1.0.15 Firmware version: 1.0.15 Firmware version: 1.0.15
重启设备,使设备进入 bootloader 状态。
$ sudo mx-mft reboot all
更新板载的设备固件到 V1.0.17 版本。
# 以实际文件名为准 $ sudo mx-mft update all /usr/local/sola/driver/firmware/moffett-antoum-V3.110.17-20250331.tar.gz Package bootloader version info: version: V1.0.17 type: Release build time: Mar 31 2025 17:50:40 Device 0 info: SN: 2024083080112 PN: 00S30-00A PCI bus: 0000:67:00.0 Mode: Bootloader Bootloader version info: version: V1.0.15 type: Release build date: Dec 19 2024 active slot: B Device 1 info: SN: 2024083080112 PN: 00S30-00A PCI bus: 0000:68:00.0 Mode: Bootloader Bootloader version info: version: V1.0.15 type: Release build date: Dec 19 2024 active slot: B Device 2 info: SN: 2024083080112 PN: 00S30-00A PCI bus: 0000:69:00.0 Mode: Bootloader Bootloader version info: version: V1.0.15 type: Release build date: Dec 19 2024 active slot: B ************************************************************************ ** ** ** Don't power off or reboot the server during the update process ** ** ** ************************************************************************ Start updating bootloader for device 0-2: 0 (00S30-00A/2024083080112 0000:67:00.0): bootloader update success, version is V1.0.17 now 1 (00S30-00A/2024083080112 0000:68:00.0): bootloader update success, version is V1.0.17 now 2 (00S30-00A/2024083080112 0000:69:00.0): bootloader update success, version is V1.0.17 now Total 3 devices update bootloader, all success
如果出现类似下文需要关闭服务器的提示, 则需要将服务器关机后重启以使用新的设备固件。
Important: Please power off this server to use device new firmware
如果未提示需要关闭服务器,则使用下面的命令重新启动 mx-daemon 服务,并等待 1 分钟左右后再查询新的固件版本。
$ sudo systemctl restart mx-daemon
查询新的固件版本。
$ mx-qual list | grep "Firmware version" Firmware version: 1.0.17 Firmware version: 1.0.17 Firmware version: 1.0.17
加载设备的动态固件
查看设备状态。
$ mx-mft status 0 #卡尚未加载动态固件状态下:其中Mode: Bootloader表示卡处于bootloader模式 Device 0 info: SN: 2024083080112 PN: 00S30-00A PCI bus: 0000:67:00.0 Mode: Bootloader Bootloader version info: version: V1.0.17 type: Release build date: Mar 31 2025 active slot: A #卡已经加载动态固件状态下:其中Mode: Kernel UMD表示卡已经加载完成动态固件 Device 0 info: SN: 2024083080112 PN: 00S30-00A PCI bus: 0000:67:00.0 Mode: Kernel UMD Firmware version: V1.0.17
如果设备未处于 Bootloader 状态,请重启设备,使设备进入 Bootloader 状态。
$ sudo mx-mft reboot 0
加载设备的动态固件。
#以实际文件路径和文件名为准 $ mx-mft boot 0 /usr/local/sola/driver/firmware/moffett-antoum-V3.110.17-20250331.tar.gz Extracting boot image... package boot image version info: version: V3.110 build time: Mar 31 2025 17:50:40 boot image check OK, image size: 46.77MB start loading boot image for device 0: 0 (00S30-00A/2024083080112 0000:67:00.0): Boot image load success total 1 device loading boot image, all success
降级板卡 MCU固件
注意:
在 S30 板卡 和 S40 板卡上均支持板卡 MCU 的升级和降级。
降级板卡固件时,S30 的 MCU 版本必须在 4X05 及以上版本。
板卡需要在加载动态固件后才能更新 MCU 的固件,如果板卡尚未加载动态固件,请使用
mx-mft boot
命令加载卡的固件。
下文以降级 MCU 版本为例,演示了更新板卡 MCU 固件的流程:
查询设备 0 1 2 的 MCU 版本。
$ mx-smi select -f mcu_version -i 0 1 2 mcu_version 4X011 4X011 4X011
导入固件二进制文件,对设备 0 1 2 的 MCU 版本降级。
#以ota-test目录下的文件名为准 $ mx-mft mcu-ota 0-2 /usr/local/sola/driver/firmware/ota-test/mcu_fw.tar.gz device 0 mcu ota updating... device 0 mcu ota success! device 1 mcu ota updating... deivce 1 mcu ota success! device 2 mcu ota updating... deivce 2 mcu ota success!
降级流程结束后执行以下命令,查看当前 MCU 版本。
$ mx-smi select -f mcu_version -i 0 1 2 mcu_version 4X08 4X08 4X08
说明:
S30 计算卡的 MCU 版本默认降级为 4x08 或 2V39。
S40 计算卡的 MCU 版本默认降级为 1V39。
S40AC 计算卡的 MCU 版本默认降级为 3V00。
升级板卡 MCU 固件
注意:
在 S30 板卡 和 S40 板卡上均支持板卡 MCU 的升级和降级。
升级板卡固件时,S30 的 MCU 版本必须在 4X04 及以上版本。
板卡需要在加载动态固件后才能更新 mcu 的固件,如果板卡尚未加载动态固件,请使用
mx-mft boot
命令加载卡的固件。
查询设备 0 1 2 的 MCU 版本。
$ mx-smi select -f mcu_version -i 0 1 2 mcu_version 4X08 4X08 4X08
重启设备,使设备进入 bootloader 模式。
$ sudo mx-mft reboot 0-2 request device 0(0:03:00.0) reboot success request device 1(0:04:00.0) reboot success request device 2(0:05:00.0) reboot success wait devices rebooting... remove devices from pci bus... rescan all devices... device 0 reboot success device 1 reboot success device 2 reboot success
执行以下命令,升级板卡 MCU 固件,默认升级为当前发布的最新版本。
$ mx-mft boot 0-2 /usr/local/sola/driver/firmware/moffett-antoum-V3.110.17-20250331.tar.gz Extracting boot image... package boot image version info: version: V3.110 build time: Mar 31 2025 17:50:40 boot image check OK, image size: 46.77MB start loading boot image for device 0-2: 0 (00S30-00A/2024083080112 0000:67:00.0): Boot image load success 1 (00S30-00A/2024083080112 0000:68:00.0): Boot image load success 2 (00S30-00A/2024083080112 0000:69:00.0): Boot image load success total 3 device loading boot image, all success
升级流程结束后执行以下命令,查看当前 MCU 版本。
$ mx-smi select -f mcu_version -i 0 1 2 mcu_version 4X011 4X011 4X011
说明:
S30 计算卡的 MCU 版本默认升级为 4X011 或 2V48。
S40 计算卡的 MCU 版本默认升级为 1V48。
S40AC 计算卡的 MCU 版本默认升级为 3V02。