23 lines
727 B
Diff
23 lines
727 B
Diff
|
diff --git a/arch/x86/platform/efi/efi.c b/arch/x86/platform/efi/efi.c
|
||
|
index 3ae4128..ff7dc70 100644
|
||
|
--- a/arch/x86/platform/efi/efi.c
|
||
|
+++ b/arch/x86/platform/efi/efi.c
|
||
|
@@ -659,10 +659,13 @@ void __init efi_enter_virtual_mode(void)
|
||
|
|
||
|
for (p = memmap.map; p < memmap.map_end; p += memmap.desc_size) {
|
||
|
md = p;
|
||
|
- if (!(md->attribute & EFI_MEMORY_RUNTIME) &&
|
||
|
- md->type != EFI_BOOT_SERVICES_CODE &&
|
||
|
- md->type != EFI_BOOT_SERVICES_DATA)
|
||
|
- continue;
|
||
|
+ if (!(md->attribute & EFI_MEMORY_RUNTIME)) {
|
||
|
+#ifdef CONFIG_X86_64
|
||
|
+ if (md->type != EFI_BOOT_SERVICES_CODE &&
|
||
|
+ md->type != EFI_BOOT_SERVICES_DATA)
|
||
|
+#endif
|
||
|
+ continue;
|
||
|
+ }
|
||
|
|
||
|
size = md->num_pages << EFI_PAGE_SHIFT;
|
||
|
end = md->phys_addr + size;
|