[PATCH v8 19/25] x86: efi: Show the system-table revision
Simon Glass
sjg at chromium.org
Tue Jan 4 11:52:16 CET 2022
Hi Heinrich,
On Thu, 30 Dec 2021 at 23:46, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>
> On 12/29/21 19:57, Simon Glass wrote:
> > 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 at chromium.org>
> > ---
> >
> > (no changes since v6)
> >
> > Changes in v6:
> > - Fix Alo typo in commit message
> >
> > Changes in v5:
> > - Fix grammar in commit message
> >
> > Changes in v3:
> > - Add new patch to show the system-table revision
> >
> > arch/x86/cpu/efi/payload.c | 9 ++++++++-
> > 1 file changed, 8 insertions(+), 1 deletion(-)
> >
> > diff --git a/arch/x86/cpu/efi/payload.c b/arch/x86/cpu/efi/payload.c
> > index d2aa889a2b9..b7778565b19 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);
>
> This will print "0x0000025A" for UEFI version 2.9.
> Should we print "2.9" instead?
>
> Reviewed-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
We coud...
The spec says (in it's strange hyphen-free style):
FirmwareRevision A firmware vendor specific value that identifies the
revision of the
system firmware for the platform.
How do you know the format of the value? For the OVMF version I see 0x00010000
Regards,
Simon
More information about the U-Boot
mailing list