aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/powermac/smp.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/platforms/powermac/smp.c')
-rw-r--r--arch/powerpc/platforms/powermac/smp.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/arch/powerpc/platforms/powermac/smp.c b/arch/powerpc/platforms/powermac/smp.c
index bc5f0dc6ae1e..621d4b7755f2 100644
--- a/arch/powerpc/platforms/powermac/smp.c
+++ b/arch/powerpc/platforms/powermac/smp.c
@@ -329,7 +329,7 @@ static int __init smp_psurge_probe(void)
329 return ncpus; 329 return ncpus;
330} 330}
331 331
332static void __init smp_psurge_kick_cpu(int nr) 332static int __init smp_psurge_kick_cpu(int nr)
333{ 333{
334 unsigned long start = __pa(__secondary_start_pmac_0) + nr * 8; 334 unsigned long start = __pa(__secondary_start_pmac_0) + nr * 8;
335 unsigned long a, flags; 335 unsigned long a, flags;
@@ -394,6 +394,8 @@ static void __init smp_psurge_kick_cpu(int nr)
394 psurge_set_ipi(1); 394 psurge_set_ipi(1);
395 395
396 if (ppc_md.progress) ppc_md.progress("smp_psurge_kick_cpu - done", 0x354); 396 if (ppc_md.progress) ppc_md.progress("smp_psurge_kick_cpu - done", 0x354);
397
398 return 0;
397} 399}
398 400
399static struct irqaction psurge_irqaction = { 401static struct irqaction psurge_irqaction = {
@@ -791,14 +793,14 @@ static int __init smp_core99_probe(void)
791 return ncpus; 793 return ncpus;
792} 794}
793 795
794static void __devinit smp_core99_kick_cpu(int nr) 796static int __devinit smp_core99_kick_cpu(int nr)
795{ 797{
796 unsigned int save_vector; 798 unsigned int save_vector;
797 unsigned long target, flags; 799 unsigned long target, flags;
798 unsigned int *vector = (unsigned int *)(PAGE_OFFSET+0x100); 800 unsigned int *vector = (unsigned int *)(PAGE_OFFSET+0x100);
799 801
800 if (nr < 0 || nr > 3) 802 if (nr < 0 || nr > 3)
801 return; 803 return -ENOENT;
802 804
803 if (ppc_md.progress) 805 if (ppc_md.progress)
804 ppc_md.progress("smp_core99_kick_cpu", 0x346); 806 ppc_md.progress("smp_core99_kick_cpu", 0x346);
@@ -830,6 +832,8 @@ static void __devinit smp_core99_kick_cpu(int nr)
830 832
831 local_irq_restore(flags); 833 local_irq_restore(flags);
832 if (ppc_md.progress) ppc_md.progress("smp_core99_kick_cpu done", 0x347); 834 if (ppc_md.progress) ppc_md.progress("smp_core99_kick_cpu done", 0x347);
835
836 return 0;
833} 837}
834 838
835static void __devinit smp_core99_setup_cpu(int cpu_nr) 839static void __devinit smp_core99_setup_cpu(int cpu_nr)