ArmPkg/ArmLib: Removed duplicated invalidate TLB function

ArmInvalidateInstructionAndDataTlb() was doing the same thing as
ArmInvalidateTlb().
Both invalidate Data and Instruction TLBs.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16253 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Olivier Martin 2014-10-27 15:38:55 +00:00 committed by oliviermartin
parent d2e7e385fc
commit 8dd618d211
6 changed files with 4 additions and 37 deletions

View File

@ -336,12 +336,6 @@ ArmDisableCachesAndMmu (
VOID VOID
); );
VOID
EFIAPI
ArmInvalidateInstructionAndDataTlb (
VOID
);
VOID VOID
EFIAPI EFIAPI
ArmEnableInterrupts ( ArmEnableInterrupts (
@ -402,6 +396,9 @@ ArmGetFiqState (
VOID VOID
); );
/**
* Invalidate Data and Instruction TLBs
*/
VOID VOID
EFIAPI EFIAPI
ArmInvalidateTlb ( ArmInvalidateTlb (

View File

@ -48,7 +48,6 @@ GCC_ASM_EXPORT (ArmWriteVBar)
GCC_ASM_EXPORT (ArmReadVBar) GCC_ASM_EXPORT (ArmReadVBar)
GCC_ASM_EXPORT (ArmEnableVFP) GCC_ASM_EXPORT (ArmEnableVFP)
GCC_ASM_EXPORT (ArmCallWFI) GCC_ASM_EXPORT (ArmCallWFI)
GCC_ASM_EXPORT (ArmInvalidateInstructionAndDataTlb)
GCC_ASM_EXPORT (ArmReadMpidr) GCC_ASM_EXPORT (ArmReadMpidr)
GCC_ASM_EXPORT (ArmReadTpidrurw) GCC_ASM_EXPORT (ArmReadTpidrurw)
GCC_ASM_EXPORT (ArmWriteTpidrurw) GCC_ASM_EXPORT (ArmWriteTpidrurw)
@ -450,18 +449,6 @@ ASM_PFX(ArmCallWFI):
ret ret
ASM_PFX(ArmInvalidateInstructionAndDataTlb):
EL1_OR_EL2_OR_EL3(x0)
1: tlbi vmalle1
b 4f
2: tlbi alle2
b 4f
3: tlbi alle3
4: dsb sy
isb
ret
ASM_PFX(ArmReadMpidr): ASM_PFX(ArmReadMpidr):
mrs x0, mpidr_el1 // read EL1 MPIDR mrs x0, mpidr_el1 // read EL1 MPIDR
ret ret

View File

@ -18,7 +18,6 @@
.text .text
.align 2 .align 2
GCC_ASM_EXPORT(ArmDisableCachesAndMmu) GCC_ASM_EXPORT(ArmDisableCachesAndMmu)
GCC_ASM_EXPORT(ArmInvalidateInstructionAndDataTlb)
GCC_ASM_EXPORT(ArmCleanInvalidateDataCache) GCC_ASM_EXPORT(ArmCleanInvalidateDataCache)
GCC_ASM_EXPORT(ArmCleanDataCache) GCC_ASM_EXPORT(ArmCleanDataCache)
GCC_ASM_EXPORT(ArmInvalidateDataCache) GCC_ASM_EXPORT(ArmInvalidateDataCache)
@ -68,10 +67,6 @@ ASM_PFX(ArmDisableCachesAndMmu):
mcr p15, 0, r0, c1, c0, 0 @ Write control register mcr p15, 0, r0, c1, c0, 0 @ Write control register
bx LR bx LR
ASM_PFX(ArmInvalidateInstructionAndDataTlb):
mcr p15, 0, r0, c8, c7, 0 @ Invalidate Inst TLB and Data TLB
bx lr
ASM_PFX(ArmInvalidateDataCacheEntryByMVA): ASM_PFX(ArmInvalidateDataCacheEntryByMVA):
mcr p15, 0, r0, c7, c6, 1 @invalidate single data cache line mcr p15, 0, r0, c7, c6, 1 @invalidate single data cache line
bx lr bx lr

View File

@ -47,7 +47,6 @@ GCC_ASM_EXPORT (ArmWriteVBar)
GCC_ASM_EXPORT (ArmEnableVFP) GCC_ASM_EXPORT (ArmEnableVFP)
GCC_ASM_EXPORT (ArmCallWFI) GCC_ASM_EXPORT (ArmCallWFI)
GCC_ASM_EXPORT (ArmReadCbar) GCC_ASM_EXPORT (ArmReadCbar)
GCC_ASM_EXPORT (ArmInvalidateInstructionAndDataTlb)
GCC_ASM_EXPORT (ArmReadMpidr) GCC_ASM_EXPORT (ArmReadMpidr)
GCC_ASM_EXPORT (ArmReadTpidrurw) GCC_ASM_EXPORT (ArmReadTpidrurw)
GCC_ASM_EXPORT (ArmWriteTpidrurw) GCC_ASM_EXPORT (ArmWriteTpidrurw)
@ -368,11 +367,6 @@ ASM_PFX(ArmReadCbar):
mrc p15, 4, r0, c15, c0, 0 @ Read Configuration Base Address Register mrc p15, 4, r0, c15, c0, 0 @ Read Configuration Base Address Register
bx lr bx lr
ASM_PFX(ArmInvalidateInstructionAndDataTlb):
mcr p15, 0, r0, c8, c7, 0 @ Invalidate Inst TLB and Data TLB
dsb
bx lr
ASM_PFX(ArmReadMpidr): ASM_PFX(ArmReadMpidr):
mrc p15, 0, r0, c0, c0, 5 @ read MPIDR mrc p15, 0, r0, c0, c0, 5 @ read MPIDR
bx lr bx lr

View File

@ -44,7 +44,6 @@
EXPORT ArmEnableVFP EXPORT ArmEnableVFP
EXPORT ArmCallWFI EXPORT ArmCallWFI
EXPORT ArmReadCbar EXPORT ArmReadCbar
EXPORT ArmInvalidateInstructionAndDataTlb
EXPORT ArmReadMpidr EXPORT ArmReadMpidr
EXPORT ArmReadTpidrurw EXPORT ArmReadTpidrurw
EXPORT ArmWriteTpidrurw EXPORT ArmWriteTpidrurw
@ -362,11 +361,6 @@ ArmReadCbar
mrc p15, 4, r0, c15, c0, 0 //Read Configuration Base Address Register mrc p15, 4, r0, c15, c0, 0 //Read Configuration Base Address Register
bx lr bx lr
ArmInvalidateInstructionAndDataTlb
mcr p15, 0, r0, c8, c7, 0 ; Invalidate Inst TLB and Data TLB
dsb
bx lr
ArmReadMpidr ArmReadMpidr
mrc p15, 0, r0, c0, c0, 5 ; read MPIDR mrc p15, 0, r0, c0, c0, 5 ; read MPIDR
bx lr bx lr

View File

@ -42,7 +42,7 @@ CEntryPoint (
ArmInvalidateInstructionCache (); ArmInvalidateInstructionCache ();
// Invalidate I & D TLBs // Invalidate I & D TLBs
ArmInvalidateInstructionAndDataTlb (); ArmInvalidateTlb ();
// CPU specific settings // CPU specific settings
ArmCpuSetup (MpId); ArmCpuSetup (MpId);