diff options
author | Bin Meng <bmeng.cn@gmail.com> | 2018-08-23 08:24:09 -0700 |
---|---|---|
committer | Bin Meng <bmeng.cn@gmail.com> | 2018-08-30 11:23:07 +0800 |
commit | cbe503fbc11f36086482bfd7066c2e36b82f1544 (patch) | |
tree | a0e7aef2d02331a27bc5af951f38d2778575e663 /lib/efi | |
parent | aac79251c7dfeb325f17dbded3076df278bfca89 (diff) | |
download | u-boot-cbe503fbc11f36086482bfd7066c2e36b82f1544.tar.gz u-boot-cbe503fbc11f36086482bfd7066c2e36b82f1544.tar.bz2 u-boot-cbe503fbc11f36086482bfd7066c2e36b82f1544.zip |
efi: stub: Pass EFI system table address to U-Boot payload
This updates the EFI stub codes to pass UEFI BIOS's system table
address to U-Boot payload so that U-Boot can utilize it.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'lib/efi')
-rw-r--r-- | lib/efi/efi_stub.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/efi/efi_stub.c b/lib/efi/efi_stub.c index 1b495ec81b..12e3d637dd 100644 --- a/lib/efi/efi_stub.c +++ b/lib/efi/efi_stub.c @@ -277,6 +277,7 @@ efi_status_t EFIAPI efi_main(efi_handle_t image, struct efi_entry_memmap map; struct efi_gop *gop; struct efi_entry_gopmode mode; + struct efi_entry_systable table; efi_guid_t efi_gop_guid = EFI_GOP_GUID; efi_uintn_t key, desc_size, size; efi_status_t ret; @@ -335,6 +336,9 @@ efi_status_t EFIAPI efi_main(efi_handle_t image, return ret; } + table.sys_table = (ulong)sys_table; + add_entry_addr(priv, EFIET_SYS_TABLE, &table, sizeof(table), NULL, 0); + ret = boot->exit_boot_services(image, key); if (ret) { /* |