]> Pileus Git - ~andy/linux/blobdiff - arch/x86/platform/efi/efi_64.c
Merge branch 'core-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[~andy/linux] / arch / x86 / platform / efi / efi_64.c
index 95fd505dfeb6e43dd37b0c41954f0b0db6535d1c..06c8b2e662ab6c5a9d6581a7bb9c2a256d1826e7 100644 (file)
@@ -58,6 +58,21 @@ static void __init early_code_mapping_set_exec(int executable)
        }
 }
 
+unsigned long efi_call_virt_prelog(void)
+{
+       unsigned long saved;
+
+       saved = read_cr3();
+       write_cr3(real_mode_header->trampoline_pgd);
+
+       return saved;
+}
+
+void efi_call_virt_epilog(unsigned long saved)
+{
+       write_cr3(saved);
+}
+
 void __init efi_call_phys_prelog(void)
 {
        unsigned long vaddress;