efi: Fix compiler warnings
authorSimon Glass <sjg@chromium.org>
Sun, 7 Feb 2021 21:27:02 +0000 (14:27 -0700)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Thu, 25 Mar 2021 19:08:41 +0000 (20:08 +0100)
This occur when building on Raspberry Pi 400 (32-bit ARM). Fix them.

Examples:

cmd/efidebug.c: In function ‘do_efi_capsule_update’:
cmd/efidebug.c:75:49: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
  ret = EFI_CALL(RT->update_capsule(&capsule, 1, (u64)NULL));
                                                 ^
include/efi_loader.h:104:9: note: in definition of macro ‘EFI_CALL’
  typeof(exp) _r = exp; \
         ^~~
cmd/efidebug.c:75:49: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
  ret = EFI_CALL(RT->update_capsule(&capsule, 1, (u64)NULL));
                                                 ^
include/efi_loader.h:104:19: note: in definition of macro ‘EFI_CALL’
  typeof(exp) _r = exp; \
                   ^~~

In file included from include/common.h:20,
                 from lib/efi_loader/efi_capsule.c:9:
lib/efi_loader/efi_capsule.c: In function ‘efi_update_capsule’:
include/efi_loader.h:83:8: warning: format ‘%lu’ expects argument of type
‘long unsigned int’, but argument 10 has type ‘size_t’
{aka ‘unsigned int’} [-Wformat=]
  debug("%sEFI: Entry %s(" format ")\n", __efi_nesting_inc(), \
        ^~~~~~~~~~~~~~~~~~
include/linux/printk.h:37:21: note: in definition of macro ‘pr_fmt’
 #define pr_fmt(fmt) fmt
                     ^~~
include/log.h:229:2: note: in expansion of macro ‘log’
  log(LOG_CATEGORY, LOGL_DEBUG, fmt, ##args); \
  ^~~
include/log.h:249:2: note: in expansion of macro ‘debug_cond’
  debug_cond(_DEBUG, fmt, ##args)
  ^~~~~~~~~~
include/efi_loader.h:83:2: note: in expansion of macro ‘debug’
  debug("%sEFI: Entry %s(" format ")\n", __efi_nesting_inc(), \
  ^~~~~
lib/efi_loader/efi_capsule.c:444:2: note: in expansion of macro ‘EFI_ENTRY’
  EFI_ENTRY("%p, %lu, %llu\n", capsule_header_array, capsule_count,
  ^~~~~~~~~
lib/efi_loader/efi_capsule.c:444:19: note: format string is defined here
  EFI_ENTRY("%p, %lu, %llu\n", capsule_header_array, capsule_count,
                 ~~^
                 %u

Signed-off-by: Simon Glass <sjg@chromium.org>
Replace (uintptr_t)NULL by 0.
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
cmd/efidebug.c
lib/efi_loader/efi_capsule.c
lib/efi_loader/efi_firmware.c

index e4030f5..55c7abe 100644 (file)
@@ -72,7 +72,7 @@ static int do_efi_capsule_update(struct cmd_tbl *cmdtp, int flag,
                       capsule->capsule_image_size);
        }
 
-       ret = EFI_CALL(RT->update_capsule(&capsule, 1, (u64)NULL));
+       ret = EFI_CALL(RT->update_capsule(&capsule, 1, 0));
        if (ret) {
                printf("Cannot handle a capsule at %p", capsule);
                return CMD_RET_FAILURE;
index b57f030..7ba1ced 100644 (file)
@@ -449,7 +449,7 @@ efi_status_t EFIAPI efi_update_capsule(
        unsigned int i;
        efi_status_t ret;
 
-       EFI_ENTRY("%p, %lu, %llu\n", capsule_header_array, capsule_count,
+       EFI_ENTRY("%p, %zu, %llu\n", capsule_header_array, capsule_count,
                  scatter_gather_list);
 
        if (!capsule_count) {
@@ -509,7 +509,7 @@ efi_status_t EFIAPI efi_query_capsule_caps(
        unsigned int i;
        efi_status_t ret;
 
-       EFI_ENTRY("%p, %lu, %p, %p\n", capsule_header_array, capsule_count,
+       EFI_ENTRY("%p, %zu, %p, %p\n", capsule_header_array, capsule_count,
                  maximum_capsule_size, reset_type);
 
        if (!maximum_capsule_size) {
index 5e401bb..7a3cca2 100644 (file)
@@ -299,7 +299,7 @@ efi_status_t EFIAPI efi_firmware_fit_set_image(
        efi_status_t (*progress)(efi_uintn_t completion),
        u16 **abort_reason)
 {
-       EFI_ENTRY("%p %d %p %ld %p %p %p\n", this, image_index, image,
+       EFI_ENTRY("%p %d %p %zd %p %p %p\n", this, image_index, image,
                  image_size, vendor_code, progress, abort_reason);
 
        if (!image || image_index != 1)
@@ -414,7 +414,7 @@ efi_status_t EFIAPI efi_firmware_raw_set_image(
        efi_status_t status;
        efi_uintn_t capsule_payload_size;
 
-       EFI_ENTRY("%p %d %p %ld %p %p %p\n", this, image_index, image,
+       EFI_ENTRY("%p %d %p %zd %p %p %p\n", this, image_index, image,
                  image_size, vendor_code, progress, abort_reason);
 
        if (!image)