diff options
author | Ard Biesheuvel <ard.biesheuvel@linaro.org> | 2015-11-18 15:59:22 +0000 |
---|---|---|
committer | abiesheuvel <abiesheuvel@Edk2> | 2015-11-18 15:59:22 +0000 |
commit | 65ceda9173e688a42a3e74c0c94f4dffc569029c (patch) | |
tree | 25e3ce57604a499c4ae1f51a818f27b1ce619beb /ArmPkg/ArmPkg.dec | |
parent | 07070ecc76cff00175715f9a9534bc9216599a11 (diff) | |
download | edk2-65ceda9173e688a42a3e74c0c94f4dffc569029c.tar.gz edk2-65ceda9173e688a42a3e74c0c94f4dffc569029c.tar.bz2 edk2-65ceda9173e688a42a3e74c0c94f4dffc569029c.zip |
ArmPkg/ArmV7Mmu: introduce feature PCD to map normal memory non-shareable
Even though mapping normal memory (inner) shareable is usually the
correct choice on coherent systems, it may be desirable in some cases
to use non-shareable mappings for normal memory, e.g., when hardware
managed coherency is not required and the memory system is not fully
configured yet. So introduce a PCD PcdNormalMemoryNonshareableOverride
that makes cacheable mappings of normal memory non-shareable.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18897 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'ArmPkg/ArmPkg.dec')
-rw-r--r-- | ArmPkg/ArmPkg.dec | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ArmPkg/ArmPkg.dec b/ArmPkg/ArmPkg.dec index 46e9894d3f..ff4531e441 100644 --- a/ArmPkg/ArmPkg.dec +++ b/ArmPkg/ArmPkg.dec @@ -73,6 +73,12 @@ # Define if the GICv3 controller should use the GICv2 legacy
gArmTokenSpaceGuid.PcdArmGicV3WithV2Legacy|FALSE|BOOLEAN|0x00000042
+[PcdsFeatureFlag.ARM]
+ # Whether to map normal memory as non-shareable. FALSE is the safe choice, but
+ # TRUE may be appropriate to fix performance problems if you don't care about
+ # hardware coherency (i.e., no virtualization or cache coherent DMA)
+ gArmTokenSpaceGuid.PcdNormalMemoryNonshareableOverride|FALSE|BOOLEAN|0x00000043
+
[PcdsFixedAtBuild.common]
gArmTokenSpaceGuid.PcdTrustzoneSupport|FALSE|BOOLEAN|0x00000006
|