aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2007-03-04 13:27:34 -0500
committerRalf Baechle <ralf@linux-mips.org>2007-03-06 19:07:16 -0500
commit57a2050c408620613c5715171364de2cc5566f22 (patch)
tree8280cdd114311d5eb594b9358932058ee756bb08
parentb3920590b589a1dbb41eb58ef0ed2699f136482a (diff)
[MIPS] SMTC: De-obscure Malta hooks.
Should now be understandable why the thing works ... Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r--arch/mips/mips-boards/malta/Makefile2
-rw-r--r--arch/mips/mips-boards/malta/malta_smtc.c (renamed from arch/mips/mips-boards/malta/malta_smp.c)31
2 files changed, 6 insertions, 27 deletions
diff --git a/arch/mips/mips-boards/malta/Makefile b/arch/mips/mips-boards/malta/Makefile
index cb7f349b0514..377d9e8f250a 100644
--- a/arch/mips/mips-boards/malta/Makefile
+++ b/arch/mips/mips-boards/malta/Makefile
@@ -21,4 +21,4 @@
21 21
22obj-y := malta_int.o malta_setup.o 22obj-y := malta_int.o malta_setup.o
23obj-$(CONFIG_MTD) += malta_mtd.o 23obj-$(CONFIG_MTD) += malta_mtd.o
24obj-$(CONFIG_SMP) += malta_smp.o 24obj-$(CONFIG_MIPS_MT_SMTC) += malta_smtc.o
diff --git a/arch/mips/mips-boards/malta/malta_smp.c b/arch/mips/mips-boards/malta/malta_smtc.c
index cf967170fe29..d1c80f631100 100644
--- a/arch/mips/mips-boards/malta/malta_smp.c
+++ b/arch/mips/mips-boards/malta/malta_smtc.c
@@ -1,25 +1,14 @@
1/* 1/*
2 * Malta Platform-specific hooks for SMP operation 2 * Malta Platform-specific hooks for SMP operation
3 */ 3 */
4#include <linux/init.h>
4 5
5#include <linux/kernel.h> 6#include <asm/mipsregs.h>
6#include <linux/sched.h> 7#include <asm/mipsmtregs.h>
7#include <linux/cpumask.h> 8#include <asm/smtc.h>
8#include <linux/interrupt.h>
9
10#include <asm/atomic.h>
11#include <asm/cpu.h>
12#include <asm/processor.h>
13#include <asm/system.h>
14#include <asm/hardirq.h>
15#include <asm/mmu_context.h>
16#include <asm/smp.h>
17#ifdef CONFIG_MIPS_MT_SMTC
18#include <asm/smtc_ipi.h> 9#include <asm/smtc_ipi.h>
19#endif /* CONFIG_MIPS_MT_SMTC */
20 10
21/* VPE/SMP Prototype implements platform interfaces directly */ 11/* VPE/SMP Prototype implements platform interfaces directly */
22#if !defined(CONFIG_MIPS_MT_SMP)
23 12
24/* 13/*
25 * Cause the specified action to be performed on a targeted "CPU" 14 * Cause the specified action to be performed on a targeted "CPU"
@@ -27,10 +16,8 @@
27 16
28void core_send_ipi(int cpu, unsigned int action) 17void core_send_ipi(int cpu, unsigned int action)
29{ 18{
30/* "CPU" may be TC of same VPE, VPE of same CPU, or different CPU */ 19 /* "CPU" may be TC of same VPE, VPE of same CPU, or different CPU */
31#ifdef CONFIG_MIPS_MT_SMTC
32 smtc_send_ipi(cpu, LINUX_SMP_IPI, action); 20 smtc_send_ipi(cpu, LINUX_SMP_IPI, action);
33#endif /* CONFIG_MIPS_MT_SMTC */
34} 21}
35 22
36/* 23/*
@@ -39,9 +26,7 @@ void core_send_ipi(int cpu, unsigned int action)
39 26
40void prom_boot_secondary(int cpu, struct task_struct *idle) 27void prom_boot_secondary(int cpu, struct task_struct *idle)
41{ 28{
42#ifdef CONFIG_MIPS_MT_SMTC
43 smtc_boot_secondary(cpu, idle); 29 smtc_boot_secondary(cpu, idle);
44#endif /* CONFIG_MIPS_MT_SMTC */
45} 30}
46 31
47/* 32/*
@@ -50,7 +35,6 @@ void prom_boot_secondary(int cpu, struct task_struct *idle)
50 35
51void prom_init_secondary(void) 36void prom_init_secondary(void)
52{ 37{
53#ifdef CONFIG_MIPS_MT_SMTC
54 void smtc_init_secondary(void); 38 void smtc_init_secondary(void);
55 int myvpe; 39 int myvpe;
56 40
@@ -65,7 +49,6 @@ void prom_init_secondary(void)
65 } 49 }
66 50
67 smtc_init_secondary(); 51 smtc_init_secondary();
68#endif /* CONFIG_MIPS_MT_SMTC */
69} 52}
70 53
71/* 54/*
@@ -93,9 +76,7 @@ void __init plat_prepare_cpus(unsigned int max_cpus)
93 76
94void prom_smp_finish(void) 77void prom_smp_finish(void)
95{ 78{
96#ifdef CONFIG_MIPS_MT_SMTC
97 smtc_smp_finish(); 79 smtc_smp_finish();
98#endif /* CONFIG_MIPS_MT_SMTC */
99} 80}
100 81
101/* 82/*
@@ -105,5 +86,3 @@ void prom_smp_finish(void)
105void prom_cpus_done(void) 86void prom_cpus_done(void)
106{ 87{
107} 88}
108
109#endif /* CONFIG_MIPS32R2_MT_SMP */