diff options
author | andrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-02-24 22:38:46 +0000 |
---|---|---|
committer | andrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-02-24 22:38:46 +0000 |
commit | 026c3d34ee83b4df623cc80761450a53e9f7622b (patch) | |
tree | 093ad41be275694e4a107bc0775853afcc59dc70 /ArmPkg/Library/ArmLib/Arm11/Arm11Support.S | |
parent | 14e00c13be4ead51d9fd38e07af661af63ca2359 (diff) | |
download | edk2-026c3d34ee83b4df623cc80761450a53e9f7622b.zip edk2-026c3d34ee83b4df623cc80761450a53e9f7622b.tar.gz edk2-026c3d34ee83b4df623cc80761450a53e9f7622b.tar.bz2 |
Updated Hardware Interrupt protocol to add an EOI member. Added ARM Data/Instruction syncronization barrier support to the ARM lib.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10063 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'ArmPkg/Library/ArmLib/Arm11/Arm11Support.S')
-rw-r--r-- | ArmPkg/Library/ArmLib/Arm11/Arm11Support.S | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/ArmPkg/Library/ArmLib/Arm11/Arm11Support.S b/ArmPkg/Library/ArmLib/Arm11/Arm11Support.S index e3b7746..6d178b1 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 |