mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-15 07:16:47 +07:00
f37240f16b
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>
32 lines
685 B
ArmAsm
32 lines
685 B
ArmAsm
/*
|
|
* 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>
|
|
|
|
.section ".header", "a"
|
|
|
|
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 */
|
|
#ifdef CONFIG_X86_32
|
|
.long pa_machine_real_restart_asm
|
|
#endif
|
|
END(real_mode_header)
|