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