aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/include
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/include')
-rw-r--r--arch/x86/include/asm/realmode.h32
1 files changed, 20 insertions, 12 deletions
diff --git a/arch/x86/include/asm/realmode.h b/arch/x86/include/asm/realmode.h
index d3ae49f4c3ef..1421eed1c8e8 100644
--- a/arch/x86/include/asm/realmode.h
+++ b/arch/x86/include/asm/realmode.h
@@ -8,25 +8,33 @@
8struct real_mode_header { 8struct real_mode_header {
9 u32 text_start; 9 u32 text_start;
10 u32 ro_end; 10 u32 ro_end;
11 /* reboot */
12#ifdef CONFIG_X86_32
13 u32 machine_real_restart_asm;
14#endif
15 /* SMP trampoline */ 11 /* SMP trampoline */
16 u32 trampoline_data; 12 u32 trampoline_start;
17 u32 trampoline_status; 13 u32 trampoline_status;
18#ifdef CONFIG_X86_32 14 u32 trampoline_header;
19 u32 startup_32_smp; 15#ifdef CONFIG_X86_64
20 u32 boot_gdt; 16 u32 trampoline_pgd;
21#else
22 u32 startup_64_smp;
23 u32 level3_ident_pgt;
24 u32 level3_kernel_pgt;
25#endif 17#endif
18 /* ACPI S3 wakeup */
26#ifdef CONFIG_ACPI_SLEEP 19#ifdef CONFIG_ACPI_SLEEP
27 u32 wakeup_start; 20 u32 wakeup_start;
28 u32 wakeup_header; 21 u32 wakeup_header;
29#endif 22#endif
23 /* APM/BIOS reboot */
24#ifdef CONFIG_X86_32
25 u32 machine_real_restart_asm;
26#endif
27} __attribute__((__packed__));
28
29/* This must match data at trampoline_32/64.S */
30struct trampoline_header {
31#ifdef CONFIG_X86_32
32 u32 start;
33 u16 gdt_limit;
34 u32 gdt_base;
35#else
36 u64 start;
37#endif
30} __attribute__((__packed__)); 38} __attribute__((__packed__));
31 39
32extern struct real_mode_header *real_mode_header; 40extern struct real_mode_header *real_mode_header;