diff options
author | Tom Rini <trini@konsulko.com> | 2018-06-14 13:28:03 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2018-06-14 13:28:03 -0400 |
commit | 9d0dc69235e8327dba5536761c768d40c4e514e5 (patch) | |
tree | 3530f43c7f2a1d1ed5480aee804b60d71cc6dd2d /cmd | |
parent | 606fddd76c7a045c09d544357806b0b4de4845c7 (diff) | |
parent | 58bc69d20aaf2e32e93e977d708fe6a1af0ad6d1 (diff) | |
download | u-boot-9d0dc69235e8327dba5536761c768d40c4e514e5.tar.gz |
Merge tag 'signed-efi-next' of git://github.com/agraf/u-boot
Patch queue for efi - 2018-06-14
A few minor fixes for the release:
- Compile fixes
- HI20 relocations for RISC-V
- Fix bootefi without load path
- Fix Runtime Services with certain compilers
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/bootefi.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/cmd/bootefi.c b/cmd/bootefi.c index 707d159bac..f55a40dc84 100644 --- a/cmd/bootefi.c +++ b/cmd/bootefi.c @@ -263,6 +263,7 @@ static efi_status_t do_bootefi_exec(void *efi, { struct efi_loaded_image loaded_image_info = {}; struct efi_object loaded_image_info_obj = {}; + struct efi_object mem_obj = {}; struct efi_device_path *memdp = NULL; efi_status_t ret; @@ -279,6 +280,12 @@ static efi_status_t do_bootefi_exec(void *efi, /* actual addresses filled in after efi_load_pe() */ memdp = efi_dp_from_mem(0, 0, 0); device_path = image_path = memdp; + efi_add_handle(&mem_obj); + + ret = efi_add_protocol(mem_obj.handle, &efi_guid_device_path, + device_path); + if (ret != EFI_SUCCESS) + goto exit; } else { assert(device_path && image_path); } @@ -343,6 +350,8 @@ static efi_status_t do_bootefi_exec(void *efi, exit: /* image has returned, loaded-image obj goes *poof*: */ list_del(&loaded_image_info_obj.link); + if (mem_obj.handle) + list_del(&mem_obj.link); return ret; } |