Update Your MCU Firmware#
Use the following command-line instructions to update your MCU firmware. However, we recommend that you flash MCUby using the BMC web user interface.
Note
The BMC Web User Interface is only available for BMC firmware version 24.04-11-v3.2 or newer. For older BMC FW, check VERSION in /etc/os-release. Use the following command-line instructions to update IGX Orin or Thor platform MCU firmware.
IGX BMC can flash the MCU firmware and upgrade the MCU. The latest MCU firmware file is already part of the IGX BSP.
Update your MCU firmware by using Redfish#
To update your MCU firmware, use the following procedure. The update can take 7-10 minutes or longer.
Save the IP address of your BMC as an environment variable by running the following code. Replace
<BMC_IP>with your IP address, for example 192.168.1.110.1export bmc=<BMC_IP>
Log into your BMC and save your access token as an environment variable by running the following code. Change
<BMC_Password>to your password.1export token=`curl -k \ 2 -H "Content-Type: application/json" \ 3 -X POST https://$bmc/login \ 4 -d '{"username": "root", "password": "<BMC_Password>"}' | grep token | awk '{print $2;}' | tr -d '"'`
To start the update run the following code. You save the task id as an environment variable so that you can check the status of the update in the following step.
1export task_id=$(curl -k \ 2 -H "X-Auth-Token: $token" \ 3 -H "Content-Type: application/octet-stream" \ 4 -X POST https://$bmc/redfish/v1/UpdateService \ 5 -T "<path and filename of the MCU PLDM package>" | jq -r ".Id")
To check the status of the update run the following code. After the update is done, the task status is
completed.1curl -k \ 2 -H "X-Auth-Token: $token" \ 3 -X GET https://$bmc/redfish/v1/TaskService/Tasks/$task_id
Update your MCU firmware by using automation script#
Use the following procedure to update IGX Orin/Thor platform MCU firmware using an automated script.
Go to the
mcu-flashdirectory by using the following command.1root@mgx-3809:~# cd /etc/smcu-flash
Run the below command to execute the smcu-auto-flash.sh script.
1root@igx-3809:/etc/smcu-flash# ./smcu-auto-flash.sh /path/to/.hex/ 2 3# If above command gets failed, try: 4root@igx-3809:/etc/smcu-flash# ./smcu-auto-flash.sh /path/to/.hex/ <platform type (thor/orin)>