ic iallu doesn't broadcast at all, replace the "icache invalidate all" function

This commit is contained in:
TuxSH 2018-02-18 23:45:44 +01:00
parent 0cc2cf0dc0
commit 9c588d4965
2 changed files with 9 additions and 9 deletions

View file

@ -15,6 +15,6 @@ void invalidate_dcache_all(void);
void flush_dcache_range(const void *start, const void *end); void flush_dcache_range(const void *start, const void *end);
void invalidate_dcache_range(const void *start, const void *end); void invalidate_dcache_range(const void *start, const void *end);
void invalidate_icache_all(void); void invalidate_icache_inner_shareable(void);
#endif #endif

View file

@ -213,17 +213,17 @@ invalidate_dcache_range:
ret ret
/* /*
* void __asm_invalidate_icache_all(void) (-> invalidate_icache_all) * void __asm_invalidate_icache_all(void) (-> invalidate_icache_inner_shareable)
* *
* invalidate all icache entries. * invalidate all icache entries.
*/ */
.section .text.invalidate_icache_all, "ax", %progbits .section .text.invalidate_icache_inner_shareable, "ax", %progbits
.type invalidate_icache_all, %function .type invalidate_icache_inner_shareable, %function
.global invalidate_icache_all .global invalidate_icache_inner_shareable
invalidate_icache_all: invalidate_icache_inner_shareable:
dsb sy dsb ish
isb isb
ic iallu ic ialluis
dsb sy dsb ish
isb isb
ret ret