summaryrefslogtreecommitdiffstats
path: root/efi_default_physical.patch
diff options
context:
space:
mode:
authorMatthew Garrett <mjg@redhat.com>2010-12-17 11:51:06 -0500
committerMatthew Garrett <mjg@redhat.com>2010-12-17 11:51:06 -0500
commitb07d634fac1933e3f1d9d4f6ae8192d0eaae8dd7 (patch)
treee4aeeb0a39cabe535727138ee97551db3dfc1284 /efi_default_physical.patch
parent140614795a845b06e15f92b0400eb0a10970394b (diff)
downloadkernel-b07d634fac1933e3f1d9d4f6ae8192d0eaae8dd7.tar.gz
kernel-b07d634fac1933e3f1d9d4f6ae8192d0eaae8dd7.tar.xz
kernel-b07d634fac1933e3f1d9d4f6ae8192d0eaae8dd7.zip
- efi_default_physical.patch: Revert hunk that breaks boot
- linux-next-macbook-air-input.patch: Add input support for new Macbook Airs
Diffstat (limited to 'efi_default_physical.patch')
-rw-r--r--efi_default_physical.patch12
1 files changed, 6 insertions, 6 deletions
diff --git a/efi_default_physical.patch b/efi_default_physical.patch
index 6e4656059..41de7809e 100644
--- a/efi_default_physical.patch
+++ b/efi_default_physical.patch
@@ -1,5 +1,5 @@
-Default to physical mode in EFI. Fixes boot problems on some machines,
-upstream will probably head in this direction.
+Default EFI to physical rather than virtual. Upstream seem to be going
+in this direction.
diff --git a/arch/x86/include/asm/efi.h b/arch/x86/include/asm/efi.h
index 8e4a165..3c62f15 100644
@@ -216,7 +216,7 @@ index 5cab48e..90767b1 100644
+void efi_call_phys_epilog_in_physmode(void) { /* Not supported */ }
+
diff --git a/arch/x86/platform/efi/efi_64.c b/arch/x86/platform/efi/efi_64.c
-index ac0621a..33a8192 100644
+index ac0621a..ad19fe9 100644
--- a/arch/x86/platform/efi/efi_64.c
+++ b/arch/x86/platform/efi/efi_64.c
@@ -39,7 +39,9 @@
@@ -318,8 +318,8 @@ index ac0621a..33a8192 100644
+ memset(efi_pgd, 0, sizeof(efi_pgd));
+ for (p = memmap.map; p < memmap.map_end; p += memmap.desc_size) {
+ md = p;
-+ if ((md->type != EFI_RUNTIME_SERVICES_CODE) &&
-+ (md->type != EFI_RUNTIME_SERVICES_DATA))
++ if (!(md->type & EFI_RUNTIME_SERVICES_CODE) &&
++ !(md->type & EFI_RUNTIME_SERVICES_DATA))
+ continue;
+
+ start_pfn = md->phys_addr >> PAGE_SHIFT;
@@ -332,7 +332,7 @@ index ac0621a..33a8192 100644
+ pud = fill_pud(pgd, vaddr);
+ pmd = fill_pmd(pud, vaddr);
+ pte = fill_pte(pmd, vaddr);
-+ if (md->type == EFI_RUNTIME_SERVICES_CODE)
++ if (md->type & EFI_RUNTIME_SERVICES_CODE)
+ set_pte(pte, pfn_pte(pfn, PAGE_KERNEL_EXEC));
+ else
+ set_pte(pte, pfn_pte(pfn, PAGE_KERNEL));