diff --git a/include/aarch64/arch_helpers.h b/include/aarch64/arch_helpers.h index b571a5d..9dc6b92 100644 --- a/include/aarch64/arch_helpers.h +++ b/include/aarch64/arch_helpers.h @@ -48,8 +48,6 @@ /******************************************************************************* * TLB maintenance accessor prototypes ******************************************************************************/ -extern void tlbiall(void); -extern void tlbiallis(void); extern void tlbialle1(void); extern void tlbialle1is(void); extern void tlbialle2(void); diff --git a/lib/arch/aarch64/tlb_helpers.S b/lib/arch/aarch64/tlb_helpers.S index 8377f2c..eef7546 100644 --- a/lib/arch/aarch64/tlb_helpers.S +++ b/lib/arch/aarch64/tlb_helpers.S @@ -30,8 +30,6 @@ #include - .globl tlbiall - .globl tlbiallis .globl tlbialle1 .globl tlbialle1is .globl tlbialle2 @@ -43,26 +41,6 @@ .section .text, "ax" -tlbiall:; .type tlbiall, %function - mrs x0, CurrentEl - cmp x0, #(MODE_EL1 << MODE_EL_SHIFT) - b.eq tlbialle1 - cmp x0, #(MODE_EL2 << MODE_EL_SHIFT) - b.eq tlbialle2 - cmp x0, #(MODE_EL3 << MODE_EL_SHIFT) - b.eq tlbialle3 - - -tlbiallis:; .type tlbiallis, %function - mrs x0, CurrentEl - cmp x0, #(MODE_EL1 << MODE_EL_SHIFT) - b.eq tlbialle1is - cmp x0, #(MODE_EL2 << MODE_EL_SHIFT) - b.eq tlbialle2is - cmp x0, #(MODE_EL3 << MODE_EL_SHIFT) - b.eq tlbialle3is - - tlbialle1:; .type tlbialle1, %function tlbi alle1 dsb sy diff --git a/plat/fvp/aarch64/fvp_common.c b/plat/fvp/aarch64/fvp_common.c index 78a44a5..0b5f4eb 100644 --- a/plat/fvp/aarch64/fvp_common.c +++ b/plat/fvp/aarch64/fvp_common.c @@ -461,7 +461,7 @@ TCR_RGN_INNER_WBA | TCR_T0SZ_4GB; if (GET_EL(current_el) == MODE_EL3) { tcr |= TCR_EL3_RES1; - /* Invalidate all TLBs */ + /* Invalidate EL3 TLBs */ tlbialle3(); } else { /* Invalidate EL1 TLBs */ @@ -491,9 +491,6 @@ write_ttbr0(0); write_sctlr(0); - /* Invalidate TLBs of the CurrentEL */ - tlbiall(); - /* Flush the caches */ dcsw_op_all(DCCISW);