Appendix - BMC and eROT Upgrade Process for BlueField-2
To upgrade BlueField BMC firmware on a BlueField-2 device, follow this procedure:
Download openbmctool v1.22 and resolve dependencies.
sudo pip3 install paramiko
sudo pip3 install scp
Trigger BMC update.
python3 openbmctool.py -H <BF-BMC-IP> -U root -P <password> firmware flash bmc -f <path-to-signed-bmc-image>
After initiating the BMC firmware secure update, a new task is created. Example:
Attempting login... Uploading file to BMC Upload complete. Firmware activation is in progress. Please wait for activation task id="0" to get completed before rebooting the bmc. User root has been logged out
InfoBMC firmware update takes 15-20 mins .
Track the progress of the update by using the task Id received in the response above (i.e., 0) in your query and monitoring the value of the task’s TaskProgress field.
python3 openbmctool.py -H <BF-BMC-IP> -U root -P <password> task status -i <task_Id>
Before proceeding to other operations. Keep running this command until it outputs:
TaskState="Completed" TaskStatus="OK" TaskProgress="100"
Reset/reboot the BMC.
InfoThis step may be skipped if you intend to perform eROT update.
python3 openbmctool.py -H <BF-BMC-IP> -U root -P <password> firmware running_version
InfoWait a few seconds before attempting to log back into the BMC as it loses connection during and shortly after reboot.
Trigger eROT update.
python3 openbmctool.py -H <ip_address> -U root -P <BF-BMC-IP> apfirmware flash cec -f <path-to-signed-CEC-OTA-image-file>
A fter initiating the eROT update, the following indication is provided:
Uploading firmware image:
100.00
% Firmware updatefor
cec triggered successfully.Perform h ost power cycle for the eROT update to take effect:
sudo ipmitool power cycle