aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2006-09-27 05:26:05 -0400
committerPaul Mundt <lethal@linux-sh.org>2006-09-27 05:26:05 -0400
commit9d549a7d8ef71f684a35cf1e438543957cf81d12 (patch)
tree0090b908ba5fe448c082b2e2da51d7136cb04e29
parent05ae91585167410dadd1bc8f2e207a062e638a16 (diff)
sh: Update kexec support for API changes.
This was falling a bit behind.. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
-rw-r--r--arch/sh/kernel/machine_kexec.c6
-rw-r--r--arch/sh/kernel/process.c10
-rw-r--r--include/asm-sh/kexec.h9
3 files changed, 3 insertions, 22 deletions
diff --git a/arch/sh/kernel/machine_kexec.c b/arch/sh/kernel/machine_kexec.c
index 6bcd8d92399f..08587cdb64d6 100644
--- a/arch/sh/kernel/machine_kexec.c
+++ b/arch/sh/kernel/machine_kexec.c
@@ -29,12 +29,6 @@ extern const unsigned char relocate_new_kernel[];
29extern const unsigned int relocate_new_kernel_size; 29extern const unsigned int relocate_new_kernel_size;
30extern void *gdb_vbr_vector; 30extern void *gdb_vbr_vector;
31 31
32/*
33 * Provide a dummy crash_notes definition while crash dump arrives to ppc.
34 * This prevents breakage of crash_notes attribute in kernel/ksysfs.c.
35 */
36void *crash_notes = NULL;
37
38void machine_shutdown(void) 32void machine_shutdown(void)
39{ 33{
40} 34}
diff --git a/arch/sh/kernel/process.c b/arch/sh/kernel/process.c
index 2167746e88f1..630ec1af2483 100644
--- a/arch/sh/kernel/process.c
+++ b/arch/sh/kernel/process.c
@@ -81,16 +81,6 @@ void cpu_idle(void)
81 81
82void machine_restart(char * __unused) 82void machine_restart(char * __unused)
83{ 83{
84
85#ifdef CONFIG_KEXEC
86 struct kimage *image;
87 image = xchg(&kexec_image, 0);
88 if (image) {
89 machine_shutdown();
90 machine_kexec(image);
91 }
92#endif
93
94 /* SR.BL=1 and invoke address error to let CPU reset (manual reset) */ 84 /* SR.BL=1 and invoke address error to let CPU reset (manual reset) */
95 asm volatile("ldc %0, sr\n\t" 85 asm volatile("ldc %0, sr\n\t"
96 "mov.l @%1, %0" : : "r" (0x10000000), "r" (0x80000001)); 86 "mov.l @%1, %0" : : "r" (0x10000000), "r" (0x80000001));
diff --git a/include/asm-sh/kexec.h b/include/asm-sh/kexec.h
index a5f85e9e428d..9d235af20cdd 100644
--- a/include/asm-sh/kexec.h
+++ b/include/asm-sh/kexec.h
@@ -25,11 +25,8 @@
25 25
26#define MAX_NOTE_BYTES 1024 26#define MAX_NOTE_BYTES 1024
27 27
28#ifndef __ASSEMBLY__ 28/* Provide a dummy definition to avoid build failures. */
29 29static inline void crash_setup_regs(struct pt_regs *newregs,
30extern void machine_shutdown(void); 30 struct pt_regs *oldregs) { }
31extern void *crash_notes;
32
33#endif /* __ASSEMBLY__ */
34 31
35#endif /* _SH_KEXEC_H */ 32#endif /* _SH_KEXEC_H */