[Xen-devel,v4,05/15] xen/arm64: Add an helper to invalidate all instruction caches

Message ID 1466594130-19251-6-git-send-email-julien.grall@arm.com
State New
Headers show

Commit Message

Julien Grall June 22, 2016, 11:15 a.m.
Signed-off-by: Julien Grall <julien.grall@arm.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>

---
    Changes in v2:
        - Add Stefano's acked-by
---
 xen/include/asm-arm/arm64/page.h | 6 ++++++
 1 file changed, 6 insertions(+)

Patch

diff --git a/xen/include/asm-arm/arm64/page.h b/xen/include/asm-arm/arm64/page.h
index 29a32cf..fbdc8fb 100644
--- a/xen/include/asm-arm/arm64/page.h
+++ b/xen/include/asm-arm/arm64/page.h
@@ -24,6 +24,12 @@  static inline void write_pte(lpae_t *p, lpae_t pte)
  * inline asm operand) */
 #define __clean_and_invalidate_dcache_one(R) "dc  civac, %" #R ";"
 
+/* Invalidate all instruction caches in Inner Shareable domain to PoU */
+static inline void invalidate_icache(void)
+{
+    asm volatile ("ic ialluis");
+}
+
 /*
  * Flush all hypervisor mappings from the TLB of the local processor.
  *