x86, realmode: header for trampoline code

Added header for trampoline code that can be used to supply
input data to it. This makes interface between real mode code
and kernel cleaner and simpler. Replaced two confusing pointers
to level4 pgt in trampoline_64.S with a single pointer to the
beginning of the page table.

Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@intel.com>
Link: http://lkml.kernel.org/r/1336501366-28617-21-git-send-email-jarkko.sakkinen@intel.com
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
This commit is contained in:
Jarkko Sakkinen
2012-05-08 21:22:43 +03:00
committed by H. Peter Anvin
parent c4845474a0
commit f37240f16b
8 changed files with 87 additions and 88 deletions

View File

@@ -0,0 +1,23 @@
.section ".rodata","a"
.balign 4
tr_idt: .fill 1, 6, 0
.bss
.balign 4
GLOBAL(trampoline_status) .space 4
GLOBAL(trampoline_header)
#ifdef CONFIG_X86_32
tr_start: .space 4
tr_gdt: .space 6
#else
tr_start: .space 8
#endif
END(trampoline_header)
#ifdef CONFIG_X86_64
.balign PAGE_SIZE
GLOBAL(trampoline_pgd) .space PAGE_SIZE
#endif