Appendix A – BMC and eROT Upgrade Process for BlueField-2

To upgrade DPU BMC firmware on a BlueField-2 DPU, follow this procedure:

  1. Download openbmctool, and resolve dependencies.

    • sudo pip3 install paramiko
    • sudo pip3 install scp
  2. Trigger BMC update.

    Copy
    Copied!
                

    python3 openbmctool.py -H <DPU-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:

    Copy
    Copied!
                

    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

    Note

    BMC firmware update takes 15-20 mins .

  3. 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.

    Copy
    Copied!
                

    python3 openbmctool.py -H <DPU-BMC-IP> -U root -P <password> task status -i <task_Id>

    Before proceeding to other operations. Keep running this command until it outputs:

    Copy
    Copied!
                

    TaskState="Completed" TaskStatus="OK" TaskProgress="100"

  4. (Optional) Reset/reboot the BMC.

    Copy
    Copied!
                

    python3 openbmctool.py -H <DPU-BMC-IP> -U root -P <password> firmware running_version

    Note

    This step may be skipped if you intend to perform eROT update.

    Note

    Wait a few seconds before attempting to log back into the BMC as it loses connection during and shortly after reboot.

  5. Trigger eROT update.

    Copy
    Copied!
                

    python3 openbmctool.py -H <ip_address> -U root -P <DPU-BMC-IP> apfirmware flash cec -f <path-to-signed-CEC-OTA-image-file>

    After initiating the eROT update, the following indication is provided:

    Copy
    Copied!
                

    Uploading firmware image: 100.00% Firmware update for cec triggered successfully.

  6. Reset/reboot the BMC.
    Copy
    Copied!
                

    python3 openbmctool.py -H <DPU-BMC-IP> -U root -P <password> firmware running_version

© Copyright 2023, NVIDIA. Last updated on Jan 10, 2024.