mirror of
https://github.com/RT-Thread/rt-thread.git
synced 2026-09-25 06:13:56 +08:00
[libcpu/aarch64] fix cache invalidate operation (#7363)
This commit is contained in:
@@ -23,9 +23,13 @@ void rt_hw_cpu_dcache_invalidate(void *start_addr, unsigned long size);
|
||||
|
||||
static inline void rt_hw_icache_invalidate_all(void)
|
||||
{
|
||||
/* wait for any modification complete */
|
||||
/* wait for previous modification to complete */
|
||||
__asm__ volatile ("dsb ishst");
|
||||
__asm__ volatile ("ic iallu");
|
||||
|
||||
__asm__ volatile ("ic ialluis");
|
||||
/* wait for ic to retire */
|
||||
__asm__ volatile ("dsb nsh");
|
||||
/* flush instruction pipeline */
|
||||
__asm__ volatile ("isb");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user