[PATCH v1 4/4] common: android_ab: fix slot suffix for abc block
Simon Glass
sjg at chromium.org
Sun Jul 28 21:36:06 CEST 2024
Hi Dmitry,
On Thu, 25 Jul 2024 at 14:55, Dmitry Rokosov
<ddrokosov at salutedevices.com> wrote:
>
> To align with the official Android BCB (Boot Control Block)
> specifications, it's important to note that the slot_suffix should start
> with an underscore symbol.
>
> For a comprehensive understanding of the expected slot_suffix format in
> userspace, please refer to the provided reference [1].
>
> Links:
> [1] - https://source.android.com/docs/core/architecture/bootloader/updating#slots
>
> Signed-off-by: Dmitry Rokosov <ddrokosov at salutedevices.com>
> ---
> boot/android_ab.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
Reviewed-by: Simon Glass <sjg at chromium.org>
(can the test cover this?)
>
> diff --git a/boot/android_ab.c b/boot/android_ab.c
> index 359cc1a00428..45c154b10f1a 100644
> --- a/boot/android_ab.c
> +++ b/boot/android_ab.c
> @@ -53,7 +53,7 @@ static int ab_control_default(struct bootloader_control *abc)
> if (!abc)
> return -EFAULT;
>
> - memcpy(abc->slot_suffix, "a\0\0\0", 4);
> + memcpy(abc->slot_suffix, "_a\0\0", 4);
> abc->magic = BOOT_CTRL_MAGIC;
> abc->version = BOOT_CTRL_VERSION;
> abc->nb_slot = NUM_SLOTS;
> @@ -319,7 +319,8 @@ int ab_select_slot(struct blk_desc *dev_desc, struct disk_partition *part_info,
> * or the device tree.
> */
> memset(slot_suffix, 0, sizeof(slot_suffix));
> - slot_suffix[0] = BOOT_SLOT_NAME(slot);
> + slot_suffix[0] = '_';
> + slot_suffix[1] = BOOT_SLOT_NAME(slot);
> if (memcmp(abc->slot_suffix, slot_suffix,
> sizeof(slot_suffix))) {
> memcpy(abc->slot_suffix, slot_suffix,
> --
> 2.43.0
>
More information about the U-Boot
mailing list