Hi Balaji,

On 13/08/2026 07:53, Balaji Selvanathan via U-Boot wrote:
> RAW capsule updates hardcode dfu_alt_num = image_index - 1, which
> assumes every board's fw_images[] table is a positionally
> ordered mirror of its dfu_alt_info string. That's true for every
> board that hand-writes fw_images[], but it breaks down for a platform
> that builds the table by scanning its partition layout at boot: the
> set of images and their indices can vary per board, with gaps where a
> component isn't present, so image_index and dfu_alt_num can't be
> assumed to stay in lockstep.
> 
> This series moves that calculation into a __weak
> efi_firmware_get_dfu_alt_num() a platform can override, the same
> pattern already used for efi_firmware_get_image_type_id() and the
> efi_reset_system()/efi_get_time() hooks. The default implementation is
> the same image_index - 1 every existing board relies on today, so
> nothing needs to change anywhere else.

Please tame your LLM, this isn't a sales pitch. I'd much rather see a
succint explanation from yourself, same goes for the code comments in
these patches. Please follow the tone of the project and avoid leaking
implementation details in function comments.

> 
> This is infrastructure for a follow-on series that builds fw_images[]
> dynamically on Qualcomm boards, which needs this hook to keep
> dfu_alt_num correct once the table stops being static.
> 
> This work is part of multi-image capsule update support for
> Qualcomm boards.
> 
> Balaji Selvanathan (2):
> 
> efi_loader: firmware: decouple dfu_alt_num from image_index
> test: efi_capsule: add sandbox coverage for dfu_alt_num override
> ---
> Balaji Selvanathan (2):
>       efi_loader: firmware: decouple dfu_alt_num from image_index
>       test: efi_capsule: add sandbox coverage for dfu_alt_num override
> 
>  arch/sandbox/dts/sandbox_capsule.dtsi              | 12 ++++++
>  board/sandbox/sandbox.c                            | 18 +++++++++
>  include/efi_loader.h                               | 17 ++++++++
>  include/sandbox_efi_capsule.h                      |  1 +
>  lib/efi_loader/efi_firmware.c                      | 21 +++++++++-
>  .../test_efi_capsule/test_capsule_firmware_raw.py  | 45 
> ++++++++++++++++++++++
>  6 files changed, 112 insertions(+), 2 deletions(-)
> ---
> base-commit: 36c377b9859ffb53eb1e39ea31e8d96d1e0fe1e5
> change-id: 20260811-efi-firmware-dfu-alt-num-1289dae96490
> 
> Best regards,

-- 
// Casey (she/her)

Reply via email to