mpssflash — A tool to update Flash memory and System Management Controller firmware on Intel(R) Xeon Phi(TM) coprocessors.
mpssflash is a tool to query the state of flash memory on Intel® Xeon Phi™ coprocessors (also known as Many Integrated Core or MIC), and update its contents as well as the firmware of onboard System Management Controller (SMC).
mpssflash update
Flash memory and SMC firmware contents may be modified by using the update command. This command must be run when the device is in the ready state. The micctrl command may be used to put the device into the ready state prior to issuing the update request:
# micctrl -r [device] # micctrl -w [device] mic0: ready
The action depends on the content of the image file that is passed with the <file> argument, or selected by the rules specified later in this document. If the file contains two images (Flash and SMC firmware), then both updates are attempted. Otherwise, only the available image is updated. Note that the files are usually saved with .rom extension for Flash-only images, .smc for SMC firmware, and .rom.smc for both.
The --device argument may be used to specify a single device ID, a comma-separated list of device IDs, or all to denote all MIC devices present on the system. This option may be omitted on a single-card system, in which case the only available device is used.
Note: The behavior of prompting for reboot at the end of a successful update is now discontinued. The reason is that a flash update requires a cold boot, but a warm-reboot may have been specified as a boot parameter.
For SMC firmware versions 1.7 and earlier, an SMC boot loader update is necessary. Use the --smcbootloader option with the update command to update the SMC boot loader, in addition to the SMC image. If --smcbootloader is specified on the command line of a flash update operation, then mpssflash will first look for the highest compatible version of the SMC boot loader image in the /usr/share/mpss/flash directory. If no such image is found, then the operation will fail. If the operation is successful, then mpssflash will attempt to use one of the following (in order):
Note that the compatibility check may be skipped to allow a user to perform an SMC firmware upgrade alone (without flash upgrade), along with the SMC boot loader modification. However, the user should make sure the SMC image is actually compatible with the device as there may be no way for mpssflash to determine if the given image is compatible.
If any of these operations fail, then the update will fail and the SMC boot loader will not be modified. Otherwise, the SMC boot loader will be modified first, followed by an update of the flash and/or SMC images.
mpssflash version
This command may be used to display the flash firmware version that is currently present on the installed device(s), or from an image file. When reading physical flash, this command must be executed with the specified devices in the ready state. In this case, the device is first put into maintenance mode, the flash is read, and finally reset back to the ready state.
Update the Intel® Xeon Phi™ coprocessor flash with the given flash image file.
Get the version of the flash image from the specified file, or from the specified device.
Save the flash image from the given device into the specified file.
Get the flash device vendor information.
Check if the specified flash image is compatible with the given device.
Example 1. Updating the flash
# ./mpssflash update --device 0 --file /usr/share/mpss/flash/EXT_HP2_B0_0375-02.rom mic0: Flash read in progress mic0: Flash read successful mic0: Flash update in progress mic0: Flash update successful mic0: Resetting #
Example 2. Getting version information
# mpssflash version --device all mic0: Version: 2.1.02.0375 mic1: Version: 2.1.02.0375 #
The flash version may also be obtained from an image file:
# mpssflash version --file /usr/share/mpss/flash/EXT_HP2_A0_0375-02.rom.smc 2.1.02.0375 #
mpssflash exits with status 0 if the operation succeeds on all specified devices, otherwise it returns with a non-zero status.