aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2021-12-29 11:57:53 -0700
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>2021-12-31 07:34:34 +0100
commit40b172314bb68886fce409efbd4db7cbe9d0926a (patch)
tree9646e118924b19521df32be5be25d5c19cec348a
parent13bfaab3dab42d181327623208c0c299652632eb (diff)
downloadu-boot-40b172314bb68886fce409efbd4db7cbe9d0926a.zip
u-boot-40b172314bb68886fce409efbd4db7cbe9d0926a.tar.gz
u-boot-40b172314bb68886fce409efbd4db7cbe9d0926a.tar.bz2
x86: efi: Show the system-table revision
Show the revision of this table as it can be important. Also update the 'efi table' entry to show the actual address of the EFI table rather than our table that points to it. This saves a step and the intermediate table has nothing else in it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
-rw-r--r--arch/x86/cpu/efi/payload.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/arch/x86/cpu/efi/payload.c b/arch/x86/cpu/efi/payload.c
index 3a9f7d7..04ce188 100644
--- a/arch/x86/cpu/efi/payload.c
+++ b/arch/x86/cpu/efi/payload.c
@@ -7,6 +7,7 @@
#include <common.h>
#include <cpu_func.h>
#include <efi.h>
+#include <efi_api.h>
#include <errno.h>
#include <init.h>
#include <log.h>
@@ -296,8 +297,14 @@ void setup_efi_info(struct efi_info *efi_info)
void efi_show_bdinfo(void)
{
struct efi_entry_systable *table = NULL;
+ struct efi_system_table *sys_table;
int size, ret;
ret = efi_info_get(EFIET_SYS_TABLE, (void **)&table, &size);
- bdinfo_print_num_l("efi_table", (ulong)table);
+ if (!ret) {
+ bdinfo_print_num_l("efi_table", table->sys_table);
+ sys_table = (struct efi_system_table *)(uintptr_t)
+ table->sys_table;
+ bdinfo_print_num_l(" revision", sys_table->fw_revision);
+ }
}