aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/kernel
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2012-02-28 08:02:59 -0500
committerJonathan Austin <jonathan.austin@arm.com>2013-06-07 12:02:43 -0400
commitc4a1f032ed35d744e3d74b8aebe8d85f29aecd88 (patch)
tree2d81d028e4f4b87cf8d0668a2b6563449c9b5798 /arch/arm/kernel
parent02ed1c7bba57b66c9a2f3146c935af12a93f2d76 (diff)
ARM: nommu: do not initialise page tables in secondary_data structure
nommu systems do not require any page tables, so don't try to initialise them when bringing up secondary cores. Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm/kernel')
-rw-r--r--arch/arm/kernel/smp.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
index 550d63cef68e..44d1c00dc45f 100644
--- a/arch/arm/kernel/smp.c
+++ b/arch/arm/kernel/smp.c
@@ -87,8 +87,10 @@ int __cpuinit __cpu_up(unsigned int cpu, struct task_struct *idle)
87 * its stack and the page tables. 87 * its stack and the page tables.
88 */ 88 */
89 secondary_data.stack = task_stack_page(idle) + THREAD_START_SP; 89 secondary_data.stack = task_stack_page(idle) + THREAD_START_SP;
90#ifdef CONFIG_MMU
90 secondary_data.pgdir = virt_to_phys(idmap_pgd); 91 secondary_data.pgdir = virt_to_phys(idmap_pgd);
91 secondary_data.swapper_pg_dir = virt_to_phys(swapper_pg_dir); 92 secondary_data.swapper_pg_dir = virt_to_phys(swapper_pg_dir);
93#endif
92 __cpuc_flush_dcache_area(&secondary_data, sizeof(secondary_data)); 94 __cpuc_flush_dcache_area(&secondary_data, sizeof(secondary_data));
93 outer_clean_range(__pa(&secondary_data), __pa(&secondary_data + 1)); 95 outer_clean_range(__pa(&secondary_data), __pa(&secondary_data + 1));
94 96