audk/ArmPkg
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
..
Application/LinuxLoader ArmPkg: LinuxLoader: fix typo in help string 2016-01-20 14:55:58 +00:00
Drivers ArmPkg: implement CpuIo2 protocol driver specific for PCI 2016-04-29 18:04:25 +02:00
Filesystem/SemihostFs ArmPkg/SemihostFs: Implement SetInfo() and handle seeking past the end of a file 2014-10-27 10:42:51 +00:00
Include ArmPkg/ArmLib: don't invalidate entire I-cache on range operation 2016-05-12 13:53:08 +02:00
Library ArmPkg/ArmLib: avoid cache maintenance in PEIMs when executing in place 2016-06-15 17:23:09 +02:00
ArmPkg.dec ArmPlatformPkg: move PCI related PCD definitions to ArmPkg 2016-04-29 18:04:21 +02:00
ArmPkg.dsc ArmPkg: ARM/AArch64 implementation of CpuExceptionHandlerLib 2016-03-16 12:19:58 +01:00
Contributions.txt */Contributions.txt: Update example email address 2015-02-03 17:29:14 +00:00
License.txt ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00