| /* | |
| * Real-mode blob header; this should match realmode.h and be | |
| * readonly; for mutable data instead add pointers into the .data | |
| * or .bss sections as appropriate. | |
| */ | |
| #include <linux/linkage.h> | |
| #include <asm/page_types.h> | |
| #include <asm/segment.h> | |
| #include "realmode.h" | |
| .section ".header", "a" | |
| .balign 16 | |
| GLOBAL(real_mode_header) | |
| .long pa_text_start | |
| .long pa_ro_end | |
| /* SMP trampoline */ | |
| .long pa_trampoline_start | |
| .long pa_trampoline_status | |
| .long pa_trampoline_header | |
| #ifdef CONFIG_X86_64 | |
| .long pa_trampoline_pgd; | |
| #endif | |
| /* ACPI S3 wakeup */ | |
| #ifdef CONFIG_ACPI_SLEEP | |
| .long pa_wakeup_start | |
| .long pa_wakeup_header | |
| #endif | |
| /* APM/BIOS reboot */ | |
| .long pa_machine_real_restart_asm | |
| #ifdef CONFIG_X86_64 | |
| .long __KERNEL32_CS | |
| #endif | |
| END(real_mode_header) | |
| /* End signature, used to verify integrity */ | |
| .section ".signature","a" | |
| .balign 4 | |
| GLOBAL(end_signature) | |
| .long REALMODE_END_SIGNATURE | |
| END(end_signature) |