setup.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #ifndef __ALPHA_SETUP_H
  2. #define __ALPHA_SETUP_H
  3. #define COMMAND_LINE_SIZE 256
  4. /*
  5. * We leave one page for the initial stack page, and one page for
  6. * the initial process structure. Also, the console eats 3 MB for
  7. * the initial bootloader (one of which we can reclaim later).
  8. */
  9. #define BOOT_PCB 0x20000000
  10. #define BOOT_ADDR 0x20000000
  11. /* Remove when official MILO sources have ELF support: */
  12. #define BOOT_SIZE (16*1024)
  13. #ifdef CONFIG_ALPHA_LEGACY_START_ADDRESS
  14. #define KERNEL_START_PHYS 0x300000 /* Old bootloaders hardcoded this. */
  15. #else
  16. #define KERNEL_START_PHYS 0x1000000 /* required: Wildfire/Titan/Marvel */
  17. #endif
  18. #define KERNEL_START (PAGE_OFFSET+KERNEL_START_PHYS)
  19. #define SWAPPER_PGD KERNEL_START
  20. #define INIT_STACK (PAGE_OFFSET+KERNEL_START_PHYS+0x02000)
  21. #define EMPTY_PGT (PAGE_OFFSET+KERNEL_START_PHYS+0x04000)
  22. #define EMPTY_PGE (PAGE_OFFSET+KERNEL_START_PHYS+0x08000)
  23. #define ZERO_PGE (PAGE_OFFSET+KERNEL_START_PHYS+0x0A000)
  24. #define START_ADDR (PAGE_OFFSET+KERNEL_START_PHYS+0x10000)
  25. /*
  26. * This is setup by the secondary bootstrap loader. Because
  27. * the zero page is zeroed out as soon as the vm system is
  28. * initialized, we need to copy things out into a more permanent
  29. * place.
  30. */
  31. #define PARAM ZERO_PGE
  32. #define COMMAND_LINE ((char*)(PARAM + 0x0000))
  33. #define INITRD_START (*(unsigned long *) (PARAM+0x100))
  34. #define INITRD_SIZE (*(unsigned long *) (PARAM+0x108))
  35. #endif