aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/powerpc/kernel/machine_kexec.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/arch/powerpc/kernel/machine_kexec.c b/arch/powerpc/kernel/machine_kexec.c
index 037ade74a99e..4f797c0b7148 100644
--- a/arch/powerpc/kernel/machine_kexec.c
+++ b/arch/powerpc/kernel/machine_kexec.c
@@ -22,6 +22,8 @@ void machine_crash_shutdown(struct pt_regs *regs)
22{ 22{
23 if (ppc_md.machine_crash_shutdown) 23 if (ppc_md.machine_crash_shutdown)
24 ppc_md.machine_crash_shutdown(regs); 24 ppc_md.machine_crash_shutdown(regs);
25 else
26 default_machine_crash_shutdown(regs);
25} 27}
26 28
27/* 29/*
@@ -33,11 +35,8 @@ int machine_kexec_prepare(struct kimage *image)
33{ 35{
34 if (ppc_md.machine_kexec_prepare) 36 if (ppc_md.machine_kexec_prepare)
35 return ppc_md.machine_kexec_prepare(image); 37 return ppc_md.machine_kexec_prepare(image);
36 /* 38 else
37 * Fail if platform doesn't provide its own machine_kexec_prepare 39 return default_machine_kexec_prepare(image);
38 * implementation.
39 */
40 return -ENOSYS;
41} 40}
42 41
43void machine_kexec_cleanup(struct kimage *image) 42void machine_kexec_cleanup(struct kimage *image)
@@ -54,13 +53,11 @@ void machine_kexec(struct kimage *image)
54{ 53{
55 if (ppc_md.machine_kexec) 54 if (ppc_md.machine_kexec)
56 ppc_md.machine_kexec(image); 55 ppc_md.machine_kexec(image);
57 else { 56 else
58 /* 57 default_machine_kexec(image);
59 * Fall back to normal restart if platform doesn't provide 58
60 * its own kexec function, and user insist to kexec... 59 /* Fall back to normal restart if we're still alive. */
61 */ 60 machine_restart(NULL);
62 machine_restart(NULL);
63 }
64 for(;;); 61 for(;;);
65} 62}
66 63