[PATCH v1] mkeficapsule: fix efi_firmware_management_capsule_header data type

Heinrich Schuchardt xypron.glpk at gmx.de
Sun Jul 9 10:31:55 CEST 2023


On 6/16/23 10:28, Stefan Herbrechtsmeier wrote:
> From: Malte Schmidt <malte.schmidt at weidmueller.com>
>
> The data type of item_offset_list shall be UINT64 according to the UEFI [1]
> specifications.
>
> In include/efi_api.h the correct data type is used. The bug was probably
> never noticed because of little endianness.
>
> [1] https://uefi.org/specs/UEFI/2.10/index.html
>
> Signed-off-by: Malte Schmidt <malte.schmidt at weidmueller.com>
>
> Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier at weidmueller.com>
> ---
>
>   tools/eficapsule.h | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/eficapsule.h b/tools/eficapsule.h
> index 753fb73313..2099a2e9b8 100644
> --- a/tools/eficapsule.h
> +++ b/tools/eficapsule.h
> @@ -63,7 +63,7 @@ struct efi_firmware_management_capsule_header {
>   	uint32_t version;
>   	uint16_t embedded_driver_count;
>   	uint16_t payload_item_count;
> -	uint32_t item_offset_list[];
> +	uint64_t item_offset_list[];

Defining the same structure in two places it bad practice.
https://source.denx.de/u-boot/custodians/u-boot-efi/-/issues/11

Reviewed-by: Heinrich Schuchardt <xypron.glpk at gmx.de>

>   } __packed;
>
>   /* image_capsule_support */



More information about the U-Boot mailing list