aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-tango/Makefile4
-rw-r--r--arch/arm/mach-tango/platsmp.c16
-rw-r--r--arch/arm/mach-tango/setup.c14
3 files changed, 19 insertions, 15 deletions
diff --git a/arch/arm/mach-tango/Makefile b/arch/arm/mach-tango/Makefile
index 99422ea743fd..f33935e42e77 100644
--- a/arch/arm/mach-tango/Makefile
+++ b/arch/arm/mach-tango/Makefile
@@ -1,3 +1,5 @@
1plus_sec := $(call as-instr,.arch_extension sec,+sec) 1plus_sec := $(call as-instr,.arch_extension sec,+sec)
2AFLAGS_smc.o :=-Wa,-march=armv7-a$(plus_sec) 2AFLAGS_smc.o := -Wa,-march=armv7-a$(plus_sec)
3
3obj-y += setup.o smc.o 4obj-y += setup.o smc.o
5obj-$(CONFIG_SMP) += platsmp.o
diff --git a/arch/arm/mach-tango/platsmp.c b/arch/arm/mach-tango/platsmp.c
new file mode 100644
index 000000000000..a18d5a34e2f5
--- /dev/null
+++ b/arch/arm/mach-tango/platsmp.c
@@ -0,0 +1,16 @@
1#include <linux/init.h>
2#include <linux/smp.h>
3#include "smc.h"
4
5static int tango_boot_secondary(unsigned int cpu, struct task_struct *idle)
6{
7 tango_set_aux_boot_addr(virt_to_phys(secondary_startup));
8 tango_start_aux_core(cpu);
9 return 0;
10}
11
12static struct smp_operations tango_smp_ops __initdata = {
13 .smp_boot_secondary = tango_boot_secondary,
14};
15
16CPU_METHOD_OF_DECLARE(tango4_smp, "sigma,tango4-smp", &tango_smp_ops);
diff --git a/arch/arm/mach-tango/setup.c b/arch/arm/mach-tango/setup.c
index d86900550e63..f14b6c7d255b 100644
--- a/arch/arm/mach-tango/setup.c
+++ b/arch/arm/mach-tango/setup.c
@@ -1,21 +1,7 @@
1#include <linux/smp.h>
2#include <asm/mach/arch.h> 1#include <asm/mach/arch.h>
3#include <asm/hardware/cache-l2x0.h> 2#include <asm/hardware/cache-l2x0.h>
4#include "smc.h" 3#include "smc.h"
5 4
6static int tango4_boot_secondary(unsigned int cpu, struct task_struct *idle)
7{
8 tango_set_aux_boot_addr(virt_to_phys(secondary_startup));
9 tango_start_aux_core(cpu);
10 return 0;
11}
12
13static struct smp_operations tango4_smp_ops __initdata = {
14 .smp_boot_secondary = tango4_boot_secondary,
15};
16
17CPU_METHOD_OF_DECLARE(tango4_smp, "sigma,tango4-smp", &tango4_smp_ops);
18
19static void tango_l2c_write(unsigned long val, unsigned int reg) 5static void tango_l2c_write(unsigned long val, unsigned int reg)
20{ 6{
21 if (reg == L2X0_CTRL) 7 if (reg == L2X0_CTRL)