On Tue, 09 Aug, at 01:25:46PM, Icenowy Zheng wrote: > Some broken firmwares have a wrongly filled version field in BGRT table. > (See http://wiki.osdev.org/Broken_UEFI_implementations ) > > As we know, these firmwares can also provide correct BGRT image, although > the table is wrong. > > After removing the check of the version field, the kernel can now extract > the image correctly, and the information is also correct. > > Tested on a Thinkpad E531 (68854UC). > > Signed-off-by: Icenowy Zheng <icenowy@xxxxxxxx> > --- > arch/x86/platform/efi/efi-bgrt.c | 5 ----- > 1 file changed, 5 deletions(-) > > diff --git a/arch/x86/platform/efi/efi-bgrt.c b/arch/x86/platform/efi/efi-bgrt.c > index 6a2f569..f492ea0 100644 > --- a/arch/x86/platform/efi/efi-bgrt.c > +++ b/arch/x86/platform/efi/efi-bgrt.c > @@ -47,11 +47,6 @@ void __init efi_bgrt_init(void) > bgrt_tab->header.length, sizeof(*bgrt_tab)); > return; > } > - if (bgrt_tab->version != 1) { > - pr_notice("Ignoring BGRT: invalid version %u (expected 1)\n", > - bgrt_tab->version); > - return; > - } > if (bgrt_tab->status & 0xfe) { > pr_notice("Ignoring BGRT: reserved status bits are non-zero %u\n", > bgrt_tab->status); This would be less scary if we checked for known broken and known good version values instead of removing the check altogether, i.e. 0 and 1. The whole point of the version field is that it tells us about the layout of the BGRT table, so it's not exactly a useless check. -- To unsubscribe from this list: send the line "unsubscribe linux-efi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html