aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorNicolas Pitre <nicolas.pitre@linaro.org>2013-12-09 10:10:18 -0500
committerRussell King <rmk+kernel@arm.linux.org.uk>2013-12-29 07:32:38 -0500
commitefcfc46e8a654c3dddb51a6c4f46cd818dd926cc (patch)
tree2e3a26845caf35ab3cc4fd32c357eea15c95b9b8 /arch/arm
parent1b0f6681fcbc0e6365f42ef11beb882c9f73c945 (diff)
ARM: 7918/1: clean up cache handling in core code
We have a handy macro to replace open coded __cpuc_flush_dcache_area(() and outer_clean_range() sequences. Let's use it. No functional change. Signed-off-by: Nicolas Pitre <nico@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/common/mcpm_entry.c3
-rw-r--r--arch/arm/kernel/smp.c3
2 files changed, 2 insertions, 4 deletions
diff --git a/arch/arm/common/mcpm_entry.c b/arch/arm/common/mcpm_entry.c
index 26020a03f659..87c5f1b595bb 100644
--- a/arch/arm/common/mcpm_entry.c
+++ b/arch/arm/common/mcpm_entry.c
@@ -35,8 +35,7 @@ void mcpm_set_early_poke(unsigned cpu, unsigned cluster,
35 unsigned long *poke = &mcpm_entry_early_pokes[cluster][cpu][0]; 35 unsigned long *poke = &mcpm_entry_early_pokes[cluster][cpu][0];
36 poke[0] = poke_phys_addr; 36 poke[0] = poke_phys_addr;
37 poke[1] = poke_val; 37 poke[1] = poke_val;
38 __cpuc_flush_dcache_area((void *)poke, 8); 38 __sync_cache_range_w(poke, 2 * sizeof(*poke));
39 outer_clean_range(__pa(poke), __pa(poke + 2));
40} 39}
41 40
42static const struct mcpm_platform_ops *platform_ops; 41static const struct mcpm_platform_ops *platform_ops;
diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
index dc894ab3622b..8c61325b8bfc 100644
--- a/arch/arm/kernel/smp.c
+++ b/arch/arm/kernel/smp.c
@@ -105,8 +105,7 @@ int __cpu_up(unsigned int cpu, struct task_struct *idle)
105 secondary_data.pgdir = get_arch_pgd(idmap_pgd); 105 secondary_data.pgdir = get_arch_pgd(idmap_pgd);
106 secondary_data.swapper_pg_dir = get_arch_pgd(swapper_pg_dir); 106 secondary_data.swapper_pg_dir = get_arch_pgd(swapper_pg_dir);
107#endif 107#endif
108 __cpuc_flush_dcache_area(&secondary_data, sizeof(secondary_data)); 108 sync_cache_w(&secondary_data);
109 outer_clean_range(__pa(&secondary_data), __pa(&secondary_data + 1));
110 109
111 /* 110 /*
112 * Now bring the CPU into our world. 111 * Now bring the CPU into our world.