header.S 924 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /*
  2. * Real-mode blob header; this should match realmode.h and be
  3. * readonly; for mutable data instead add pointers into the .data
  4. * or .bss sections as appropriate.
  5. */
  6. #include <linux/linkage.h>
  7. #include <asm/page_types.h>
  8. #include <asm/segment.h>
  9. #include "realmode.h"
  10. .section ".header", "a"
  11. .balign 16
  12. GLOBAL(real_mode_header)
  13. .long pa_text_start
  14. .long pa_ro_end
  15. /* SMP trampoline */
  16. .long pa_trampoline_start
  17. .long pa_trampoline_status
  18. .long pa_trampoline_header
  19. #ifdef CONFIG_X86_64
  20. .long pa_trampoline_pgd;
  21. #endif
  22. /* ACPI S3 wakeup */
  23. #ifdef CONFIG_ACPI_SLEEP
  24. .long pa_wakeup_start
  25. .long pa_wakeup_header
  26. #endif
  27. /* APM/BIOS reboot */
  28. .long pa_machine_real_restart_asm
  29. #ifdef CONFIG_X86_64
  30. .long __KERNEL32_CS
  31. #endif
  32. END(real_mode_header)
  33. /* End signature, used to verify integrity */
  34. .section ".signature","a"
  35. .balign 4
  36. GLOBAL(end_signature)
  37. .long REALMODE_END_SIGNATURE
  38. END(end_signature)