audk/ArmPkg/Library/ArmLib/AArch64
Ard Biesheuvel 469e1e1e42 ArmPkg/ArmLib: avoid cache maintenance in PEIMs when executing in place
On some platforms, performing cache maintenance on regions that are backed
by NOR flash result in SErrors. Since cache maintenance is unnecessary in
that case, create a PEIM specific version that only performs said cache
maintenance in its constructor if the module is shadowed in RAM. To avoid
performing the cache maintenance if the MMU code is not used to begin with,
check that explicitly in the constructor.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Tested-by: Heyi Guo <heyi.guo@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
2016-06-15 17:23:09 +02:00
..
AArch64ArchTimer.c ArmPkg: Move TimerDxe and ArmArchTimerLib to new ArmGenericTimerCounterLib 2014-09-09 16:10:18 +00:00
AArch64ArchTimerSupport.S ArmPkg: fix ArmWriteCntkCtl simple code bug 2015-05-13 18:21:58 +00:00
AArch64BaseLibConstructor.c ArmPkg/ArmLib: avoid cache maintenance in PEIMs when executing in place 2016-06-15 17:23:09 +02:00
AArch64Lib.c ArmPkg: ArmLib: purge incorrect ArmDrainWriteBuffer () alias 2015-11-20 13:14:59 +00:00
AArch64Lib.h ArmPkg/ArmLib: remove unused ArmCleanDataCacheToPoU() 2015-11-09 13:26:11 +00:00
AArch64Lib.inf ArmPkg/ArmLib: avoid cache maintenance in PEIMs when executing in place 2016-06-15 17:23:09 +02:00
AArch64LibPei.inf ArmPkg/ArmLib: avoid cache maintenance in PEIMs when executing in place 2016-06-15 17:23:09 +02:00
AArch64LibPrePi.inf ArmPkg: remove cache maintenance by VA operation range size threshold 2015-04-14 11:54:40 +00:00
AArch64LibSec.inf ArmPkg: remove cache maintenance by VA operation range size threshold 2015-04-14 11:54:40 +00:00
AArch64Mmu.c ArmPkg/ArmLib: avoid cache maintenance in PEIMs when executing in place 2016-06-15 17:23:09 +02:00
AArch64PeiLibConstructor.c ArmPkg/ArmLib: avoid cache maintenance in PEIMs when executing in place 2016-06-15 17:23:09 +02:00
AArch64Support.S ArmPkg/ArmLib: don't invalidate entire I-cache on range operation 2016-05-12 13:53:08 +02:00
ArmLibSupportV8.S ArmPkg: CpuDxe: fix AArch64 interrupt read masks 2016-02-23 12:07:11 +01:00