]> git.proxmox.com Git - mirror_edk2.git/commit - ArmPkg/Library/ArmLib/AArch64/AArch64Support.S
ArmPkg: update InvalidateInstructionCacheRange to flush only to PoU
authorEugene Cohen <eugene@hp.com>
Tue, 8 Dec 2015 15:58:53 +0000 (15:58 +0000)
committerabiesheuvel <abiesheuvel@Edk2>
Tue, 8 Dec 2015 15:58:53 +0000 (15:58 +0000)
commitb7de7e3cab3f172bb8ef3e2638f90889981d791a
tree72f1cff046f798823c956cde71870b60b900a78b
parent62c12ff8c7e7c34af2724758e49b35c26897f2d8
ArmPkg: update InvalidateInstructionCacheRange to flush only to PoU

This patch updates the ArmPkg variant of InvalidateInstructionCacheRange to
flush the data cache only to the point of unification (PoU). This improves
performance and also allows invalidation in scenarios where it would be
inappropriate to flush to the point of coherency (like when executing code
from L2 configured as cache-as-ram).

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eugene Cohen <eugene@hp.com>
Added AARCH64 and ARM/GCC implementations of the above.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Eugene Cohen <eugene@hp.com>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19174 6f19259b-4bc3-4df7-8a09-765794883524
ArmPkg/Include/Library/ArmLib.h
ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaintenanceLib.c
ArmPkg/Library/ArmLib/AArch64/AArch64Support.S
ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S
ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.asm