audk/ArmPkg/Library
Eugene Cohen b7de7e3cab 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
2015-12-08 15:58:53 +00:00
..
ArmArchTimerLib ArmPkg: ArmArchTimerLib: conditionally rebase to actual timer frequency 2015-02-02 12:01:48 +00:00
ArmCacheMaintenanceLib ArmPkg: update InvalidateInstructionCacheRange to flush only to PoU 2015-12-08 15:58:53 +00:00
ArmDisassemblerLib ArmPkg/ArmDisassemblerLib: ARMThumb and AArch64 fixes 2014-09-09 15:57:18 +00:00
ArmDmaLib ArmPkg/ArmDmaLib: use the cache writeback granularity for alignment 2015-11-09 13:28:33 +00:00
ArmGenericTimerPhyCounterLib ArmPkg: add ArmGenericTimerCounterLib implementation using physical timer 2014-09-09 16:06:10 +00:00
ArmGenericTimerVirtCounterLib ArmPkg: add ArmGenericTimerCounterLib implementation using virtual timer 2014-09-09 16:07:43 +00:00
ArmGicArchLib ArmPkg: cache detected revision in ArmGicArchLib 2015-07-28 20:45:10 +00:00
ArmGicArchSecLib ArmPkg: copy ArmGicArchLib to ArmGicArchSecLib 2015-07-28 20:44:58 +00:00
ArmHvcLib ArmPkg: update RVCT assembly functions to use new RVCT_ASM_EXPORT macro 2015-12-03 20:28:02 +00:00
ArmLib ArmPkg: update InvalidateInstructionCacheRange to flush only to PoU 2015-12-08 15:58:53 +00:00
ArmPsciResetSystemLib Renamed ArmPlatformPkg/ArmVirtualizationPkg into ArmVirtPkg 2015-05-29 13:50:43 +00:00
ArmSmcLib ArmPkg: update RVCT assembly functions to use new RVCT_ASM_EXPORT macro 2015-12-03 20:28:02 +00:00
ArmSmcLibNull ArmPkg: update RVCT assembly functions to use new RVCT_ASM_EXPORT macro 2015-12-03 20:28:02 +00:00
ArmSoftFloatLib ArmPkg/ArmSoftFloatLib: add support for RVCT 2015-11-30 08:57:03 +00:00
BaseMemoryLibStm ArmPkg: update RVCT assembly functions to use new RVCT_ASM_EXPORT macro 2015-12-03 20:28:02 +00:00
BaseMemoryLibVstm ArmPkg: update RVCT assembly functions to use new RVCT_ASM_EXPORT macro 2015-12-03 20:28:02 +00:00
BdsLib ArmPkg/BdsLib: Send RemainingDevicePath to PXE Load File protocol 2015-12-07 16:51:35 +00:00
CompilerIntrinsicsLib ArmPkg: update RVCT assembly functions to use new RVCT_ASM_EXPORT macro 2015-12-03 20:28:02 +00:00
DebugAgentSymbolsBaseLib ArmPkg/ArmPlatformPkg: position vectors relative to base 2015-11-19 14:39:48 +00:00
DebugPeCoffExtraActionLib ArmPkg: DebugPeCoffExtraActionLib: debugger commands are not errors 2015-03-02 16:19:26 +00:00
DebugUncachedMemoryAllocationLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
DefaultExceptionHandlerLib ARM Packages: Replace tabs by spaces for indentation 2014-08-26 10:14:17 +00:00
PeiServicesTablePointerLib ArmPkg/PeiServicesTablePointerLib: add missing MigratePeiServicesTablePointer() 2015-11-25 20:06:41 +00:00
RvdPeCoffExtraActionLib ArmPkg/Semihostlib: Rename semi-hosting open option 2014-10-27 10:37:20 +00:00
SemiHostingDebugLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
SemiHostingSerialPortLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
SemihostLib ArmPkg/SemihostLib: Add library functions 2014-10-27 10:38:18 +00:00
UncachedMemoryAllocationLib ArmPkg/UncachedMemoryAllocationLib: fix warning about uninitialized local var 2015-11-25 19:50:05 +00:00