[PATCH 00/18] FWU: Migrate FWU metadata to version 2

Ilias Apalodimas ilias.apalodimas at linaro.org
Wed Jan 24 11:05:56 CET 2024


Hi Sughosh,

On Mon, Jan 22, 2024 at 05:24:21PM +0530, Sughosh Ganu wrote:
>
> The following patches migrate the FWU metadata access code to version
> 2 of the structure. This is based on the structure definition as
> defined in the latest rev of the FWU Multi Bank Update specification
> [1].
>
> Since the version 1 of the structure has currently been adopted on a
> couple of platforms, it was decided to have a clean migration of the
> metadata to version 2 only, instead of supporting both the versions of
> the structure. Also, based on consultations with the main author of
> the specification, it is expected that any further changes in the
> structure would be minor tweaks, and not be significant. Hence a
> migration to version 2.

I think this makes sense. We've already verified Socionext doesn't mind
dropping v1 support. If some from ST doesn't have objections, only
supporting v2 will simplify the code a lot.

Thanks
/Ilias
>
> Similar migration is also being done in TF-A, including migrating the
> ST platform port to support version 2 of the metadata structure [2].
>
> The patches have been tested on STM32MP1 DK2 board and the Synquacer
> board from Socionext. This covers testing both the GPT and the MTD
> partitioned storage devices for the metadata access.
>
> [1] - https://developer.arm.com/documentation/den0118/latest/
> [2] - https://review.trustedfirmware.org/q/topic:%22topics/fwu_metadata_v2_migration%22
>
> Sughosh Ganu (18):
>   configs: fwu: Remove FWU configs for metadata V2 migration
>   fwu: metadata: Migrate to version 2 of the structure
>   drivers: fwu: Add the size parameter to the metadata access API's
>   fwu: Add some API's for metadata version 2 access
>   lib: fwu: Make changes to support version 2 of FWU metadata
>   drivers: fwu: mtd: Allocate buffer for image info dynamically
>   drivers: fwu: Allocate memory for metadata copies
>   fwu: Add a function to put a bank in Trial State
>   capsule: Accept a bank on a successful update
>   fwu: mtd: Modify the DFU API's to align with metadata version 2
>   efi_firmware: fwu: Do not read FWU metadata on sandbox
>   efi_firmware: fwu: Get the number of FWU banks at runtime
>   cmd: fwu: Align the command with metadata version 2
>   test: fwu: Align the FWU metadata access test with version 2
>   fwu: Remove the config symbols for number of banks and images
>   tools: mkfwumdata: Migrate to metadata version 2
>   configs: fwu: Re-enable FWU configs
>   doc: fwu: Make changes for supporting FWU Metadata version 2
>
>  arch/sandbox/Kconfig                     |   6 -
>  board/armltd/corstone1000/corstone1000.c |   2 +-
>  cmd/fwu_mdata.c                          |  43 +++-
>  configs/synquacer_developerbox_defconfig |   1 -
>  doc/board/socionext/developerbox.rst     |   9 +-
>  doc/develop/uefi/fwu_updates.rst         |  12 +-
>  doc/usage/cmd/fwu_mdata.rst              |  12 +-
>  drivers/fwu-mdata/fwu-mdata-uclass.c     |  10 +-
>  drivers/fwu-mdata/gpt_blk.c              |  27 +-
>  drivers/fwu-mdata/raw_mtd.c              |  85 ++++---
>  include/fwu.h                            |  94 ++++++-
>  include/fwu_mdata.h                      |  56 +++--
>  lib/efi_loader/efi_capsule.c             |  12 +-
>  lib/efi_loader/efi_firmware.c            |  20 +-
>  lib/fwu_updates/Kconfig                  |  11 -
>  lib/fwu_updates/fwu.c                    | 308 ++++++++++++++++++-----
>  lib/fwu_updates/fwu_mtd.c                |  76 ++++--
>  test/dm/fwu_mdata.c                      |  56 +++--
>  test/dm/fwu_mdata_disk_image.h           | 124 ++++-----
>  tools/mkfwumdata.c                       |  43 +++-
>  20 files changed, 705 insertions(+), 302 deletions(-)
>
> --
> 2.34.1
>
>


More information about the U-Boot mailing list