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