summaryrefslogtreecommitdiff
path: root/lib/efi_loader
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2026-05-18 09:12:11 -0600
committerTom Rini <[email protected]>2026-05-18 09:12:11 -0600
commit38dbe637c9dfcadbd1bc201bfbb27f96b2ad525a (patch)
treec71ada65af872f9f110e410670611470359c7b3b /lib/efi_loader
parent78319e074d0351e32edf70207c1aca500fe34201 (diff)
parent5824ed13bcdf4726c13ef76e8186bc145d8e43f9 (diff)
Merge tag 'efi-2026-07-rc3' of https://source.denx.de/u-boot/custodians/u-boot-efiHEADmaster
Pull request efi-2026-07-rc3 CI: https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/30152 Documentation: * For reset command describe when the -edl option is available and fix a typo. UEFI: * If efi_allocate_pages() is with EFI_ALLOCATE_ADDRESS fails, return EFI_NOT_FOUND. * Fix HII keyboard layout pointer computation and extend HII keyboard layout tests. Others: * In reset command online help show -edl option only when enabled.
Diffstat (limited to 'lib/efi_loader')
-rw-r--r--lib/efi_loader/efi_hii.c3
-rw-r--r--lib/efi_loader/efi_memory.c4
2 files changed, 5 insertions, 2 deletions
diff --git a/lib/efi_loader/efi_hii.c b/lib/efi_loader/efi_hii.c
index 330d7c5830b..7bf51ad43d1 100644
--- a/lib/efi_loader/efi_hii.c
+++ b/lib/efi_loader/efi_hii.c
@@ -324,7 +324,8 @@ add_keyboard_package(struct efi_hii_packagelist *hii,
list_add_tail(&layout_data->link_sys,
&efi_keyboard_layout_list);
- layout += layout_length;
+ layout = (struct efi_hii_keyboard_layout *)
+ ((uintptr_t)layout + layout_length);
}
list_add_tail(&package_data->link, &hii->keyboard_packages);
diff --git a/lib/efi_loader/efi_memory.c b/lib/efi_loader/efi_memory.c
index 046a2bb4641..2feb29f0a2c 100644
--- a/lib/efi_loader/efi_memory.c
+++ b/lib/efi_loader/efi_memory.c
@@ -495,7 +495,9 @@ efi_status_t efi_allocate_pages(enum efi_allocate_type type,
/* Map would overlap, bail out */
lmb_free(addr, (u64)pages << EFI_PAGE_SHIFT, flags);
unmap_sysmem((void *)(uintptr_t)efi_addr);
- return EFI_OUT_OF_RESOURCES;
+ if (type == EFI_ALLOCATE_ADDRESS)
+ return EFI_NOT_FOUND;
+ return EFI_OUT_OF_RESOURCES;
}
*memory = efi_addr;