Skip to main content

BMC shall provide Retimer card firmware update

Table 1. Retimer card firmware update properties

Name

Type

Read only

Description

FlashType

String

False

RetimerUpdate, it means performing Retimer card FW update action.

UploadSelector

String

False

Default. It’s a fixed value for this version

FlashCard

String

False

1,2,3. 1-retimer card on riser 1, 2-retimer card on riser 2 slot 1, 3-retimer card on riser 2 slot 2

Targets

String

False

An URI that indicated where to apply the update image

Firmware upload and update

Follow the following steps:

  1. Open postman and select POST method and type below URL.

    https://{{ip}}/redfish/v1/UpdateService/upload
  2. In the Body tab for post action, select form-data and provide the key name as “UpdateFile” and change the type to “File”.

  3. Then in the value section, select the firmware image file that is available in the local machine.

  4. Create a JSON file parameters.json with content as below:

    {
    "Targets": [
    “/redfish/v1/Managers/Self”
    ]
    }
  5. Create a JSON file oem_parameters.json with content as below: Please make sure retimer card in system and match index in “FlashCard”

    {
    “FlashType”:”RetimerUpdate”,
    “UploadSelector”:”Default”,
    “FlashCard”:1,2,3
    }
  6. Like step 2 and 3, provide key name UpdateParameters and select parameters.json created in step 4.

  7. Like step 2 and 3, provide key name OemParameters and select oem_parameters.json created in step 5.

  8. Click Send.

Response code

The response content is 202 accepted.

Note
If the update started before BMC booting finished, the response will be 400 as below. Please wait a moment and try again.
{
“error”: {
“@Message.ExtendedInfo”: [
{
“@odata.type”: “#Message.v1_0_7.Message”,
“Message”:“Action UpdateService.MultipartPush firmware update is failed.”,
“MessageArgs”: [
“UpdateService.MultipartPush”
],
“MessageId”: “AmiOem.1.0.BMCNotReadyForFirmwareUpdate”,
“Resolution”: “Wait for BMC ready.”,
“Severity”: “Warning”

}
],
“code”: “AmiOem.1.0.BMCNotReadyForFirmwareUpdate”,
“message”: “Action UpdateService.MultipartPush firmware update is failed.”

}
}

Update Status

Check below URL https://{{ip}}/redfish/v1/TaskService/Tasks/{id} in response. The “TaskState” and “TaskStatus” will display update status.
{
"@odata.context": "/redfish/v1/$metadata#Task.Task",
"@odata.etag": "\"1655879574\"",
"@odata.id": "/redfish/v1/TaskService/Tasks/13",
"@odata.type": "#Task.v1_4_2.Task",
"Description": "Task for Update Service Task",
"Id": "13",
"Messages": [
{
"@odata.type": "#Message.v1_0_8.Message",
"Message": "Task /redfish/v1/UpdateService/upload is running normally.",
"MessageArgs": [
"/redfish/v1/UpdateService/upload"
],
"MessageId": "Task.1.0.Running",
"Resolution": "None",
"Severity": "OK"
},
{
"@odata.type": "#Message.v1_0_8.Message",
"Message": "Device is preparing flash area for action /redfish/v1/UpdateService/upload.",
"MessageArgs": [
"/redfish/v1/UpdateService/upload"
],
"MessageId": "UpdateService.1.0.PrepareFlashArea",
"Resolution": "None",
"Severity": "OK"
}
],
"Name": "Update Service Task",
"StartTime": "2022-06-22T14:32:53+08:00",
"TaskState": "Running",
"TaskStatus": "OK"
}