diff options
Diffstat (limited to 'arch/x86/kernel/setup.c')
-rw-r--r-- | arch/x86/kernel/setup.c | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index 06853e670354..fa511acff7e6 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c | |||
@@ -926,11 +926,11 @@ void __init setup_arch(char **cmdline_p) | |||
926 | #ifdef CONFIG_EFI | 926 | #ifdef CONFIG_EFI |
927 | if (!strncmp((char *)&boot_params.efi_info.efi_loader_signature, | 927 | if (!strncmp((char *)&boot_params.efi_info.efi_loader_signature, |
928 | "EL32", 4)) { | 928 | "EL32", 4)) { |
929 | set_bit(EFI_BOOT, &x86_efi_facility); | 929 | set_bit(EFI_BOOT, &efi.flags); |
930 | } else if (!strncmp((char *)&boot_params.efi_info.efi_loader_signature, | 930 | } else if (!strncmp((char *)&boot_params.efi_info.efi_loader_signature, |
931 | "EL64", 4)) { | 931 | "EL64", 4)) { |
932 | set_bit(EFI_BOOT, &x86_efi_facility); | 932 | set_bit(EFI_BOOT, &efi.flags); |
933 | set_bit(EFI_64BIT, &x86_efi_facility); | 933 | set_bit(EFI_64BIT, &efi.flags); |
934 | } | 934 | } |
935 | 935 | ||
936 | if (efi_enabled(EFI_BOOT)) | 936 | if (efi_enabled(EFI_BOOT)) |
@@ -1239,14 +1239,8 @@ void __init setup_arch(char **cmdline_p) | |||
1239 | register_refined_jiffies(CLOCK_TICK_RATE); | 1239 | register_refined_jiffies(CLOCK_TICK_RATE); |
1240 | 1240 | ||
1241 | #ifdef CONFIG_EFI | 1241 | #ifdef CONFIG_EFI |
1242 | /* Once setup is done above, unmap the EFI memory map on | 1242 | if (efi_enabled(EFI_BOOT)) |
1243 | * mismatched firmware/kernel archtectures since there is no | 1243 | efi_apply_memmap_quirks(); |
1244 | * support for runtime services. | ||
1245 | */ | ||
1246 | if (efi_enabled(EFI_BOOT) && !efi_is_native()) { | ||
1247 | pr_info("efi: Setup done, disabling due to 32/64-bit mismatch\n"); | ||
1248 | efi_unmap_memmap(); | ||
1249 | } | ||
1250 | #endif | 1244 | #endif |
1251 | } | 1245 | } |
1252 | 1246 | ||