diff --git a/boot/bootutil/design.txt b/boot/bootutil/design.txt index 47c4d282..eb5badb5 100644 --- a/boot/bootutil/design.txt +++ b/boot/bootutil/design.txt @@ -203,13 +203,15 @@ purposes; they are not actually present in the boot vector. | slot-0 | slot-1 | -----------------+--------+--------| magic | Any | Good | - image-ok | Any | N/A | + image-ok | Any | [*] | -----------------+--------+--------' pending | | X | confirmed | X | | - -----------------+--------+--------' - swap: test | - -----------------------------------' + -----------------+--------+--------+----------------------------' + swap: test | + note: slot-1 image-ok val indicates whether swap is permanent; | + (0xff=temporary; 0x01=permanent) | + ----------------------------------------------------------------' State III @@ -289,6 +291,9 @@ prevent a device from becoming "bricked" by bad firmware. If the device crashes immediately upon booting the second image, the boot loader reverts to the working image, rather than repeatedly rebooting into the bad image. +Alternatively, if the user is confident that the alternate image is good, they +can set and confirm in a single action. + The following set of tables illustrate the three possible states that the device can be in: diff --git a/boot/bootutil/src/bootutil_misc.c b/boot/bootutil/src/bootutil_misc.c index 1119bc23..c85f4549 100644 --- a/boot/bootutil/src/bootutil_misc.c +++ b/boot/bootutil/src/bootutil_misc.c @@ -73,7 +73,7 @@ static const struct boot_swap_table boot_swap_tables[] = { /* | slot-0 | slot-1 | *----------+------------+------------| * magic | Any | Good | - * image-ok | Any | N/A | + * image-ok | Any | [*] | * ---------+------------+------------+---------------------------' * swap: test | * note: slot-1 image-ok val indicates whether swap is permanent; |