summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-shmobile/platsmp.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-shmobile/platsmp.c')
-rw-r--r--arch/arm/mach-shmobile/platsmp.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/arch/arm/mach-shmobile/platsmp.c b/arch/arm/mach-shmobile/platsmp.c
index b41f5d0650e..3c2c0f49073 100644
--- a/arch/arm/mach-shmobile/platsmp.c
+++ b/arch/arm/mach-shmobile/platsmp.c
@@ -16,25 +16,37 @@
#include <linux/smp.h>
#include <linux/io.h>
#include <asm/localtimer.h>
+#include <asm/mach-types.h>
+#include <mach/common.h>
static unsigned int __init shmobile_smp_get_core_count(void)
{
+ if (machine_is_ag5evm())
+ return sh73a0_get_core_count();
+
return 1;
}
static void __init shmobile_smp_prepare_cpus(void)
{
- /* do nothing for now */
+ if (machine_is_ag5evm())
+ sh73a0_smp_prepare_cpus();
}
void __cpuinit platform_secondary_init(unsigned int cpu)
{
trace_hardirqs_off();
+
+ if (machine_is_ag5evm())
+ sh73a0_secondary_init(cpu);
}
int __cpuinit boot_secondary(unsigned int cpu, struct task_struct *idle)
{
+ if (machine_is_ag5evm())
+ return sh73a0_boot_secondary(cpu);
+
return -ENOSYS;
}