1 #ifndef _X86_ASM_SETUP_H_ 2 #define _X86_ASM_SETUP_H_ 3 4 unsigned long setup_tss(u8 *stacktop); 5 6 #ifdef TARGET_EFI 7 #include "x86/acpi.h" 8 #include "x86/apic.h" 9 #include "x86/smp.h" 10 #include "efi.h" 11 12 /* 13 * efi_bootinfo_t: stores EFI-related machine info retrieved by 14 * setup_efi_pre_boot(), and is then used by setup_efi(). setup_efi() cannot 15 * retrieve this info as it is called after ExitBootServices and thus some EFI 16 * resources are not available. 17 */ 18 typedef struct { 19 phys_addr_t free_mem_start; 20 phys_addr_t free_mem_size; 21 struct rsdp_descriptor *rsdp; 22 } efi_bootinfo_t; 23 24 void setup_efi_bootinfo(efi_bootinfo_t *efi_bootinfo); 25 void setup_efi(efi_bootinfo_t *efi_bootinfo); 26 efi_status_t setup_efi_pre_boot(unsigned long *mapkey, efi_bootinfo_t *efi_bootinfo); 27 #endif /* TARGET_EFI */ 28 29 #endif /* _X86_ASM_SETUP_H_ */ 30