diff options
author | xypron.glpk@gmx.de <xypron.glpk@gmx.de> | 2017-07-04 23:15:21 +0200 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2017-07-19 14:14:40 +0200 |
commit | b06d8ac39e0f36db4221367623f1908317daa60f (patch) | |
tree | 9ff2c9d1d5323a0ce7ed24b2f0161416ea9a0cd2 /arch/sh/include/asm/sections.h | |
parent | cc5b70812f5e3b13ea9072c2dacc939818ef8e66 (diff) |
bootefi: allow return without EFI_BOOT_SERVICES.Exit
The Unified Extensible Firmware Interface Specification, version 2.7,
defines in chapter 2.1.2 - UEFI Application that an EFI application may
either directly return or call EFI_BOOT_SERVICES.Exit().
Unfortunately U-Boot makes the incorrect assumption that
EFI_BOOT_SERVICES.Exit() is always called.
So the following application leads to a memory exception on the aarch64
architecture when returning:
EFI_STATUS efi_main(
EFI_HANDLE handle,
EFI_SYSTEM_TABlE systable) {
return EFI_SUCCESS;
}
With this patch the entry point is stored in the image handle.
The new wrapper function do_enter is used to call the EFI entry point.
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'arch/sh/include/asm/sections.h')
0 files changed, 0 insertions, 0 deletions