diff options
author | Will Deacon <will.deacon@arm.com> | 2012-02-28 08:02:59 -0500 |
---|---|---|
committer | Jonathan Austin <jonathan.austin@arm.com> | 2013-06-07 12:02:43 -0400 |
commit | c4a1f032ed35d744e3d74b8aebe8d85f29aecd88 (patch) | |
tree | 2d81d028e4f4b87cf8d0668a2b6563449c9b5798 /arch/arm/kernel | |
parent | 02ed1c7bba57b66c9a2f3146c935af12a93f2d76 (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.c | 2 |
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 | ||