[PATCH 1/2] efi: payload: iomem: use efi_uintn_t for the memory map key

Ahmad Fatoum a.fatoum at pengutronix.de
Wed Aug 26 02:30:51 PDT 2026


The GetMemoryMap() boot service takes a pointer to an efi_uintn_t for
the map key. Passing a pointer to an unsigned long fails to compile on
32-bit architectures, where efi_uintn_t is 32-bit:

  efi/payload/iomem.c:161:45: error: passing argument 3 of
  'BS->get_memory_map' from incompatible pointer type

Use the correct type.

Assisted-by: Claude:fable-5
Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
 efi/payload/iomem.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/efi/payload/iomem.c b/efi/payload/iomem.c
index 8b92dc47a7b9..515bf05233f8 100644
--- a/efi/payload/iomem.c
+++ b/efi/payload/iomem.c
@@ -148,7 +148,7 @@ static int efi_barebox_populate_mmap(void)
 	void *mmap_buf = NULL, *desc;
 	efi_status_t efiret;
 	size_t mmap_size;
-	ulong mapkey;
+	efi_uintn_t mapkey;
 	size_t descsz;
 	u32 descver;
 	int ret = 0;
-- 
2.47.3




More information about the barebox mailing list