[PATCH v3 0/7] Support metadata-driven A/B boot for STM32MP25
Dario Binacchi
dario.binacchi at amarulasolutions.com
Wed Apr 15 20:31:27 CEST 2026
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 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 (7):
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
board: st: stm32mp25: support dynamic A/B bank bootup
board/st/stm32mp2/stm32mp2.c | 32 ++++
cmd/part.c | 12 +-
doc/README.gpt | 2 +
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 | 205 ++++++++++++++++++++++++++
test/dm/part.c | 53 +++++++
11 files changed, 364 insertions(+), 4 deletions(-)
create mode 100644 test/cmd/part.c
--
2.43.0
base-commit: 70fd0c3bb7c26d42f24d10145dd5f3168ac92eac
branch: fwupdate-ab
More information about the U-Boot
mailing list