diff options
author | Milton Miller <miltonm@bga.com> | 2011-05-10 15:29:28 -0400 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2011-05-19 01:30:59 -0400 |
commit | d4fc8fe1f66f46493d3c56436685eef3b5b32b07 (patch) | |
tree | d6b3c92222a0df0b60cf1182981fa343c7d527ae /arch/powerpc/platforms | |
parent | a56555e573d3740d588d912aada506d57759cf5d (diff) |
powerpc: Remove stubbed beat smp support
I have no idea if the beat hypervisor supports multiple cpus in
a partition, but the code has not been touched since these stubs
were added in February of 2007 except to move them in April of 2008.
These are stubs: start_cpu always returns fail (which is dropped),
the message passing and reciving are empty functions, and the top
of file comment says "Incomplete".
Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/platforms')
-rw-r--r-- | arch/powerpc/platforms/cell/Makefile | 1 | ||||
-rw-r--r-- | arch/powerpc/platforms/cell/beat_interrupt.c | 16 | ||||
-rw-r--r-- | arch/powerpc/platforms/cell/beat_interrupt.h | 3 | ||||
-rw-r--r-- | arch/powerpc/platforms/cell/beat_smp.c | 107 | ||||
-rw-r--r-- | arch/powerpc/platforms/cell/celleb_setup.c | 4 |
5 files changed, 0 insertions, 131 deletions
diff --git a/arch/powerpc/platforms/cell/Makefile b/arch/powerpc/platforms/cell/Makefile index 8839ef6c7188..a4a89350bcfc 100644 --- a/arch/powerpc/platforms/cell/Makefile +++ b/arch/powerpc/platforms/cell/Makefile | |||
@@ -43,7 +43,6 @@ obj-y += celleb_setup.o \ | |||
43 | beat_hvCall.o beat_interrupt.o \ | 43 | beat_hvCall.o beat_interrupt.o \ |
44 | beat_iommu.o | 44 | beat_iommu.o |
45 | 45 | ||
46 | obj-$(CONFIG_SMP) += beat_smp.o | ||
47 | obj-$(CONFIG_PPC_UDBG_BEAT) += beat_udbg.o | 46 | obj-$(CONFIG_PPC_UDBG_BEAT) += beat_udbg.o |
48 | obj-$(CONFIG_SERIAL_TXX9) += celleb_scc_sio.o | 47 | obj-$(CONFIG_SERIAL_TXX9) += celleb_scc_sio.o |
49 | obj-$(CONFIG_SPU_BASE) += beat_spu_priv1.o | 48 | obj-$(CONFIG_SPU_BASE) += beat_spu_priv1.o |
diff --git a/arch/powerpc/platforms/cell/beat_interrupt.c b/arch/powerpc/platforms/cell/beat_interrupt.c index 4cb9e147c307..d46f7e47a1dc 100644 --- a/arch/powerpc/platforms/cell/beat_interrupt.c +++ b/arch/powerpc/platforms/cell/beat_interrupt.c | |||
@@ -257,22 +257,6 @@ void __init beatic_init_IRQ(void) | |||
257 | irq_set_default_host(beatic_host); | 257 | irq_set_default_host(beatic_host); |
258 | } | 258 | } |
259 | 259 | ||
260 | #ifdef CONFIG_SMP | ||
261 | |||
262 | /* Nullified to compile with SMP mode */ | ||
263 | void beatic_setup_cpu(int cpu) | ||
264 | { | ||
265 | } | ||
266 | |||
267 | void beatic_cause_IPI(int cpu, int mesg) | ||
268 | { | ||
269 | } | ||
270 | |||
271 | void beatic_request_IPIs(void) | ||
272 | { | ||
273 | } | ||
274 | #endif /* CONFIG_SMP */ | ||
275 | |||
276 | void beatic_deinit_IRQ(void) | 260 | void beatic_deinit_IRQ(void) |
277 | { | 261 | { |
278 | int i; | 262 | int i; |
diff --git a/arch/powerpc/platforms/cell/beat_interrupt.h b/arch/powerpc/platforms/cell/beat_interrupt.h index b470fd0051f1..a7e52f91a078 100644 --- a/arch/powerpc/platforms/cell/beat_interrupt.h +++ b/arch/powerpc/platforms/cell/beat_interrupt.h | |||
@@ -24,9 +24,6 @@ | |||
24 | 24 | ||
25 | extern void beatic_init_IRQ(void); | 25 | extern void beatic_init_IRQ(void); |
26 | extern unsigned int beatic_get_irq(void); | 26 | extern unsigned int beatic_get_irq(void); |
27 | extern void beatic_cause_IPI(int cpu, int mesg); | ||
28 | extern void beatic_request_IPIs(void); | ||
29 | extern void beatic_setup_cpu(int); | ||
30 | extern void beatic_deinit_IRQ(void); | 27 | extern void beatic_deinit_IRQ(void); |
31 | 28 | ||
32 | #endif | 29 | #endif |
diff --git a/arch/powerpc/platforms/cell/beat_smp.c b/arch/powerpc/platforms/cell/beat_smp.c deleted file mode 100644 index 23bbe6e08c87..000000000000 --- a/arch/powerpc/platforms/cell/beat_smp.c +++ /dev/null | |||
@@ -1,107 +0,0 @@ | |||
1 | /* | ||
2 | * SMP support for Celleb platform. (Incomplete) | ||
3 | * | ||
4 | * (C) Copyright 2006 TOSHIBA CORPORATION | ||
5 | * | ||
6 | * This code is based on arch/powerpc/platforms/cell/smp.c: | ||
7 | * Dave Engebretsen, Peter Bergner, and | ||
8 | * Mike Corrigan {engebret|bergner|mikec}@us.ibm.com | ||
9 | * Plus various changes from other IBM teams... | ||
10 | * | ||
11 | * This program is free software; you can redistribute it and/or modify | ||
12 | * it under the terms of the GNU General Public License as published by | ||
13 | * the Free Software Foundation; either version 2 of the License, or | ||
14 | * (at your option) any later version. | ||
15 | * | ||
16 | * This program is distributed in the hope that it will be useful, | ||
17 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
18 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
19 | * GNU General Public License for more details. | ||
20 | * | ||
21 | * You should have received a copy of the GNU General Public License along | ||
22 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
23 | * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||
24 | */ | ||
25 | |||
26 | #undef DEBUG | ||
27 | |||
28 | #include <linux/kernel.h> | ||
29 | #include <linux/smp.h> | ||
30 | #include <linux/interrupt.h> | ||
31 | #include <linux/init.h> | ||
32 | #include <linux/threads.h> | ||
33 | #include <linux/cpu.h> | ||
34 | |||
35 | #include <asm/irq.h> | ||
36 | #include <asm/smp.h> | ||
37 | #include <asm/machdep.h> | ||
38 | #include <asm/udbg.h> | ||
39 | |||
40 | #include "beat_interrupt.h" | ||
41 | |||
42 | #ifdef DEBUG | ||
43 | #define DBG(fmt...) udbg_printf(fmt) | ||
44 | #else | ||
45 | #define DBG(fmt...) | ||
46 | #endif | ||
47 | |||
48 | /* | ||
49 | * The primary thread of each non-boot processor is recorded here before | ||
50 | * smp init. | ||
51 | */ | ||
52 | /* static cpumask_t of_spin_map; */ | ||
53 | |||
54 | /** | ||
55 | * smp_startup_cpu() - start the given cpu | ||
56 | * | ||
57 | * At boot time, there is nothing to do for primary threads which were | ||
58 | * started from Open Firmware. For anything else, call RTAS with the | ||
59 | * appropriate start location. | ||
60 | * | ||
61 | * Returns: | ||
62 | * 0 - failure | ||
63 | * 1 - success | ||
64 | */ | ||
65 | static inline int __devinit smp_startup_cpu(unsigned int lcpu) | ||
66 | { | ||
67 | return 0; | ||
68 | } | ||
69 | |||
70 | static int __init smp_beatic_probe(void) | ||
71 | { | ||
72 | return cpumask_weight(cpu_possible_mask); | ||
73 | } | ||
74 | |||
75 | static void __devinit smp_beatic_setup_cpu(int cpu) | ||
76 | { | ||
77 | beatic_setup_cpu(cpu); | ||
78 | } | ||
79 | |||
80 | static int __devinit smp_celleb_kick_cpu(int nr) | ||
81 | { | ||
82 | BUG_ON(nr < 0 || nr >= NR_CPUS); | ||
83 | |||
84 | return smp_startup_cpu(nr); | ||
85 | } | ||
86 | |||
87 | static int smp_celleb_cpu_bootable(unsigned int nr) | ||
88 | { | ||
89 | return 1; | ||
90 | } | ||
91 | static struct smp_ops_t bpa_beatic_smp_ops = { | ||
92 | .message_pass = beatic_cause_IPI, | ||
93 | .probe = smp_beatic_probe, | ||
94 | .kick_cpu = smp_celleb_kick_cpu, | ||
95 | .setup_cpu = smp_beatic_setup_cpu, | ||
96 | .cpu_bootable = smp_celleb_cpu_bootable, | ||
97 | }; | ||
98 | |||
99 | /* This is called very early */ | ||
100 | void __init smp_init_celleb(void) | ||
101 | { | ||
102 | DBG(" -> smp_init_celleb()\n"); | ||
103 | |||
104 | smp_ops = &bpa_beatic_smp_ops; | ||
105 | |||
106 | DBG(" <- smp_init_celleb()\n"); | ||
107 | } | ||
diff --git a/arch/powerpc/platforms/cell/celleb_setup.c b/arch/powerpc/platforms/cell/celleb_setup.c index e53845579770..d58d9bae4b9b 100644 --- a/arch/powerpc/platforms/cell/celleb_setup.c +++ b/arch/powerpc/platforms/cell/celleb_setup.c | |||
@@ -128,10 +128,6 @@ static void __init celleb_setup_arch_beat(void) | |||
128 | spu_management_ops = &spu_management_of_ops; | 128 | spu_management_ops = &spu_management_of_ops; |
129 | #endif | 129 | #endif |
130 | 130 | ||
131 | #ifdef CONFIG_SMP | ||
132 | smp_init_celleb(); | ||
133 | #endif | ||
134 | |||
135 | celleb_setup_arch_common(); | 131 | celleb_setup_arch_common(); |
136 | } | 132 | } |
137 | 133 | ||