Updating Firmware for Individual Motherboard Tray Components#
This section provides instructions for updating the firmware of individual components on the motherboard tray.
Updating the BMC#
Create a
update_bmc.jsonfile 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 <mb-tray-package> -y -s update_bmc.json
Example Output
FW recipe: ['nvfw_DGX_251121.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 B300 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.
Updating the BIOS#
Create a
updparameters.jsonfile with the following contents:{ "Targets" :["/redfish/v1/UpdateService/FirmwareInventory/HostBIOS_0"] }
Update the firmware:
nvfwupd -t ip=<bmc-ip-address> user=admin password=admin update_fw \ -p nvfw_DGX_251121.1.0.fwpkg -y -s updparameters.json
Example Output
FW recipe: ['nvfw_DGX_251121.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 B300 Firmware Update Document' on activation steps for new firmware to take effect.
Updating BMC ERoT#
Create a
updparameters.jsonfile with the following contents:{ "Targets" :["/redfish/v1/UpdateService/FirmwareInventory/EROT_BMC_0"] }
Update the firmware:
nvfwupd -t ip=<bmc-ip-address> user=admin password=admin update_fw \ -p nvfw_DGX_251121.1.0.fwpkg -y -s updparameters.json
Example Output
FW recipe: ['nvfw_DGX_251121.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/1 was created.", "MessageArgs": ["/redfish/v1/TaskService/Tasks/1"], "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: 1 Wait for Firmware Update to Start... Wait for Firmware Update to Start... TaskState: Completed PercentComplete: 100 TaskStatus: OK Firmware update successful! Overall Time Taken: 0:00:09 Refer to 'DGX B300 Firmware Update Document' on activation steps for new firmware to take effect.
Updating SBIOS ERoT#
Create a
updparameters.jsonfile with the following contents:{ "Targets" :["/redfish/v1/UpdateService/FirmwareInventory/EROT_BIOS_0"] }
Update the firmware:
nvfwupd -t ip=<bmc-ip-address> user=admin password=admin update_fw \ -p nvfw_DGX_251121.1.0.fwpkg -y -s updparameters.json
Example Output
FW recipe: ['nvfw_DGX_251121.1.0.fwpkg.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 Firmware Update to Start... Wait for Firmware Update to Start... TaskState: Completed PercentComplete: 100 TaskStatus: OK Firmware update successful! Overall Time Taken: 0:00:10 Refer to 'DGX B300 Firmware Update Document' on activation steps for new firmware to take effect.
Updating the CPLDs#
Create a
updparameters.jsonfile with the following contents:{ "Targets" :["/redfish/v1/UpdateService/FirmwareInventory/CPLDMB_0"] }
Update the firmware:
nvfwupd -t ip=<bmc-ip-address> user=admin password=admin update_fw \ -p nvfw_DGX_251121.1.0.fwpkg -y -s updparameters.json
Example Output
FW recipe: ['nvfw_DGX_251121.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/4 was created.", "MessageArgs": ["/redfish/v1/TaskService/Tasks/4"], "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: 4 Wait for Firmware Update to Start... Wait for Firmware Update to Start... TaskState: Completed PercentComplete: 100 TaskStatus: OK Firmware update successful! Overall Time Taken: 0:00:08 Refer to 'DGX B300 Firmware Update Document' on activation steps for new firmware to take effect.
Updating the Midplane CPLDs#
Create a
updparameters.jsonfile with the following contents:{ "Targets" :["/redfish/v1/UpdateService/FirmwareInventory/CPLDMID_0"] }
Update the firmware:
nvfwupd -t ip=<bmc-ip-address> user=admin password=admin update_fw \ -p nvfw_DGX_251121.1.0.fwpkg -y -s updparameters.json
Example Output
FW recipe: ['nvfw_DGX_251121.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/5 was created.", "MessageArgs": ["/redfish/v1/TaskService/Tasks/5"], "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: 5 Wait for Firmware Update to Start... Wait for Firmware Update to Start... TaskState: Completed PercentComplete: 100 TaskStatus: OK Firmware update successful! Overall Time Taken: 0:00:09 Refer to 'DGX B300 Firmware Update Document' on activation steps for new firmware to take effect.
Updating the PCIe Switches#
Create a
updparameters.jsonfile with the following contents:{ "Targets" :["/redfish/v1/UpdateService/FirmwareInventory/PCIeSwitch_0"] }
Important
Repeat this procedure for
PCIeSwitch_1.Update the firmware:
nvfwupd -t ip=<bmc-ip-address> user=admin password=admin update_fw \ -p nvfw_DGX_251121.1.0.fwpkg -y -s updparameters.json
Example Output
FW recipe: ['nvfw_DGX_251121.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/7 was created.", "MessageArgs": ["/redfish/v1/TaskService/Tasks/7"], "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: 7 Wait for Firmware Update to Start... Wait for Firmware Update to Start... TaskState: Completed PercentComplete: 100 TaskStatus: OK Firmware update successful! Overall Time Taken: 0:00:09 Refer to 'DGX B300 Firmware Update Document' on activation steps for new firmware to take effect.
Updating the Power Supply Units#
Create a
updparameters.jsonfile with the following contents:{ "Targets" :["/redfish/v1/UpdateService/FirmwareInventory/PSU_0"] }
Important
Repeat this procedure for
PSU_1throughPSU_11.Update the firmware:
nvfwupd -t ip=<bmc-ip-address> user=admin password=admin update_fw \ -p nvfw_DGX_251121.1.0.fwpkg -y -s updparameters.json
Example Output
FW recipe: ['nvfw_DGX_251121.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/6 was created.", "MessageArgs": ["/redfish/v1/TaskService/Tasks/6"], "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: 6 Wait for Firmware Update to Start... Wait for Firmware Update to Start... TaskState: Completed PercentComplete: 100 TaskStatus: OK Firmware update successful! Overall Time Taken: 0:00:08 Refer to 'DGX B300 Firmware Update Document' on activation steps for new firmware to take effect.