From c99ae5d9a93212cbecff0d10a1710b68f26e966e Mon Sep 17 00:00:00 2001 From: David Hendricks Date: Tue, 30 Apr 2013 12:20:53 -0700 Subject: [PATCH] armv7: add wrapper for tlbimvaa This adds an inline wrapper for the TLBIMVAA instruction (invalidate unified TLB by MVA, all address space identifiers). Change-Id: Ibcd289ecedaba8586ade26e36c177ff1fcaf91d3 Signed-off-by: David Hendricks Reviewed-on: http://review.coreboot.org/3161 Reviewed-by: Ronald G. Minnich Tested-by: build bot (Jenkins) --- src/arch/armv7/include/arch/cache.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/arch/armv7/include/arch/cache.h b/src/arch/armv7/include/arch/cache.h index 1db86dc57c..028cf1808d 100644 --- a/src/arch/armv7/include/arch/cache.h +++ b/src/arch/armv7/include/arch/cache.h @@ -108,6 +108,12 @@ static inline void tlbiall(void) asm volatile ("mcr p15, 0, %0, c8, c7, 0" : : "r" (0) : "memory"); } +/* invalidate unified TLB by MVA, all ASID */ +static inline void tlbimvaa(unsigned long mva) +{ + asm volatile ("mcr p15, 0, %0, c8, c7, 3" : : "r" (mva) : "memory"); +} + /* write data access control register (DACR) */ static inline void write_dacr(uint32_t val) {