summaryrefslogtreecommitdiff
path: root/Platform/ARM/JunoPkg/Library/ArmJunoLib/ArmJunoMem.c
diff options
context:
space:
mode:
Diffstat (limited to 'Platform/ARM/JunoPkg/Library/ArmJunoLib/ArmJunoMem.c')
-rw-r--r--Platform/ARM/JunoPkg/Library/ArmJunoLib/ArmJunoMem.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/Platform/ARM/JunoPkg/Library/ArmJunoLib/ArmJunoMem.c b/Platform/ARM/JunoPkg/Library/ArmJunoLib/ArmJunoMem.c
index 2d9c2c95a8..2cac815e96 100644
--- a/Platform/ARM/JunoPkg/Library/ArmJunoLib/ArmJunoMem.c
+++ b/Platform/ARM/JunoPkg/Library/ArmJunoLib/ArmJunoMem.c
@@ -1,6 +1,6 @@
/** @file
*
-* Copyright (c) 2013-2015, ARM Limited. All rights reserved.
+* Copyright (c) 2013-2018, ARM Limited. All rights reserved.
*
* This program and the accompanying materials
* are licensed and made available under the terms and conditions of the BSD License
@@ -107,7 +107,11 @@ ArmPlatformGetVirtualMemoryMap (
VirtualMemoryTable[++Index].PhysicalBase = ARM_JUNO_NON_SECURE_SRAM_BASE;
VirtualMemoryTable[Index].VirtualBase = ARM_JUNO_NON_SECURE_SRAM_BASE;
VirtualMemoryTable[Index].Length = ARM_JUNO_NON_SECURE_SRAM_SZ;
- VirtualMemoryTable[Index].Attributes = CacheAttributes;
+ // This memory is shared between the application processor
+ // and the SCP. To avoid coherency problems, map it as uncached memory.
+ // NOTE: The attribute value is misleading, it indicates memory map type as
+ // an un-cached, un-buffered but allows buffering and reordering.
+ VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_UNCACHED_UNBUFFERED;
// PCI Root Complex
VirtualMemoryTable[++Index].PhysicalBase = PcdGet64 (PcdPcieControlBaseAddress);