ARM: socfpga: add smp_ops.cpu_kill to make kexec/kdump available
Kexec_load syscall in ARM requires that machine-specific code has the smp_ops.cpu_kill() before loading kernel image. This patch adds the cpu_kill(), as a result, kexec reboot and kernel crash dump become available in mach-socfpga. Signed-off-by: Hiraku Toyooka <hiraku.toyooka.gu@hitachi.com> Cc: Dinh Nguyen <dinguyen@opensource.altera.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: linux-arm-kernel@lists.infradead.org Cc: linux-kernel@vger.kernel.org Link: http://lists.infradead.org/pipermail/linux-arm-kernel/2015-June/348004.html Signed-off-by: Dinh Nguyen <dinguyen@opensource.altera.com>
This commit is contained in:
parent
d770e558e2
commit
b33612e183
1 changed files with 13 additions and 0 deletions
|
@ -106,11 +106,23 @@ static void socfpga_cpu_die(unsigned int cpu)
|
|||
cpu_do_idle();
|
||||
}
|
||||
|
||||
/*
|
||||
* We need a dummy function so that platform_can_cpu_hotplug() knows
|
||||
* we support CPU hotplug. However, the function does not need to do
|
||||
* anything, because CPUs going offline just do WFI. We could reset
|
||||
* the CPUs but it would increase power consumption.
|
||||
*/
|
||||
static int socfpga_cpu_kill(unsigned int cpu)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
static struct smp_operations socfpga_smp_ops __initdata = {
|
||||
.smp_prepare_cpus = socfpga_smp_prepare_cpus,
|
||||
.smp_boot_secondary = socfpga_boot_secondary,
|
||||
#ifdef CONFIG_HOTPLUG_CPU
|
||||
.cpu_die = socfpga_cpu_die,
|
||||
.cpu_kill = socfpga_cpu_kill,
|
||||
#endif
|
||||
};
|
||||
|
||||
|
@ -119,6 +131,7 @@ static struct smp_operations socfpga_a10_smp_ops __initdata = {
|
|||
.smp_boot_secondary = socfpga_a10_boot_secondary,
|
||||
#ifdef CONFIG_HOTPLUG_CPU
|
||||
.cpu_die = socfpga_cpu_die,
|
||||
.cpu_kill = socfpga_cpu_kill,
|
||||
#endif
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue