aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/powerpc/platforms/85xx/smp.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/powerpc/platforms/85xx/smp.c b/arch/powerpc/platforms/85xx/smp.c
index 5c91a992f02b..0d00ff9d05a0 100644
--- a/arch/powerpc/platforms/85xx/smp.c
+++ b/arch/powerpc/platforms/85xx/smp.c
@@ -91,10 +91,14 @@ smp_85xx_kick_cpu(int nr)
91 while ((__secondary_hold_acknowledge != nr) && (++n < 1000)) 91 while ((__secondary_hold_acknowledge != nr) && (++n < 1000))
92 mdelay(1); 92 mdelay(1);
93#else 93#else
94 smp_generic_kick_cpu(nr);
95
94 out_be64((u64 *)(bptr_vaddr + BOOT_ENTRY_ADDR_UPPER), 96 out_be64((u64 *)(bptr_vaddr + BOOT_ENTRY_ADDR_UPPER),
95 __pa((u64)*((unsigned long long *) generic_secondary_smp_init))); 97 __pa((u64)*((unsigned long long *) generic_secondary_smp_init)));
96 98
97 smp_generic_kick_cpu(nr); 99 if (!ioremappable)
100 flush_dcache_range((ulong)bptr_vaddr,
101 (ulong)(bptr_vaddr + SIZE_BOOT_ENTRY));
98#endif 102#endif
99 103
100 local_irq_restore(flags); 104 local_irq_restore(flags);