From dc44de7686771aaaf3343ffbfed021e8c38cacc3 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 5 Jun 2014 16:38:29 +0200 Subject: bsps/arm: Fix TLB invalidation for ARMv7-A --- c/src/lib/libcpu/arm/shared/include/arm-cp15.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/c/src/lib/libcpu/arm/shared/include/arm-cp15.h b/c/src/lib/libcpu/arm/shared/include/arm-cp15.h index c81b16a964..76b05822cd 100644 --- a/c/src/lib/libcpu/arm/shared/include/arm-cp15.h +++ b/c/src/lib/libcpu/arm/shared/include/arm-cp15.h @@ -491,6 +491,13 @@ arm_cp15_tlb_invalidate(void) : ARM_SWITCH_OUTPUT : [sbz] "r" (sbz) ); + + /* + * ARM Architecture Reference Manual, ARMv7-A and ARMv7-R edition, Issue C, + * B3.10.1 General TLB maintenance requirements. + */ + _ARM_Data_synchronization_barrier(); + _ARM_Instruction_synchronization_barrier(); } ARM_CP15_TEXT_SECTION static inline void -- cgit v1.2.3