aboutsummaryrefslogtreecommitdiff
path: root/lib/efi_loader/efi_bootmgr.c
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2022-06-13 09:33:37 -0400
committerTom Rini <trini@konsulko.com>2022-06-13 09:33:37 -0400
commit92a8bc6b419f548230f10a924db2b3ef10a5edad (patch)
treed2e3c21ced36d6bc1330d7860bce7e0d32415292 /lib/efi_loader/efi_bootmgr.c
parent57bd363de7b95bececd40a0c8dbb2fcf4d8d3b21 (diff)
parent72fa9cd59edcf99cb32c05604d2a904018acd30a (diff)
Merge tag 'efi-2022-07-rc5' of https://source.denx.de/u-boot/custodians/u-boot-efi
Pull request for efi-2022-07-rc5 UEFI: * Ignore OsIndications if CONFIG_EFI_IGNORE_OSINDICATIONS=y * Correct UEFI default binary name * Let efidebug create boot options without file path * Support booting with a boot option with shortened device only device path
Diffstat (limited to 'lib/efi_loader/efi_bootmgr.c')
-rw-r--r--lib/efi_loader/efi_bootmgr.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/lib/efi_loader/efi_bootmgr.c b/lib/efi_loader/efi_bootmgr.c
index 93f6590530..234073ecb7 100644
--- a/lib/efi_loader/efi_bootmgr.c
+++ b/lib/efi_loader/efi_bootmgr.c
@@ -44,9 +44,8 @@ static const struct efi_runtime_services *rs;
static
struct efi_device_path *expand_media_path(struct efi_device_path *device_path)
{
- struct efi_device_path *dp, *full_path;
+ struct efi_device_path *dp, *rem, *full_path;
efi_handle_t handle;
- efi_status_t ret;
if (!device_path)
return NULL;
@@ -57,11 +56,10 @@ struct efi_device_path *expand_media_path(struct efi_device_path *device_path)
* booting from removable media.
*/
dp = device_path;
- ret = EFI_CALL(efi_locate_device_path(
- &efi_simple_file_system_protocol_guid,
- &dp, &handle));
- if (ret == EFI_SUCCESS) {
- if (dp->type == DEVICE_PATH_TYPE_END) {
+ handle = efi_dp_find_obj(dp, &efi_simple_file_system_protocol_guid,
+ &rem);
+ if (handle) {
+ if (rem->type == DEVICE_PATH_TYPE_END) {
dp = efi_dp_from_file(NULL, 0,
"/EFI/BOOT/" BOOTEFI_NAME);
full_path = efi_dp_append(device_path, dp);