blob: bf26b06819314ccb69850d55b1e95703a08b5501 [file] [log] [blame]
Jarkko Sakkinen084ee1c62012-05-08 21:22:26 +03001#ifndef _ARCH_X86_REALMODE_H
2#define _ARCH_X86_REALMODE_H
3
4#include <linux/types.h>
5#include <asm/io.h>
6
7/* This must match data at realmode.S */
8struct real_mode_header {
9 u32 text_start;
10 u32 ro_end;
11 u32 end;
Jarkko Sakkinen5a8c9ae2012-05-08 21:22:27 +030012 /* reboot */
13#ifdef CONFIG_X86_32
14 u32 machine_real_restart_asm;
15#endif
Jarkko Sakkinen084ee1c62012-05-08 21:22:26 +030016} __attribute__((__packed__));
17
18extern struct real_mode_header real_mode_header;
19extern unsigned char *real_mode_base;
20
21extern unsigned long init_rsp;
22extern unsigned long initial_code;
23extern unsigned long initial_gs;
24
25extern unsigned char real_mode_blob[];
26extern unsigned char real_mode_relocs[];
27
28extern void __init setup_real_mode(void);
29
30#endif /* _ARCH_X86_REALMODE_H */