summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-zx/headsmp.S
diff options
context:
space:
mode:
authorJun Nie <jun.nie@linaro.org>2015-04-28 11:18:10 +0200
committerArnd Bergmann <arnd@arndb.de>2015-05-15 21:49:51 +0200
commit71bc724300e636d213cac2d971f35aaa6362876e (patch)
tree24a0d6c1e2e6644923a0fd43f37393cac1794e18 /arch/arm/mach-zx/headsmp.S
parentARM: zx: add low level debug support for zx296702 (diff)
downloadlinux-71bc724300e636d213cac2d971f35aaa6362876e.tar.xz
linux-71bc724300e636d213cac2d971f35aaa6362876e.zip
ARM: zx: enable SMP and hotplug for zx296702
Bring up the secondary core. Enable hotplug with supporting powering off secondary core. Signed-off-by: Jun Nie <jun.nie@linaro.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/arm/mach-zx/headsmp.S')
-rw-r--r--arch/arm/mach-zx/headsmp.S32
1 files changed, 32 insertions, 0 deletions
diff --git a/arch/arm/mach-zx/headsmp.S b/arch/arm/mach-zx/headsmp.S
new file mode 100644
index 000000000000..c0fece0c3955
--- /dev/null
+++ b/arch/arm/mach-zx/headsmp.S
@@ -0,0 +1,32 @@
+/*
+ * Copyright 2014 Linaro Ltd.
+ * Copyright (C) 2014 ZTE Corporation.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include <linux/linkage.h>
+
+ .align 3
+
+/* It runs from physical address */
+ENTRY(zx_resume_jump)
+ adr r1, zx_secondary_startup_pa
+ ldr r0, [r1]
+ bx r0
+ENDPROC(zx_resume_jump)
+
+ENTRY(zx_secondary_startup_pa)
+ .word zx_secondary_startup_pa
+
+ENTRY(zx_suspend_iram_sz)
+ .word . - zx_resume_jump
+ENDPROC(zx_secondary_startup_pa)
+
+
+ENTRY(zx_secondary_startup)
+ bl v7_invalidate_l1
+ b secondary_startup
+ENDPROC(zx_secondary_startup)