aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'arch/sh/kernel')
-rw-r--r--arch/sh/kernel/smp.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/arch/sh/kernel/smp.c b/arch/sh/kernel/smp.c
index 60c50841143e..ebfdd364544f 100644
--- a/arch/sh/kernel/smp.c
+++ b/arch/sh/kernel/smp.c
@@ -3,7 +3,7 @@
3 * 3 *
4 * SMP support for the SuperH processors. 4 * SMP support for the SuperH processors.
5 * 5 *
6 * Copyright (C) 2002 - 2007 Paul Mundt 6 * Copyright (C) 2002 - 2008 Paul Mundt
7 * Copyright (C) 2006 - 2007 Akio Idehara 7 * Copyright (C) 2006 - 2007 Akio Idehara
8 * 8 *
9 * This file is subject to the terms and conditions of the GNU General Public 9 * This file is subject to the terms and conditions of the GNU General Public
@@ -184,6 +184,24 @@ void arch_send_call_function_single_ipi(int cpu)
184 plat_send_ipi(cpu, SMP_MSG_FUNCTION_SINGLE); 184 plat_send_ipi(cpu, SMP_MSG_FUNCTION_SINGLE);
185} 185}
186 186
187void smp_message_recv(unsigned int msg)
188{
189 switch (msg) {
190 case SMP_MSG_FUNCTION:
191 generic_smp_call_function_interrupt();
192 break;
193 case SMP_MSG_RESCHEDULE:
194 break;
195 case SMP_MSG_FUNCTION_SINGLE:
196 generic_smp_call_function_single_interrupt();
197 break;
198 default:
199 printk(KERN_WARNING "SMP %d: %s(): unknown IPI %d\n",
200 smp_processor_id(), __func__, msg);
201 break;
202 }
203}
204
187/* Not really SMP stuff ... */ 205/* Not really SMP stuff ... */
188int setup_profiling_timer(unsigned int multiplier) 206int setup_profiling_timer(unsigned int multiplier)
189{ 207{