Visible to Intel only — GUID: ymu1606353054195
Ixiasoft
Visible to Intel only — GUID: ymu1606353054195
Ixiasoft
2.11. Updating the Decision Firmware
In order to make your system ready to support updating the decision firmware you need to have an available slot in flash that is 512 KB or larger.
You may temporarily use an application image slot for the update procedure. However, that means one less application image slot is available during the decision firmware update procedure.
The procedure for updating the decision firmware is as follows:
- Create a decision firmware update image with the Programming File Generator. Use a factory SOF file as input, from which the parameters for the decision firmware data are taken. The firmware update image contains the new decision firmware, new decision firmware data, and special firmware to perform the actual update.
- Deploy the decision firmware update image on the remote system.
- Write the decision firmware update image to the flash and make it the highest priority, with either U-Boot or LIBRSU. Because the decision firmware update image has a different format than application images, use the following LIBRSU APIs: rsu_slot_program_factory_update_buf and rsu_slot_program_factory_update_file. There are also U-Boot equivalents.
- Pass control to the decision firmware update image by requesting it to be loaded or by toggling nCONFIG.
- The decision firmware update image proceeds and replaces the decision firmware and decision firmware data with the new copies, then erases itself from the CPB.
- At the end, the decision firmware update image loads the new highest priority image in the CPB, or the factory image if the CPB is empty.
The decision firmware update flow is resilient to power loss. If the power is lost during the update, the next time the power is back up, the decision firmware update image resumes the update process from where it stopped.
For examples on how to perform the decision firmware update from both U-Boot and Linux, refer to the Remote System Update Example section.
For API reference information, refer to the LIBRSU Reference Information section, located in the LIBRSU Reference Information appendix.