diff options
author | Michael Ellerman <michael@ellerman.id.au> | 2005-12-04 02:39:48 -0500 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-01-08 22:52:31 -0500 |
commit | dcee30361d25ea83499a99f921f9a56b4a1a79e7 (patch) | |
tree | 3ec01e42ba916047c370925e6d8ede1ae96293bf /arch/powerpc/kernel/prom.c | |
parent | cc53291521701f9c7c7265bbb3c140563174d8b2 (diff) |
[PATCH] powerpc: Parse crashkernel= parameter in first kernel
This patch adds code to parse and setup the crash kernel resource in the
first kernel. PPC64 ignores the @x part, we always run at 32 MB.
Signed-off-by: Haren Myneni <haren@us.ibm.com>
Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/kernel/prom.c')
-rw-r--r-- | arch/powerpc/kernel/prom.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c index 9aac77ca3167..fddc9c13bff5 100644 --- a/arch/powerpc/kernel/prom.c +++ b/arch/powerpc/kernel/prom.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #include <linux/initrd.h> | 29 | #include <linux/initrd.h> |
30 | #include <linux/bitops.h> | 30 | #include <linux/bitops.h> |
31 | #include <linux/module.h> | 31 | #include <linux/module.h> |
32 | #include <linux/kexec.h> | ||
32 | 33 | ||
33 | #include <asm/prom.h> | 34 | #include <asm/prom.h> |
34 | #include <asm/rtas.h> | 35 | #include <asm/rtas.h> |
@@ -1198,6 +1199,16 @@ static int __init early_init_dt_scan_chosen(unsigned long node, | |||
1198 | } | 1199 | } |
1199 | #endif /* CONFIG_PPC_RTAS */ | 1200 | #endif /* CONFIG_PPC_RTAS */ |
1200 | 1201 | ||
1202 | #ifdef CONFIG_KEXEC | ||
1203 | lprop = (u64*)of_get_flat_dt_prop(node, "linux,crashkernel-base", NULL); | ||
1204 | if (lprop) | ||
1205 | crashk_res.start = *lprop; | ||
1206 | |||
1207 | lprop = (u64*)of_get_flat_dt_prop(node, "linux,crashkernel-size", NULL); | ||
1208 | if (lprop) | ||
1209 | crashk_res.end = crashk_res.start + *lprop - 1; | ||
1210 | #endif | ||
1211 | |||
1201 | /* break now */ | 1212 | /* break now */ |
1202 | return 1; | 1213 | return 1; |
1203 | } | 1214 | } |