diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/i386/kernel/efi.c | 12 | ||||
-rw-r--r-- | arch/ia64/hp/sim/boot/fw-emu.c | 2 | ||||
-rw-r--r-- | arch/ia64/kernel/efi.c | 10 |
3 files changed, 11 insertions, 13 deletions
diff --git a/arch/i386/kernel/efi.c b/arch/i386/kernel/efi.c index dd9e7faafa7c..a1808022ea19 100644 --- a/arch/i386/kernel/efi.c +++ b/arch/i386/kernel/efi.c | |||
@@ -347,14 +347,12 @@ void __init efi_init(void) | |||
347 | printk(KERN_ERR PFX "Woah! Couldn't map the EFI system table.\n"); | 347 | printk(KERN_ERR PFX "Woah! Couldn't map the EFI system table.\n"); |
348 | if (efi.systab->hdr.signature != EFI_SYSTEM_TABLE_SIGNATURE) | 348 | if (efi.systab->hdr.signature != EFI_SYSTEM_TABLE_SIGNATURE) |
349 | printk(KERN_ERR PFX "Woah! EFI system table signature incorrect\n"); | 349 | printk(KERN_ERR PFX "Woah! EFI system table signature incorrect\n"); |
350 | if ((efi.systab->hdr.revision ^ EFI_SYSTEM_TABLE_REVISION) >> 16 != 0) | 350 | if ((efi.systab->hdr.revision >> 16) == 0) |
351 | printk(KERN_ERR PFX | 351 | printk(KERN_ERR PFX "Warning: EFI system table version " |
352 | "Warning: EFI system table major version mismatch: " | 352 | "%d.%02d, expected 1.00 or greater\n", |
353 | "got %d.%02d, expected %d.%02d\n", | ||
354 | efi.systab->hdr.revision >> 16, | 353 | efi.systab->hdr.revision >> 16, |
355 | efi.systab->hdr.revision & 0xffff, | 354 | efi.systab->hdr.revision & 0xffff); |
356 | EFI_SYSTEM_TABLE_REVISION >> 16, | 355 | |
357 | EFI_SYSTEM_TABLE_REVISION & 0xffff); | ||
358 | /* | 356 | /* |
359 | * Grab some details from the system table | 357 | * Grab some details from the system table |
360 | */ | 358 | */ |
diff --git a/arch/ia64/hp/sim/boot/fw-emu.c b/arch/ia64/hp/sim/boot/fw-emu.c index 5a0a7afcfc3a..300acd913d9c 100644 --- a/arch/ia64/hp/sim/boot/fw-emu.c +++ b/arch/ia64/hp/sim/boot/fw-emu.c | |||
@@ -287,7 +287,7 @@ sys_fw_init (const char *args, int arglen) | |||
287 | 287 | ||
288 | memset(efi_systab, 0, sizeof(efi_systab)); | 288 | memset(efi_systab, 0, sizeof(efi_systab)); |
289 | efi_systab->hdr.signature = EFI_SYSTEM_TABLE_SIGNATURE; | 289 | efi_systab->hdr.signature = EFI_SYSTEM_TABLE_SIGNATURE; |
290 | efi_systab->hdr.revision = EFI_SYSTEM_TABLE_REVISION; | 290 | efi_systab->hdr.revision = ((1 << 16) | 00); |
291 | efi_systab->hdr.headersize = sizeof(efi_systab->hdr); | 291 | efi_systab->hdr.headersize = sizeof(efi_systab->hdr); |
292 | efi_systab->fw_vendor = __pa("H\0e\0w\0l\0e\0t\0t\0-\0P\0a\0c\0k\0a\0r\0d\0\0"); | 292 | efi_systab->fw_vendor = __pa("H\0e\0w\0l\0e\0t\0t\0-\0P\0a\0c\0k\0a\0r\0d\0\0"); |
293 | efi_systab->fw_revision = 1; | 293 | efi_systab->fw_revision = 1; |
diff --git a/arch/ia64/kernel/efi.c b/arch/ia64/kernel/efi.c index 78d29b79947d..75ec3478d8a2 100644 --- a/arch/ia64/kernel/efi.c +++ b/arch/ia64/kernel/efi.c | |||
@@ -445,11 +445,11 @@ efi_init (void) | |||
445 | panic("Woah! Can't find EFI system table.\n"); | 445 | panic("Woah! Can't find EFI system table.\n"); |
446 | if (efi.systab->hdr.signature != EFI_SYSTEM_TABLE_SIGNATURE) | 446 | if (efi.systab->hdr.signature != EFI_SYSTEM_TABLE_SIGNATURE) |
447 | panic("Woah! EFI system table signature incorrect\n"); | 447 | panic("Woah! EFI system table signature incorrect\n"); |
448 | if ((efi.systab->hdr.revision ^ EFI_SYSTEM_TABLE_REVISION) >> 16 != 0) | 448 | if ((efi.systab->hdr.revision >> 16) == 0) |
449 | printk(KERN_WARNING "Warning: EFI system table major version mismatch: " | 449 | printk(KERN_WARNING "Warning: EFI system table version " |
450 | "got %d.%02d, expected %d.%02d\n", | 450 | "%d.%02d, expected 1.00 or greater\n", |
451 | efi.systab->hdr.revision >> 16, efi.systab->hdr.revision & 0xffff, | 451 | efi.systab->hdr.revision >> 16, |
452 | EFI_SYSTEM_TABLE_REVISION >> 16, EFI_SYSTEM_TABLE_REVISION & 0xffff); | 452 | efi.systab->hdr.revision & 0xffff); |
453 | 453 | ||
454 | config_tables = __va(efi.systab->tables); | 454 | config_tables = __va(efi.systab->tables); |
455 | 455 | ||