aboutsummaryrefslogtreecommitdiff
path: root/common/subarch.h
blob: 788cc8d17dcef5d83a3e61064cfb1667ed4cb98c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
/*
 * subarch specific definitions
 */

#ifndef SUBARCH_H
#define SUBARCH_H

#include <stdint.h>

#define PAGE_SIZE	4096
#define STACK_PAGES	16

/* supported subarches */
#define IP22 	0
#define IP32 	1

/*
 *  Reserve this memory for loading kernel
 *  Don't put loader structures there because they would be overwritten
 *
 *  We put the loader right after the kernel so you won't have the
 *  full reserved space since the prom puts the stack right below
 *  the loader.
 */
struct kernel_load_block {
	uint32_t base;
	uint32_t reserved;
};

struct kernel_load_block kernel_load[] = {
	{ /* IP22 */
	.base =     0x88002000,
	.reserved =  0x1700000,
	},
	{ /* IP32 */
	.base     = 0x80004000,
	.reserved =  0x1400000,
	},
};

/* we filter these out of the command line */
char* env_vars[] = { "ConsoleIn=",
                     "ConsoleOut=",
                     "OSLoader=",
                     "OSLoadPartition=",
                     "OSLoadFilename=",
                     "OSLoadOptions=",
                   };
#define NENTS(foo) ((sizeof((foo)) / (sizeof((foo[0])))))

#endif