diff options
author | Maxim Uvarov <muvarov@gmail.com> | 2010-05-12 11:08:41 +0400 |
---|---|---|
committer | Simon Horman <horms@verge.net.au> | 2010-05-13 23:47:28 +0900 |
commit | 00f6fff403c6bbb3241def8451d17f5f2544b5a9 (patch) | |
tree | da4ac430f191fb9e9e8031cf5c6fb86e6e33c118 /kexec/arch/ppc/kexec-ppc.h | |
parent | 51234576b4ed8d4fcaf2ef1bbd625e050c592d15 (diff) |
Fix kexec on powerpc32
Signed-off-by: Maxim Uvarov <muvarov@gmail.com>
Signed-off-by: Maxim Uvarov <muvarov@gmail.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
Diffstat (limited to 'kexec/arch/ppc/kexec-ppc.h')
-rw-r--r-- | kexec/arch/ppc/kexec-ppc.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/kexec/arch/ppc/kexec-ppc.h b/kexec/arch/ppc/kexec-ppc.h index 6cec467..fc0471f 100644 --- a/kexec/arch/ppc/kexec-ppc.h +++ b/kexec/arch/ppc/kexec-ppc.h @@ -1,6 +1,11 @@ #ifndef KEXEC_PPC_H #define KEXEC_PPC_H +#define MAXBYTES 128 +#define MAX_LINE 160 +#define CORE_TYPE_ELF32 1 +#define CORE_TYPE_ELF64 2 + extern unsigned char setup_simple_start[]; extern uint32_t setup_simple_size; @@ -16,6 +21,8 @@ extern struct { uint32_t spr8; } setup_dol_regs; +#define SIZE_16M (16*1024*1024UL) + int elf_ppc_probe(const char *buf, off_t len); int elf_ppc_load(int argc, char **argv, const char *buf, off_t len, struct kexec_info *info); @@ -37,4 +44,29 @@ void dol_ppc_usage(void); */ #define KERNEL_ACCESS_TOP (24 * 1024 * 1024) +/* boot block version 17 as defined by the linux kernel */ +struct bootblock { + unsigned magic, + totalsize, + off_dt_struct, + off_dt_strings, + off_mem_rsvmap, + version, + last_comp_version, + boot_physid, + dt_strings_size, + dt_struct_size; +}; + +typedef struct mem_rgns { + unsigned int size; + struct memory_range *ranges; +} mem_rgns_t; +extern mem_rgns_t usablemem_rgns; +extern int max_memory_ranges; +extern unsigned long long initrd_base, initrd_size; +extern unsigned char reuse_initrd; +#define COMMAND_LINE_SIZE 512 /* from kernel */ +/*fs2dt*/ +void reserve(unsigned long long where, unsigned long long length); #endif /* KEXEC_PPC_H */ |