ARM: OMAP4+: Allow kexec on SMP variants
authorTony Lindgren <tony@atomide.com>
Wed, 22 Jun 2016 09:05:12 +0000 (02:05 -0700)
committerTony Lindgren <tony@atomide.com>
Thu, 23 Jun 2016 05:57:02 +0000 (22:57 -0700)
Kexec needs omap4_cpu_kill, otherwise kexec will produce on SMP:

kexec_load failed: Invalid argument

Acked-by: Santosh Shilimkar <ssantosh@kernel.org>
Tested-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/mach-omap2/common.h
arch/arm/mach-omap2/omap-hotplug.c

index 0136405a465fac86fd726122c3948119a13ca6b2..deed42e1dd9c903aba522d306416537eb26f7762 100644 (file)
@@ -272,6 +272,7 @@ extern void omap_auxcoreboot_addr(u32 cpu_addr);
 extern u32 omap_read_auxcoreboot0(void);
 
 extern void omap4_cpu_die(unsigned int cpu);
+extern int omap4_cpu_kill(unsigned int cpu);
 
 extern const struct smp_operations omap4_smp_ops;
 
index 593fec753b282a40b54bedb6d26c53131b78a83c..d3fb5661bb5d4bc098b05e36f12278301b4c5597 100644 (file)
@@ -64,3 +64,9 @@ void omap4_cpu_die(unsigned int cpu)
                pr_debug("CPU%u: spurious wakeup call\n", cpu);
        }
 }
+
+/* Needed by kexec and platform_can_cpu_hotplug() */
+int omap4_cpu_kill(unsigned int cpu)
+{
+       return 1;
+}