1cb1c9e02SArd Biesheuvel /* SPDX-License-Identifier: GPL-2.0-only */
2cb1c9e02SArd Biesheuvel 
3cb1c9e02SArd Biesheuvel #include <linux/efi.h>
4cb1c9e02SArd Biesheuvel 
5db772413SArd Biesheuvel extern struct boot_params *boot_params_pointer asm("boot_params");
6db772413SArd Biesheuvel 
7cb1c9e02SArd Biesheuvel extern void trampoline_32bit_src(void *, bool);
8cb1c9e02SArd Biesheuvel extern const u16 trampoline_ljmp_imm_offset;
9cb1c9e02SArd Biesheuvel 
10*c756fd5dSArd Biesheuvel efi_status_t efi_adjust_memory_range_protection(unsigned long start,
11cb1c9e02SArd Biesheuvel 						unsigned long size);
12cb1c9e02SArd Biesheuvel 
13cb1c9e02SArd Biesheuvel #ifdef CONFIG_X86_64
14cb1c9e02SArd Biesheuvel efi_status_t efi_setup_5level_paging(void);
15cb1c9e02SArd Biesheuvel void efi_5level_switch(void);
16cb1c9e02SArd Biesheuvel #else
efi_setup_5level_paging(void)17cb1c9e02SArd Biesheuvel static inline efi_status_t efi_setup_5level_paging(void) { return EFI_SUCCESS; }
efi_5level_switch(void)18cb1c9e02SArd Biesheuvel static inline void efi_5level_switch(void) {}
19cb1c9e02SArd Biesheuvel #endif
20