Updating the BMC#
Create a
update_bmc.json
file with the following contents:{ "Targets" :["/redfish/v1/UpdateService/FirmwareInventory/HostBMC_0"] }
Update the firmware:
nvfwupd -t ip=<bmc-ip-address> user=<bmc-username> password=<bmc-password> update_fw \ -p nvfw_DGX_250220.1.0.fwpkg -y -s update_bmc.json
Example Output
FW recipe: ['nvfw_DGX_250220.1.0.fwpkg'] {"@odata.type": "#UpdateService.v1_6_0.UpdateService", "Messages": [{"@odata.type": "#Message.v1_0_8.Message", "Message": "A new task /redfish/v1/TaskService/Tasks/2 was created.", "MessageArgs": ["/redfish/v1/TaskService/Tasks/2"], "MessageId": "Task.1.0.New", "Resolution": "None", "Severity": "OK"}, {"@odata.type": "#Message.v1_0_8.Message", "Message": "The action UpdateService.MultipartPush was submitted to do firmware update.", "MessageArgs": ["UpdateService.MultipartPush"], "MessageId": "UpdateService.1.0.StartFirmwareUpdate", "Resolution": "None", "Severity": "OK"}]} FW update started, Task Id: 2 Wait for FirmwareUpdateStarted in MessageId Wait for FirmwareUpdateStarted in MessageId Wait for FirmwareUpdateStarted in MessageId Wait for FirmwareUpdateStarted in MessageId Wait for FirmwareUpdateStarted in MessageId Wait for FirmwareUpdateStarted in MessageId Wait for FirmwareUpdateStarted in MessageId Wait for FirmwareUpdateStarted in MessageId Wait for FirmwareUpdateStarted in MessageId Wait for FirmwareUpdateStarted in MessageId PercentageComplete: 6 TaskState: Running PercentComplete: 6 TaskStatus: OK ... PercentageComplete: 100 TaskState: Completed PercentComplete: 100 TaskStatus: OK Firmware update successful! Overall Time Taken: 0:36:11 Refer to 'DGX B200 Firmware Update Document' on activation steps for new firmware to take effect.
Reset the BMC so the BMC boots the new firmware:
$ ipmitool mc reset cold # Wait a couple of minutes and confirm the BMC is back online. $ ipmitool mc info
Reboot the system.