summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2005-06-18 09:33:31 +0100
committerRussell King <rmk@dyn-67.arm.linux.org.uk>2005-06-18 09:33:31 +0100
commite65f38ed0bb7af367ff919c573cf29643fc5f9e8 (patch)
tree2b89f5f0a9175cf1107bc52c7302eb1acf8aa1a1 /include
parent5ab6091db0b644f59c2f16c5e41028496b709160 (diff)
downloadkernel-crypto-e65f38ed0bb7af367ff919c573cf29643fc5f9e8.tar.gz
kernel-crypto-e65f38ed0bb7af367ff919c573cf29643fc5f9e8.tar.xz
kernel-crypto-e65f38ed0bb7af367ff919c573cf29643fc5f9e8.zip
[PATCH] ARM SMP: Add support for startup of secondary processors
Create a temporary page table to startup secondary processors. This page table must have a 1:1 virtual/physical mapping for the kernel in addition to the standard mappings to ensure that the secondary CPU can enable its MMU safely. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'include')
-rw-r--r--include/asm-arm/smp.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/asm-arm/smp.h b/include/asm-arm/smp.h
index f21fd8f6bcd..bd44f894690 100644
--- a/include/asm-arm/smp.h
+++ b/include/asm-arm/smp.h
@@ -55,4 +55,18 @@ extern void smp_cross_call(cpumask_t callmap);
*/
extern int boot_secondary(unsigned int cpu, struct task_struct *);
+/*
+ * Perform platform specific initialisation of the specified CPU.
+ */
+extern void platform_secondary_init(unsigned int cpu);
+
+/*
+ * Initial data for bringing up a secondary CPU.
+ */
+struct secondary_data {
+ unsigned long pgdir;
+ void *stack;
+};
+extern struct secondary_data secondary_data;
+
#endif /* ifndef __ASM_ARM_SMP_H */