flush cache for arm926
RFC PATCH 1/2 flush cache for arm926
This simple adds the cache flush for arm926. Most likely the same works for other families, like arm920t, but I didn't check as this is currently just an RFC.
Signed-off-by Alessandro Rubini <[email protected]>
--- lib_arm/cache.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)
lib_arm/cache.c +6 -0
@@ -32,5 +32,11 @@ void flush_cache (unsigned long dummy1, unsigned long dummy2)arm1136_cache_flush ();#endif +#ifdef CONFIG_ARM926EJS +/* test and clean, page 2-23 of arm926ejs manual */ + asm("0: mrc p15, 0, r15, c7, c10, 3\n\t" "bne 0b\n" : : :"memory" ); +/* disable write buffer as well (page 2-22) */ + asm("mcr p15, 0, %0, c7, c10, 4" : :"r" (0 )); +#endif return ; }
Signature · 1 line
1.6.0.2