1b3266bd6SJarkko Sakkinen/* 2b3266bd6SJarkko Sakkinen * Real-mode blob header; this should match realmode.h and be 3b3266bd6SJarkko Sakkinen * readonly; for mutable data instead add pointers into the .data 4b3266bd6SJarkko Sakkinen * or .bss sections as appropriate. 5b3266bd6SJarkko Sakkinen */ 6b3266bd6SJarkko Sakkinen 7b3266bd6SJarkko Sakkinen#include <linux/linkage.h> 8b3266bd6SJarkko Sakkinen#include <asm/page_types.h> 9b3266bd6SJarkko Sakkinen 10b3266bd6SJarkko Sakkinen .section ".header", "a" 11b3266bd6SJarkko Sakkinen 12b3266bd6SJarkko SakkinenENTRY(real_mode_header) 13b3266bd6SJarkko Sakkinen .long pa_text_start 14b3266bd6SJarkko Sakkinen .long pa_ro_end 15b3266bd6SJarkko Sakkinen .long pa_end 165a8c9aebSJarkko Sakkinen#ifdef CONFIG_X86_32 175a8c9aebSJarkko Sakkinen .long pa_machine_real_restart_asm 185a8c9aebSJarkko Sakkinen#endif 1948927bbbSJarkko Sakkinen /* SMP trampoline */ 2048927bbbSJarkko Sakkinen .long pa_trampoline_data 2148927bbbSJarkko Sakkinen .long pa_trampoline_status 2248927bbbSJarkko Sakkinen#ifdef CONFIG_X86_32 2348927bbbSJarkko Sakkinen .long pa_startup_32_smp 2448927bbbSJarkko Sakkinen .long pa_boot_gdt 2548927bbbSJarkko Sakkinen#else 2648927bbbSJarkko Sakkinen .long pa_startup_64_smp 2748927bbbSJarkko Sakkinen .long pa_level3_ident_pgt 2848927bbbSJarkko Sakkinen .long pa_level3_kernel_pgt 2948927bbbSJarkko Sakkinen#endif 30*c9b77ccbSJarkko Sakkinen /* ACPI sleep */ 31*c9b77ccbSJarkko Sakkinen#ifdef CONFIG_ACPI_SLEEP 32*c9b77ccbSJarkko Sakkinen .long pa_wakeup_start 33*c9b77ccbSJarkko Sakkinen .long pa_wakeup_header 34*c9b77ccbSJarkko Sakkinen#endif 35b3266bd6SJarkko SakkinenEND(real_mode_header) 36