mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-16 17:44:19 +00:00
AArch64: Remove EL-agnostic TLB helper functions
Also, don't invalidate the TLBs in disable_mmu() function, it's better to do it in enable_mmu() function just before actually enabling the MMU. Change-Id: Ib32d6660019b0b2c17254156aad4be67ab4970e1
This commit is contained in:
parent
3738274dc1
commit
295538bc37
3 changed files with 1 additions and 28 deletions
|
@ -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);
|
||||
|
|
|
@ -30,8 +30,6 @@
|
|||
|
||||
#include <arch_helpers.h>
|
||||
|
||||
.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
|
||||
|
|
|
@ -461,7 +461,7 @@ void enable_mmu()
|
|||
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 @@ void disable_mmu(void)
|
|||
write_ttbr0(0);
|
||||
write_sctlr(0);
|
||||
|
||||
/* Invalidate TLBs of the CurrentEL */
|
||||
tlbiall();
|
||||
|
||||
/* Flush the caches */
|
||||
dcsw_op_all(DCCISW);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue