[PATCH 1/1] tools/mkeficapsule: correct printf codes

Sughosh Ganu sughosh.ganu at linaro.org
Wed Aug 14 13:49:10 CEST 2024


On Wed, 14 Aug 2024 at 17:10, Ilias Apalodimas
<ilias.apalodimas at linaro.org> wrote:
>
> Hi Heinrich,
>
> On Wed, 14 Aug 2024 at 10:14, Heinrich Schuchardt
> <heinrich.schuchardt at canonical.com> wrote:
> >
> > uint64_t is defined as unsigned long long on 32bit ARM.
> > Convert uint64_t values to unsigned long long and use %llX for printing.
>
> Why do we need to convert? uint64_t is a fixed width type

We get warnings on a 64 bit host like such

tools/mkeficapsule.c: In function ‘dump_capsule_auth_header’:
tools/mkeficapsule.c:694:67: warning: format ‘%llX’ expects argument
of type ‘long long unsigned int’, but argument 2 has type ‘uint64_t’
{aka ‘long unsigned int’} [-Wformat=]
  694 |         printf("EFI_FIRMWARE_IMAGE_AUTH.MONOTONIC_COUNT\t\t: %08llX\n",
      |                                                              ~~~~~^
      |                                                                   |
      |
   long long unsigned int
      |                                                              %08lX
  695 |                capsule_auth_hdr->monotonic_count);
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                |
      |                                uint64_t {aka long unsigned int}


-sughosh



>
> Thanks
> /Ilias
> >
> >     tools/mkeficapsule.c: In function ‘dump_capsule_auth_header’:
> >     tools/mkeficapsule.c:694:66: warning: format ‘%lX’ expects argument of
> >     type ‘long unsigned int’, but argument 2 has type ‘uint64_t’
> >     {aka ‘long long unsigned int’} [-Wformat=]
> >     694 | printf("EFI_FIRMWARE_IMAGE_AUTH.MONOTONIC_COUNT\t\t: %08lX\n",
> >         |                                                      ~~~~^
> >         |                                                          |
> >         |                                                          long unsigned int
> >         |                                                      %08llX
> >
> > Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
> > ---
> >  tools/mkeficapsule.c | 12 ++++++------
> >  1 file changed, 6 insertions(+), 6 deletions(-)
> >
> > diff --git a/tools/mkeficapsule.c b/tools/mkeficapsule.c
> > index f28008a0829..d346c217f09 100644
> > --- a/tools/mkeficapsule.c
> > +++ b/tools/mkeficapsule.c
> > @@ -691,8 +691,8 @@ static uint32_t dump_fmp_payload_header(
> >  static void dump_capsule_auth_header(
> >         struct efi_firmware_image_authentication *capsule_auth_hdr)
> >  {
> > -       printf("EFI_FIRMWARE_IMAGE_AUTH.MONOTONIC_COUNT\t\t: %08lX\n",
> > -              capsule_auth_hdr->monotonic_count);
> > +       printf("EFI_FIRMWARE_IMAGE_AUTH.MONOTONIC_COUNT\t\t: %08llX\n",
> > +              (unsigned long long)capsule_auth_hdr->monotonic_count);
> >         printf("EFI_FIRMWARE_IMAGE_AUTH.AUTH_INFO.HDR.dwLENGTH\t: %08X\n",
> >                capsule_auth_hdr->auth_info.hdr.dwLength);
> >         printf("EFI_FIRMWARE_IMAGE_AUTH.AUTH_INFO.HDR.wREVISION\t: %08X\n",
> > @@ -724,10 +724,10 @@ static void dump_fmp_capsule_image_header(
> >                image_hdr->update_image_size);
> >         printf("FMP_CAPSULE_IMAGE_HDR.UPDATE_VENDOR_CODE_SIZE\t: %08X\n",
> >                image_hdr->update_vendor_code_size);
> > -       printf("FMP_CAPSULE_IMAGE_HDR.UPDATE_HARDWARE_INSTANCE\t: %08lX\n",
> > -              image_hdr->update_hardware_instance);
> > -       printf("FMP_CAPSULE_IMAGE_HDR.IMAGE_CAPSULE_SUPPORT\t: %08lX\n",
> > -              image_hdr->image_capsule_support);
> > +       printf("FMP_CAPSULE_IMAGE_HDR.UPDATE_HARDWARE_INSTANCE\t: %08llX\n",
> > +              (unsigned long long)image_hdr->update_hardware_instance);
> > +       printf("FMP_CAPSULE_IMAGE_HDR.IMAGE_CAPSULE_SUPPORT\t: %08llX\n",
> > +              (unsigned long long)image_hdr->image_capsule_support);
> >
> >         printf("--------\n");
> >         if (image_hdr->image_capsule_support & CAPSULE_SUPPORT_AUTHENTICATION) {
> > --
> > 2.45.2
> >


More information about the U-Boot mailing list