[PATCH v7 0/8] Support metadata-driven A/B boot for STM32MP25

Patrice CHOTARD patrice.chotard at foss.st.com
Wed Apr 29 11:14:10 CEST 2026



On 4/26/26 17:46, Dario Binacchi wrote:
> This series, the mainline version of [1], provides the necessary changes
> in U-Boot to support the metadata-driven A/B update flow for STM32MP25
> boards. It implements the logic required to dynamically select the boot
> bank based on FWU metadata.
> 
> These changes are designed to be backward compatible while providing
> the necessary infrastructure for the A/B scheme.
> 
> The series has been tested on the STM32MP257F-EV1 board.
> 
> Additionally, some patches in the series propose changes with
> general-purpose utility:
> 
>  1/7 lib: uuid: add partition type GUID for extended bootloader
>  4/7 cmd: part: support lookup by UUID in 'part number'
>  6/7 fwu: add helper to get image GUID by type and bank index
> 
> [1] https://github.com/STMicroelectronics/u-boot/pull/6
> 
> Changes in v7:
> - Add Reviewed-by of Simon Glass for patc 7/8 of "test: dm:
>   fwu_mdata: add test for fwu_mdata_get_image_guid".
> 
> Changes in v6:
> - Add Reviewed-by of Simon Glass to patch 3/8 "test: cmd: add unit
>   tests for part command"
> 
> Changes in v5:
> - Update doc/usage/cmd/part.rst to reflect the changes related to the
>   part command.
> - Add Acked-by of Ilias Apalodimas to patch 6/8 "fwu: add helper to get
>   image GUID by type and bank index"
> 
> Changes in v4:
> - Place the part command tests in the cmd suite rather than the dm
>   suite.
> - Order the include files according the U-Boot coding style.
> - Add patch 7/8 test: dm: fwu_mdata: add test for fwu_mdata_get_image_guid
> 
> Changes in v3:
> - Wrap lines exceeding 80 columns in test/cmd/part.c file.
> - Combine run_command() and ut_asserteq() -> ut_asserteq(1, run_command(
> - Add kerneldoc comment for fwu_mdata_get_image_guid() above its declaration
>   in fwu.h.
> - Add log_warning() messages to fwu_platform_hook() to catch inconsistent
>   FWU metadata (boot GUID found but root GUID missing or viceversa), as
>   suggested by Simon Glass.
> 
> Changes in v2:
> - Add links to the XBOOTLDR specification in the commit message of patch
>    1/7 lib: uuid: add partition type GUID for extended bootloader.
> - Update help for 'part start', 'part size' to mention UUID.
> - Add kerneldoc comment for fwu_mdata_get_image_guid().
> - Pass efi_guid_t by pointer in fwu_mdata_get_image_guid().
> - Add patches:
>    5/7 test: cmd: part: add UUID lookup tests
>    3/7 test: cmd: add unit tests for part command
>    2/7 test: dm: part: add test for part_get_info_by_uuid
> 
> Dario Binacchi (8):
>   lib: uuid: add partition type GUID for extended bootloader
>   test: dm: part: add test for part_get_info_by_uuid
>   test: cmd: add unit tests for part command
>   cmd: part: support lookup by UUID
>   test: cmd: part: add UUID lookup tests
>   fwu: add helper to get image GUID by type and bank index
>   test: dm: fwu_mdata: add test for fwu_mdata_get_image_guid
>   board: st: stm32mp25: support dynamic A/B bank bootup
> 
>  board/st/stm32mp2/stm32mp2.c          |  32 ++++
>  cmd/part.c                            |  12 +-
>  doc/README.gpt                        |   2 +
>  doc/usage/cmd/part.rst                |   6 +-
>  include/configs/stm32mp25_st_common.h |  15 ++
>  include/fwu.h                         |  11 ++
>  include/part_efi.h                    |   3 +
>  lib/fwu_updates/fwu.c                 |  33 ++++
>  lib/uuid.c                            |   1 +
>  test/cmd/Makefile                     |   1 +
>  test/cmd/part.c                       | 209 ++++++++++++++++++++++++++
>  test/dm/fwu_mdata.c                   |  48 ++++++
>  test/dm/part.c                        |  53 +++++++
>  13 files changed, 419 insertions(+), 7 deletions(-)
>  create mode 100644 test/cmd/part.c
> 



Hi Dario

I am preparing a pull request for STM32 including this series.
Unfortunately, there is an error linked to tests test/cmd/part.c 

You can use my temporary pull request tag u-boot-stm32-20260429

You will find the error logs here encountered with qemu test : https://source.denx.de/u-boot/custodians/u-boot-stm/-/pipelines/29932

Thanks
Patrice



More information about the U-Boot mailing list