summaryrefslogtreecommitdiff
path: root/ArmPkg/Library/ArmLib/Arm11/Arm11Support.S
diff options
context:
space:
mode:
Diffstat (limited to 'ArmPkg/Library/ArmLib/Arm11/Arm11Support.S')
-rw-r--r--ArmPkg/Library/ArmLib/Arm11/Arm11Support.S20
1 files changed, 20 insertions, 0 deletions
diff --git a/ArmPkg/Library/ArmLib/Arm11/Arm11Support.S b/ArmPkg/Library/ArmLib/Arm11/Arm11Support.S
index e3b7746317..6d178b107f 100644
--- a/ArmPkg/Library/ArmLib/Arm11/Arm11Support.S
+++ b/ArmPkg/Library/ArmLib/Arm11/Arm11Support.S
@@ -30,6 +30,10 @@
.globl ASM_PFX(ArmDisableInstructionCache)
.globl ASM_PFX(ArmEnableBranchPrediction)
.globl ASM_PFX(ArmDisableBranchPrediction)
+.globl ASM_PFX(ArmDataMemoryBarrier)
+.globl ASM_PFX(ArmDataSyncronizationBarrier)
+.globl ASM_PFX(ArmInstructionSynchronizationBarrier)
+
.set DC_ON, (0x1<<2)
.set IC_ON, (0x1<<12)
@@ -132,4 +136,20 @@ ASM_PFX(ArmDisableBranchPrediction):
mcr p15, 0, r0, c1, c0, 0
bx LR
+ASM_PFX(ArmDataMemoryBarrier):
+ mov R0, #0
+ mcr P15, #0, R0, C7, C10, #5
+ bx LR
+
+ASM_PFX(ArmDataSyncronizationBarrier):
+ mov R0, #0
+ mcr P15, #0, R0, C7, C10, #4
+ bx LR
+
+ASM_PFX(ArmInstructionSynchronizationBarrier):
+ mov R0, #0
+ mcr P15, #0, R0, C7, C5, #4
+ bx LR
+
+
ASM_FUNCTION_REMOVE_IF_UNREFERENCED