[PATCH] kexec: kexec ppc support
[linux-2.6.git] / include / asm-ppc / kexec.h
1 #ifndef _PPC_KEXEC_H
2 #define _PPC_KEXEC_H
3
4 #ifdef CONFIG_KEXEC
5
6 /*
7  * KEXEC_SOURCE_MEMORY_LIMIT maximum page get_free_page can return.
8  * I.e. Maximum page that is mapped directly into kernel memory,
9  * and kmap is not required.
10  *
11  * Someone correct me if FIXADDR_START - PAGEOFFSET is not the correct
12  * calculation for the amount of memory directly mappable into the
13  * kernel memory space.
14  */
15
16 /* Maximum physical address we can use pages from */
17 #define KEXEC_SOURCE_MEMORY_LIMIT (-1UL)
18 /* Maximum address we can reach in physical address mode */
19 #define KEXEC_DESTINATION_MEMORY_LIMIT (-1UL)
20 /* Maximum address we can use for the control code buffer */
21 #define KEXEC_CONTROL_MEMORY_LIMIT TASK_SIZE
22
23 #define KEXEC_CONTROL_CODE_SIZE 4096
24
25 /* The native architecture */
26 #define KEXEC_ARCH KEXEC_ARCH_PPC
27
28 #ifndef __ASSEMBLY__
29
30 struct kimage;
31
32 extern void machine_kexec_simple(struct kimage *image);
33
34 #endif /* __ASSEMBLY__ */
35
36 #endif /* CONFIG_KEXEC */
37
38 #endif /* _PPC_KEXEC_H */