diff options
author | Girish Pathak <girish.pathak@arm.com> | 2017-11-21 15:48:11 +0000 |
---|---|---|
committer | Leif Lindholm <leif.lindholm@linaro.org> | 2018-04-23 18:04:08 +0100 |
commit | b3b892d75e00fe0e6df6a4f99be0d180779e8e9a (patch) | |
tree | 48ddfaa9f3e0e48be3bfa728405274125b69f5dd /Platform/ARM/JunoPkg/Library/ArmJunoLib/ArmJunoMem.c | |
parent | adf50234c8e8b15204501bca6327392d67301660 (diff) | |
download | edk2-platforms-b3b892d75e00fe0e6df6a4f99be0d180779e8e9a.tar.xz |
ARM/JunoPkg: Adding SCMI MTL library
This change adds a new Mailbox Transport Layer library for the Juno
platform. This library is required for ArmScmiDxe driver communication
with the SCP.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Girish Pathak <girish.pathak@arm.com>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Diffstat (limited to 'Platform/ARM/JunoPkg/Library/ArmJunoLib/ArmJunoMem.c')
-rw-r--r-- | Platform/ARM/JunoPkg/Library/ArmJunoLib/ArmJunoMem.c | 8 |
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);
|