# HG changeset patch
# User Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
# Date 1218163097 -32400
# Node ID 853476b12f5623beaddae5670aa97994f6f37d81
# Parent 36c274bbc5dffc7bea88cd1d18faca0ab2750e08
[IA64] backport EFI version warning fix
We have boxes that report EFI version 2.00 now, so adopt upstream linux
patch to only warn on versions less that 1.00. Based on linux-2.6.git
873ec746158403af82c57ce26780166aafc159e1.
Signed-off-by: Alex Williamson <alex.williamson@xxxxxx>
---
xen/arch/ia64/linux-xen/efi.c | 10 +++++-----
xen/arch/ia64/xen/dom_fw_common.c | 2 +-
xen/include/asm-ia64/linux-xen/linux/efi.h | 1 -
3 files changed, 6 insertions(+), 7 deletions(-)
diff -r 36c274bbc5df -r 853476b12f56 xen/arch/ia64/linux-xen/efi.c
--- a/xen/arch/ia64/linux-xen/efi.c Fri Aug 08 11:38:08 2008 +0900
+++ b/xen/arch/ia64/linux-xen/efi.c Fri Aug 08 11:38:17 2008 +0900
@@ -539,11 +539,11 @@ efi_init (void)
panic("Woah! Can't find EFI system table.\n");
if (efi.systab->hdr.signature != EFI_SYSTEM_TABLE_SIGNATURE)
panic("Woah! EFI system table signature incorrect\n");
- if ((efi.systab->hdr.revision ^ EFI_SYSTEM_TABLE_REVISION) >> 16 != 0)
- printk(KERN_WARNING "Warning: EFI system table major version
mismatch: "
- "got %d.%02d, expected %d.%02d\n",
- efi.systab->hdr.revision >> 16, efi.systab->hdr.revision
& 0xffff,
- EFI_SYSTEM_TABLE_REVISION >> 16,
EFI_SYSTEM_TABLE_REVISION & 0xffff);
+ if ((efi.systab->hdr.revision >> 16) == 0)
+ printk(KERN_WARNING "Warning: EFI system table version "
+ "%d.%02d, expected 1.00 or greater\n",
+ efi.systab->hdr.revision >> 16,
+ efi.systab->hdr.revision & 0xffff);
config_tables = __va(efi.systab->tables);
diff -r 36c274bbc5df -r 853476b12f56 xen/arch/ia64/xen/dom_fw_common.c
--- a/xen/arch/ia64/xen/dom_fw_common.c Fri Aug 08 11:38:08 2008 +0900
+++ b/xen/arch/ia64/xen/dom_fw_common.c Fri Aug 08 11:38:17 2008 +0900
@@ -416,7 +416,7 @@ dom_fw_init(domain_t *d,
/* EFI systab. */
tables->efi_systab.hdr.signature = EFI_SYSTEM_TABLE_SIGNATURE;
- tables->efi_systab.hdr.revision = EFI_SYSTEM_TABLE_REVISION;
+ tables->efi_systab.hdr.revision = ((1 << 16) | 00); /* EFI 1.00 */
tables->efi_systab.hdr.headersize = sizeof(tables->efi_systab.hdr);
memcpy(tables->fw_vendor,FW_VENDOR,sizeof(FW_VENDOR));
diff -r 36c274bbc5df -r 853476b12f56 xen/include/asm-ia64/linux-xen/linux/efi.h
--- a/xen/include/asm-ia64/linux-xen/linux/efi.h Fri Aug 08 11:38:08
2008 +0900
+++ b/xen/include/asm-ia64/linux-xen/linux/efi.h Fri Aug 08 11:38:17
2008 +0900
@@ -215,7 +215,6 @@ typedef struct {
} efi_config_table_t;
#define EFI_SYSTEM_TABLE_SIGNATURE ((u64)0x5453595320494249ULL)
-#define EFI_SYSTEM_TABLE_REVISION ((1 << 16) | 00)
typedef struct {
efi_table_hdr_t hdr;
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|