@@ -13,6 +13,8 @@ The steps to follow to complete a firmware update with wolfBoot are:
1313At any given time, an application or OS running on a wolfBoot system can receive an updated version of itself,
1414and store the updated image in the second partition in the FLASH memory.
1515
16+ ![ Update and Rollback] ( png/wolfboot_update_rollback.png )
17+
1618Applications or OS threads can be linked to the [ libwolfboot library] ( API.md ) , which exports the API to trigger
1719the update at the next reboot, and some helper functions to access the flash partition for
1820erase/write through the target specific [ HAL] ( HAL.md ) .
@@ -27,15 +29,15 @@ After storing the new firmware image in the UPDATE partition, the application sh
2729 - Validate the new firmware image stored in the UPDATE partition
2830 - Verify the signature attached against a known public key stored in the bootloader image
2931 - Swap the content of the BOOT and the UPDATE partitions
30- - Mark the new firmware in the BOOT partition as in state ` ST_TESTING `
32+ - Mark the new firmware in the BOOT partition as in state ` STATE_TESTING `
3133 - Boot into the newly received firmware
3234
3335### Successful boot
3436
3537Upon a successful boot, the application should inform the bootloader by calling ` wolfBoot_success() ` , after verifying that
3638the system is up and running again. This operation confirms the update to a new firmware.
3739
38- Failing to set the BOOT partition to ` ST_SUCCESS ` before the next reboot triggers a roll-back operation.
40+ Failing to set the BOOT partition to ` STATE_SUCCESS ` before the next reboot triggers a roll-back operation.
3941Roll-back is initiated by the bootloader by triggering a new update, this time starting from the backup copy of the original
4042(pre-update) firmware, which is now stored in the UPDATE partition due to the swap occurring earlier.
4143
0 commit comments