Commit 5c64e2ab authored by Russell King's avatar Russell King Committed by Russell King

Merge branch 'for-rmk' of git://git.marvell.com/orion

parents 8f6aef92 f000328a
...@@ -115,6 +115,10 @@ static inline void l2_inv_pa_range(unsigned long start, unsigned long end) ...@@ -115,6 +115,10 @@ static inline void l2_inv_pa_range(unsigned long start, unsigned long end)
raw_local_irq_restore(flags); raw_local_irq_restore(flags);
} }
static inline void l2_inv_all(void)
{
__asm__("mcr p15, 1, %0, c15, c11, 0" : : "r" (0));
}
/* /*
* Linux primitives. * Linux primitives.
...@@ -254,9 +258,7 @@ static void __init enable_dcache(void) ...@@ -254,9 +258,7 @@ static void __init enable_dcache(void)
static void __init __invalidate_icache(void) static void __init __invalidate_icache(void)
{ {
int dummy; __asm__("mcr p15, 0, %0, c7, c5, 0" : : "r" (0));
__asm__ __volatile__("mcr p15, 0, %0, c7, c5, 0" : "=r" (dummy));
} }
static int __init invalidate_and_disable_icache(void) static int __init invalidate_and_disable_icache(void)
...@@ -321,6 +323,7 @@ static void __init enable_l2(void) ...@@ -321,6 +323,7 @@ static void __init enable_l2(void)
d = flush_and_disable_dcache(); d = flush_and_disable_dcache();
i = invalidate_and_disable_icache(); i = invalidate_and_disable_icache();
l2_inv_all();
write_extra_features(u | 0x00400000); write_extra_features(u | 0x00400000);
if (i) if (i)
enable_icache(); enable_icache();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment