mirror of
https://git.yoctoproject.org/meta-arm
synced 2026-05-08 05:09:56 +00:00
arm-bsp/edk2-firmware: drop N1SDP patches
These patches have been merged into edk2-platforms bd53d309 onwards, which is built with edk2-firmware 202111. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
This commit is contained in:
@@ -1,10 +1,3 @@
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
|
||||
|
||||
SRC_URI:append = " file://Add-mem-regions-to-support.patch;patchdir=${S}/edk2-platforms \
|
||||
file://Introduce-platform-DXE-driver.patch;patchdir=${S}/edk2-platforms \
|
||||
file://Enable-N1SDP-platform-specific-configs.patch;patchdir=${S}/edk2-platforms \
|
||||
file://Configuration-Manager-for-N1SDP.patch;patchdir=${S}/edk2-platforms "
|
||||
|
||||
# N1SDP specific EDK2 configurations
|
||||
EDK2_BUILD_RELEASE = "0"
|
||||
EDK2_PLATFORM = "n1sdp"
|
||||
|
||||
@@ -1,216 +0,0 @@
|
||||
From f5ad583b2b3d480ab21682056b56eb59057fca70 Mon Sep 17 00:00:00 2001
|
||||
From: Khasim Syed Mohammed <khasim.mohammed@arm.com>
|
||||
Date: Tue, 6 Apr 2021 15:06:57 +0530
|
||||
Subject: [PATCH 1/4] Silicon/ARM/NeoverseN1Soc: Add mem regions to support C2C
|
||||
usecase
|
||||
|
||||
Upstream-Status: Pending [Not submitted to upstream yet]
|
||||
Signed-off-by: Khasim Syed Mohammed <khasim.mohammed@arm.com>
|
||||
|
||||
This patch adds resource descriptor for multi-chip usecase and
|
||||
introduces corresponding PCD definitions.
|
||||
|
||||
Change-Id: Iadf432a8008f1becf916e21ff84fa1c387b1ceae
|
||||
|
||||
Signed-off-by: Chandni Cherukuri <chandni.cherukuri@arm.com>
|
||||
Signed-off-by: Khasim Syed Mohammed <khasim.mohammed@arm.com>
|
||||
---
|
||||
.../Library/PlatformLib/PlatformLib.inf | 14 +++-
|
||||
.../Library/PlatformLib/PlatformLibMem.c | 67 ++++++++++++++++++-
|
||||
Silicon/ARM/NeoverseN1Soc/NeoverseN1Soc.dec | 28 +++++++-
|
||||
3 files changed, 103 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.inf b/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.inf
|
||||
index 166c9e0444..791aeb96ad 100644
|
||||
--- a/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.inf
|
||||
+++ b/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.inf
|
||||
@@ -1,6 +1,6 @@
|
||||
## @file
|
||||
#
|
||||
-# Copyright (c) 2018-2020, ARM Limited. All rights reserved.
|
||||
+# Copyright (c) 2018-2021, ARM Limited. All rights reserved.<BR>
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
#
|
||||
@@ -47,6 +47,18 @@
|
||||
|
||||
gArmNeoverseN1SocTokenSpaceGuid.PcdDramBlock2Base
|
||||
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdExtMemorySpace
|
||||
+
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixBusMax
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixBusMin
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixExpressBaseAddress
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixMmio32Base
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixMmio32Size
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixMmio64Base
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixMmio64Size
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixRootPortConfigBaseAddress
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixRootPortConfigBaseSize
|
||||
+
|
||||
[Guids]
|
||||
gEfiHobListGuid ## CONSUMES ## SystemTable
|
||||
|
||||
diff --git a/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLibMem.c b/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLibMem.c
|
||||
index f9b3d03753..a2785dcfbd 100644
|
||||
--- a/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLibMem.c
|
||||
+++ b/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLibMem.c
|
||||
@@ -1,6 +1,6 @@
|
||||
/** @file
|
||||
*
|
||||
-* Copyright (c) 2018 - 2020, ARM Limited. All rights reserved.
|
||||
+* Copyright (c) 2018 - 2021, ARM Limited. All rights reserved.<BR>
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
*
|
||||
@@ -13,7 +13,7 @@
|
||||
#include <NeoverseN1Soc.h>
|
||||
|
||||
// The total number of descriptors, including the final "end-of-table" descriptor.
|
||||
-#define MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS 13
|
||||
+#define MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS 19
|
||||
|
||||
/**
|
||||
Returns the Virtual Memory Map of the platform.
|
||||
@@ -35,6 +35,7 @@ ArmPlatformGetVirtualMemoryMap (
|
||||
EFI_RESOURCE_ATTRIBUTE_TYPE ResourceAttributes;
|
||||
NEOVERSEN1SOC_PLAT_INFO *PlatInfo;
|
||||
UINT64 DramBlock2Size;
|
||||
+ UINT64 RemoteDdrSize;
|
||||
|
||||
PlatInfo = (NEOVERSEN1SOC_PLAT_INFO *)NEOVERSEN1SOC_PLAT_INFO_STRUCT_BASE;
|
||||
DramBlock2Size = ((UINT64)(PlatInfo->LocalDdrSize -
|
||||
@@ -55,6 +56,24 @@ ArmPlatformGetVirtualMemoryMap (
|
||||
FixedPcdGet64 (PcdDramBlock2Base),
|
||||
DramBlock2Size);
|
||||
|
||||
+ if (PlatInfo->MultichipMode == 1) {
|
||||
+ RemoteDdrSize = ((PlatInfo->RemoteDdrSize - 2) * 1024UL * 1024UL * 1024UL);
|
||||
+
|
||||
+ BuildResourceDescriptorHob (
|
||||
+ EFI_RESOURCE_SYSTEM_MEMORY,
|
||||
+ ResourceAttributes,
|
||||
+ FixedPcdGet64 (PcdExtMemorySpace) + FixedPcdGet64 (PcdSystemMemoryBase),
|
||||
+ PcdGet64 (PcdSystemMemorySize)
|
||||
+ );
|
||||
+
|
||||
+ BuildResourceDescriptorHob (
|
||||
+ EFI_RESOURCE_SYSTEM_MEMORY,
|
||||
+ ResourceAttributes,
|
||||
+ FixedPcdGet64 (PcdExtMemorySpace) + FixedPcdGet64 (PcdDramBlock2Base),
|
||||
+ RemoteDdrSize
|
||||
+ );
|
||||
+ }
|
||||
+
|
||||
ASSERT (VirtualMemoryMap != NULL);
|
||||
Index = 0;
|
||||
|
||||
@@ -114,6 +133,32 @@ ArmPlatformGetVirtualMemoryMap (
|
||||
VirtualMemoryTable[Index].Length = PcdGet64 (PcdPcieMmio64Size);
|
||||
VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
|
||||
|
||||
+ // CCIX RC Configuration Space
|
||||
+ VirtualMemoryTable[++Index].PhysicalBase = PcdGet32 (PcdCcixRootPortConfigBaseAddress);
|
||||
+ VirtualMemoryTable[Index].VirtualBase = PcdGet32 (PcdCcixRootPortConfigBaseAddress);
|
||||
+ VirtualMemoryTable[Index].Length = PcdGet32 (PcdCcixRootPortConfigBaseSize);
|
||||
+ VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
|
||||
+
|
||||
+ // CCIX ECAM Configuration Space
|
||||
+ VirtualMemoryTable[++Index].PhysicalBase = PcdGet32 (PcdCcixExpressBaseAddress);
|
||||
+ VirtualMemoryTable[Index].VirtualBase = PcdGet32 (PcdCcixExpressBaseAddress);
|
||||
+ VirtualMemoryTable[Index].Length = (FixedPcdGet32 (PcdCcixBusMax) -
|
||||
+ FixedPcdGet32 (PcdCcixBusMin) + 1) *
|
||||
+ SIZE_1MB;
|
||||
+ VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
|
||||
+
|
||||
+ // CCIX MMIO32 Memory Space
|
||||
+ VirtualMemoryTable[++Index].PhysicalBase = PcdGet32 (PcdCcixMmio32Base);
|
||||
+ VirtualMemoryTable[Index].VirtualBase = PcdGet32 (PcdCcixMmio32Base);
|
||||
+ VirtualMemoryTable[Index].Length = PcdGet32 (PcdCcixMmio32Size);
|
||||
+ VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
|
||||
+
|
||||
+ // CCIX MMIO64 Memory Space
|
||||
+ VirtualMemoryTable[++Index].PhysicalBase = PcdGet64 (PcdCcixMmio64Base);
|
||||
+ VirtualMemoryTable[Index].VirtualBase = PcdGet64 (PcdCcixMmio64Base);
|
||||
+ VirtualMemoryTable[Index].Length = PcdGet64 (PcdCcixMmio64Size);
|
||||
+ VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
|
||||
+
|
||||
// SubSystem Pheripherals - UART0
|
||||
VirtualMemoryTable[++Index].PhysicalBase = NEOVERSEN1SOC_UART0_BASE;
|
||||
VirtualMemoryTable[Index].VirtualBase = NEOVERSEN1SOC_UART0_BASE;
|
||||
@@ -138,6 +183,24 @@ ArmPlatformGetVirtualMemoryMap (
|
||||
VirtualMemoryTable[Index].Length = NEOVERSEN1SOC_EXP_PERIPH_BASE0_SZ;
|
||||
VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
|
||||
|
||||
+ if (PlatInfo->MultichipMode == 1) {
|
||||
+ //Remote DDR (2GB)
|
||||
+ VirtualMemoryTable[++Index].PhysicalBase = PcdGet64 (PcdExtMemorySpace) +
|
||||
+ PcdGet64 (PcdSystemMemoryBase);
|
||||
+ VirtualMemoryTable[Index].VirtualBase = PcdGet64 (PcdExtMemorySpace) +
|
||||
+ PcdGet64 (PcdSystemMemoryBase);
|
||||
+ VirtualMemoryTable[Index].Length = PcdGet64 (PcdSystemMemorySize);
|
||||
+ VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_WRITE_THROUGH;
|
||||
+
|
||||
+ //Remote DDR
|
||||
+ VirtualMemoryTable[++Index].PhysicalBase = PcdGet64 (PcdExtMemorySpace) +
|
||||
+ PcdGet64 (PcdDramBlock2Base);
|
||||
+ VirtualMemoryTable[Index].VirtualBase = PcdGet64 (PcdExtMemorySpace) +
|
||||
+ PcdGet64 (PcdDramBlock2Base);
|
||||
+ VirtualMemoryTable[Index].Length = RemoteDdrSize;
|
||||
+ VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_WRITE_THROUGH;
|
||||
+ }
|
||||
+
|
||||
// End of Table
|
||||
VirtualMemoryTable[++Index].PhysicalBase = 0;
|
||||
VirtualMemoryTable[Index].VirtualBase = 0;
|
||||
diff --git a/Silicon/ARM/NeoverseN1Soc/NeoverseN1Soc.dec b/Silicon/ARM/NeoverseN1Soc/NeoverseN1Soc.dec
|
||||
index 54b793a937..aa7c6615d1 100644
|
||||
--- a/Silicon/ARM/NeoverseN1Soc/NeoverseN1Soc.dec
|
||||
+++ b/Silicon/ARM/NeoverseN1Soc/NeoverseN1Soc.dec
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
-# Copyright (c) 2018 - 2020, ARM Limited. All rights reserved.
|
||||
+# Copyright (c) 2018 - 2021, ARM Limited. All rights reserved.<BR>
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
#
|
||||
@@ -33,8 +33,8 @@
|
||||
gArmNeoverseN1SocTokenSpaceGuid.PcdPcieBusMax|17|UINT32|0x00000005
|
||||
gArmNeoverseN1SocTokenSpaceGuid.PcdPcieBusMin|0|UINT32|0x00000006
|
||||
gArmNeoverseN1SocTokenSpaceGuid.PcdPcieIoBase|0x0|UINT32|0x00000007
|
||||
- gArmNeoverseN1SocTokenSpaceGuid.PcdPcieIoMaxBase|0x00FFFFFF|UINT32|0x00000008
|
||||
- gArmNeoverseN1SocTokenSpaceGuid.PcdPcieIoSize|0x01000000|UINT32|0x00000009
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdPcieIoMaxBase|0x001FFFF|UINT32|0x00000008
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdPcieIoSize|0x020000|UINT32|0x00000009
|
||||
gArmNeoverseN1SocTokenSpaceGuid.PcdPcieIoTranslation|0x75200000|UINT32|0x0000000A
|
||||
gArmNeoverseN1SocTokenSpaceGuid.PcdPcieMmio32Base|0x71200000|UINT32|0x0000000B
|
||||
gArmNeoverseN1SocTokenSpaceGuid.PcdPcieMmio32MaxBase|0x751FFFFF|UINT32|0x0000000C
|
||||
@@ -44,3 +44,25 @@
|
||||
gArmNeoverseN1SocTokenSpaceGuid.PcdPcieMmio64MaxBase|0x28FFFFFFFF|UINT64|0x00000010
|
||||
gArmNeoverseN1SocTokenSpaceGuid.PcdPcieMmio64Size|0x2000000000|UINT64|0x00000011
|
||||
gArmNeoverseN1SocTokenSpaceGuid.PcdPcieMmio64Translation|0x0|UINT64|0x00000012
|
||||
+
|
||||
+ # CCIX
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixBusCount|18|UINT32|0x00000016
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixBusMax|17|UINT32|0x00000017
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixBusMin|0|UINT32|0x00000018
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixExpressBaseAddress|0x68000000|UINT32|0x00000019
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixIoBase|0x0|UINT32|0x0000001A
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixIoMaxBase|0x01FFFF|UINT32|0x0000001B
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixIoSize|0x020000|UINT32|0x0000001C
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixIoTranslation|0x6D200000|UINT32|0x00000001D
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixMmio32Base|0x69200000|UINT32|0x0000001E
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixMmio32MaxBase|0x6D1FFFFF|UINT32|0x00000001F
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixMmio32Size|0x04000000|UINT32|0x00000020
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixMmio32Translation|0x0|UINT32|0x00000021
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixMmio64Base|0x2900000000|UINT64|0x00000022
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixMmio64MaxBase|0x48FFFFFFFF|UINT64|0x00000023
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixMmio64Size|0x2000000000|UINT64|0x00000024
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixMmio64Translation|0x0|UINT64|0x00000025
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixRootPortConfigBaseAddress|0x62000000|UINT32|0x00000026
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdCcixRootPortConfigBaseSize|0x00001000|UINT32|0x00000027
|
||||
+
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdExtMemorySpace|0x40000000000|UINT64|0x00000029
|
||||
--
|
||||
2.17.1
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
-245
@@ -1,245 +0,0 @@
|
||||
From 94709b223eeb11c56f882d94df93579d2294ce6b Mon Sep 17 00:00:00 2001
|
||||
From: Khasim Syed Mohammed <khasim.mohammed@arm.com>
|
||||
Date: Tue, 6 Apr 2021 15:20:46 +0530
|
||||
Subject: [PATCH 3/4] Platform/ARM/N1Sdp: Enable N1SDP platform specific
|
||||
configurations
|
||||
|
||||
Upstream-Status: Pending [Not submitted to upstream yet]
|
||||
Signed-off-by: Khasim Syed Mohammed <khasim.mohammed@arm.com>
|
||||
|
||||
The patch
|
||||
- adds GUIDs for Coresight,
|
||||
- RAM Disk device registration and support.
|
||||
|
||||
Change-Id: Ic6adb6400a114c1bbbba08008a8c1e187deb2e4e
|
||||
|
||||
Signed-off-by: Deepak Pandey <Deepak.Pandey@arm.com>
|
||||
Signed-off-by: Khasim Syed Mohammed <khasim.mohammed@arm.com>
|
||||
---
|
||||
Platform/ARM/N1Sdp/N1SdpPlatform.dec | 91 ++++++++++++++++++++++++++++
|
||||
Platform/ARM/N1Sdp/N1SdpPlatform.dsc | 25 +++++++-
|
||||
Platform/ARM/N1Sdp/N1SdpPlatform.fdf | 9 ++-
|
||||
3 files changed, 123 insertions(+), 2 deletions(-)
|
||||
create mode 100644 Platform/ARM/N1Sdp/N1SdpPlatform.dec
|
||||
|
||||
diff --git a/Platform/ARM/N1Sdp/N1SdpPlatform.dec b/Platform/ARM/N1Sdp/N1SdpPlatform.dec
|
||||
new file mode 100644
|
||||
index 0000000000..6b83d7c442
|
||||
--- /dev/null
|
||||
+++ b/Platform/ARM/N1Sdp/N1SdpPlatform.dec
|
||||
@@ -0,0 +1,91 @@
|
||||
+#
|
||||
+# Copyright (c) 2021, ARM Limited. All rights reserved.<BR>
|
||||
+#
|
||||
+# SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
+#
|
||||
+
|
||||
+[Defines]
|
||||
+ DEC_SPECIFICATION = 0x0001001A
|
||||
+ PACKAGE_NAME = N1SdpPlatform
|
||||
+ PACKAGE_GUID = 29aacb23-61e8-4fe2-8a06-793537cd26e9
|
||||
+ PACKAGE_VERSION = 0.1
|
||||
+
|
||||
+################################################################################
|
||||
+#
|
||||
+# Include Section - list of Include Paths that are provided by this package.
|
||||
+# Comments are used for Keywords and Module Types.
|
||||
+#
|
||||
+# Supported Module Types:
|
||||
+# BASE SEC PEI_CORE PEIM DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER DXE_SAL_DRIVER UEFI_DRIVER UEFI_APPLICATION
|
||||
+#
|
||||
+################################################################################
|
||||
+[Includes.common]
|
||||
+
|
||||
+[LibraryClasses]
|
||||
+ ArmPlatformLib|Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.inf
|
||||
+
|
||||
+[Guids.common]
|
||||
+ gArmN1SdpTokenSpaceGuid = { 0xd8f1624a, 0x98c1, 0x4f64, { 0xa6, 0x41, 0x19, 0x5e, 0xb5, 0x3b, 0x26, 0x0f } }
|
||||
+
|
||||
+[PcdsFixedAtBuild]
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdRamDiskBase|0x88000000|UINT32|0x00000001
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdRamDiskSize|0x18000000|UINT32|0x00000002
|
||||
+
|
||||
+ # External memory
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdExtMemorySpace|0|UINT64|0x00000029
|
||||
+
|
||||
+[PcdsFeatureFlag.common]
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdRamDiskSupported|FALSE|BOOLEAN|0x00000003
|
||||
+
|
||||
+[PcdsFixedAtBuild.common]
|
||||
+ #
|
||||
+ # CoreSight Debug and Trace components
|
||||
+ #
|
||||
+
|
||||
+ # CoreSight ETMs
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtm0Base|0x402040000|UINT64|0x0000002D
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtm0MaxBase|0x402040FFF|UINT64|0x0000002E
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtm1Base|0x402140000|UINT64|0x0000002F
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtm1MaxBase|0x402140FFF|UINT64|0x00000030
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtm2Base|0x403040000|UINT64|0x00000031
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtm2MaxBase|0x403040FFF|UINT64|0x00000032
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtm3Base|0x403140000|UINT64|0x00000033
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtm3MaxBase|0x403140FFF|UINT64|0x00000034
|
||||
+
|
||||
+ # CoreSight TMC (ETRs/ETFs/ETBs)
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtf0Base|0x400410000|UINT64|0x00000035
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtf0MaxBase|0x400410FFF|UINT64|0x00000036
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtf1Base|0x400420000|UINT64|0x00000037
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtf1MaxBase|0x400420FFF|UINT64|0x00000038
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtf2Base|0x400010000|UINT64|0x00000039
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtf2MaxBase|0x400010FFF|UINT64|0x0000003A
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtrBase|0x400120000|UINT64|0x00000043
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsEtrMaxBase|0x400120FFF|UINT64|0x00000044
|
||||
+
|
||||
+ # CoreSight Dynamic Funnel(s)
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsFunnel0Base|0x4000B0000|UINT64|0x0000003B
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsFunnel0MaxBase|0x4000B0FFF|UINT64|0x0000003C
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsFunnel1Base|0x4000A0000|UINT64|0x0000003D
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsFunnel1MaxBase|0x4000A0FFF|UINT64|0x0000003E
|
||||
+
|
||||
+ # CoreSight Dynamic Replicator(s)
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsReplicatorBase|0x400110000|UINT64|0x0000003F
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsReplicatorMaxBase|0x400110FFF|UINT64|0x00000040
|
||||
+
|
||||
+ # CoreSight TPIU
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsTpiuBase|0x400130000|UINT64|0x00000041
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsTpiuMaxBase|0x400130FFF|UINT64|0x00000042
|
||||
+
|
||||
+ # CoreSight STM and STM Stimulus
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsStmBase|0x400800000|UINT64|0x00000045
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsStmMaxBase|0x400800FFF|UINT64|0x00000046
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsStmStimulusBase|0x4D000000|UINT32|0x00000047
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsStmStimulusSize|0x1000000|UINT32|0x00000048
|
||||
+
|
||||
+ # CoreSight Components' Size
|
||||
+ #
|
||||
+ # Newton TRMs specify the size for these coresight components as 64K.
|
||||
+ # The actual size is just 4K though 64K is reserved. Access to the
|
||||
+ # unmapped reserved region results in a DECERR response.
|
||||
+ #
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdCsComponentSize|0x1000|UINT32|0x00000049
|
||||
diff --git a/Platform/ARM/N1Sdp/N1SdpPlatform.dsc b/Platform/ARM/N1Sdp/N1SdpPlatform.dsc
|
||||
index 92376aab8f..1b46eb2734 100644
|
||||
--- a/Platform/ARM/N1Sdp/N1SdpPlatform.dsc
|
||||
+++ b/Platform/ARM/N1Sdp/N1SdpPlatform.dsc
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
-# Copyright (c) 2018 - 2020, ARM Limited. All rights reserved.
|
||||
+# Copyright (c) 2018 - 2021, ARM Limited. All rights reserved.<BR>
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
#
|
||||
@@ -32,6 +32,9 @@
|
||||
TimerLib|ArmPkg/Library/ArmArchTimerLib/ArmArchTimerLib.inf
|
||||
UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
|
||||
|
||||
+ # Ramdisk Support
|
||||
+ FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
|
||||
+
|
||||
[LibraryClasses.common.SEC]
|
||||
HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
|
||||
MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
|
||||
@@ -70,6 +73,9 @@
|
||||
[LibraryClasses.common.DXE_RUNTIME_DRIVER]
|
||||
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
|
||||
HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
|
||||
+!if $(TARGET) != RELEASE
|
||||
+ DebugLib|MdePkg/Library/DxeRuntimeDebugLibSerialPort/DxeRuntimeDebugLibSerialPort.inf
|
||||
+!endif
|
||||
|
||||
[LibraryClasses.common.UEFI_DRIVER, LibraryClasses.common.UEFI_APPLICATION, LibraryClasses.common.DXE_RUNTIME_DRIVER, LibraryClasses.common.DXE_DRIVER]
|
||||
PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
|
||||
@@ -81,11 +87,16 @@
|
||||
################################################################################
|
||||
|
||||
[PcdsFeatureFlag.common]
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdRamDiskSupported|TRUE
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport|TRUE
|
||||
|
||||
[PcdsFixedAtBuild.common]
|
||||
gArmTokenSpaceGuid.PcdVFPEnabled|1
|
||||
|
||||
+ # RAM Disk
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdRamDiskBase|0x88000000
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdRamDiskSize|0x18000000
|
||||
+
|
||||
# Stacks for MPCores in Normal World
|
||||
gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x80000000
|
||||
gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x40000
|
||||
@@ -98,6 +109,9 @@
|
||||
# Secondary DDR memory
|
||||
gArmNeoverseN1SocTokenSpaceGuid.PcdDramBlock2Base|0x8080000000
|
||||
|
||||
+ # External memory
|
||||
+ gArmNeoverseN1SocTokenSpaceGuid.PcdExtMemorySpace|0x40000000000
|
||||
+
|
||||
# GIC Base Addresses
|
||||
gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0x2C000000
|
||||
gArmTokenSpaceGuid.PcdGicDistributorBase|0x30000000
|
||||
@@ -197,6 +211,9 @@
|
||||
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
|
||||
}
|
||||
|
||||
+ # Platform driver
|
||||
+ Platform/ARM/N1Sdp/Drivers/PlatformDxe/PlatformDxe.inf
|
||||
+
|
||||
# Human Interface Support
|
||||
MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
|
||||
|
||||
@@ -235,6 +252,9 @@
|
||||
# SATA Controller
|
||||
MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf
|
||||
|
||||
+ # NVMe boot devices
|
||||
+ MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf
|
||||
+
|
||||
# Usb Support
|
||||
MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
|
||||
MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
|
||||
@@ -243,3 +263,6 @@
|
||||
MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
|
||||
MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
|
||||
MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceDxe.inf
|
||||
+
|
||||
+ # RAM Disk
|
||||
+ MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDxe.inf
|
||||
diff --git a/Platform/ARM/N1Sdp/N1SdpPlatform.fdf b/Platform/ARM/N1Sdp/N1SdpPlatform.fdf
|
||||
index c4e1f7b4b8..64a812f563 100644
|
||||
--- a/Platform/ARM/N1Sdp/N1SdpPlatform.fdf
|
||||
+++ b/Platform/ARM/N1Sdp/N1SdpPlatform.fdf
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
-# Copyright (c) 2018 - 2020, ARM Limited. All rights reserved.
|
||||
+# Copyright (c) 2018 - 2021, ARM Limited. All rights reserved.<BR>
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
#
|
||||
@@ -109,6 +109,9 @@ READ_LOCK_STATUS = TRUE
|
||||
# SATA Controller
|
||||
INF MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf
|
||||
|
||||
+ # NVMe boot devices
|
||||
+ INF MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf
|
||||
+
|
||||
# Usb Support
|
||||
INF MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
|
||||
INF MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
|
||||
@@ -137,10 +140,14 @@ READ_LOCK_STATUS = TRUE
|
||||
|
||||
# FV FileSystem
|
||||
INF MdeModulePkg/Universal/FvSimpleFileSystemDxe/FvSimpleFileSystemDxe.inf
|
||||
+ INF MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDxe.inf
|
||||
|
||||
# UEFI applications
|
||||
INF ShellPkg/Application/Shell/Shell.inf
|
||||
|
||||
+ # Platform driver
|
||||
+ INF Platform/ARM/N1Sdp/Drivers/PlatformDxe/PlatformDxe.inf
|
||||
+
|
||||
# Bds
|
||||
INF MdeModulePkg/Application/UiApp/UiApp.inf
|
||||
INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
|
||||
--
|
||||
2.17.1
|
||||
|
||||
@@ -1,122 +0,0 @@
|
||||
From 5119374cdf5b86e8b6ff38329d87f0e494e2b356 Mon Sep 17 00:00:00 2001
|
||||
From: Khasim Syed Mohammed <khasim.mohammed@arm.com>
|
||||
Date: Tue, 6 Apr 2021 15:12:27 +0530
|
||||
Subject: [PATCH 2/4] Platform/ARM/N1Sdp: Introduce platform DXE driver
|
||||
|
||||
Upstream-Status: Pending [Not submitted to upstream yet]
|
||||
Signed-off-by: Khasim Syed Mohammed <khasim.mohammed@arm.com>
|
||||
|
||||
Add an initial platform DXE driver and support for ramdisk devices.
|
||||
|
||||
Change-Id: Idf61fdc3dbde384e0414a80739078bb206784fc3
|
||||
|
||||
Signed-off-by: Deepak Pandey <Deepak.Pandey@arm.com>
|
||||
Signed-off-by: Khasim Syed Mohammed <khasim.mohammed@arm.com>
|
||||
---
|
||||
.../N1Sdp/Drivers/PlatformDxe/PlatformDxe.c | 43 +++++++++++++++++++
|
||||
.../N1Sdp/Drivers/PlatformDxe/PlatformDxe.inf | 43 +++++++++++++++++++
|
||||
2 files changed, 86 insertions(+)
|
||||
create mode 100644 Platform/ARM/N1Sdp/Drivers/PlatformDxe/PlatformDxe.c
|
||||
create mode 100644 Platform/ARM/N1Sdp/Drivers/PlatformDxe/PlatformDxe.inf
|
||||
|
||||
diff --git a/Platform/ARM/N1Sdp/Drivers/PlatformDxe/PlatformDxe.c b/Platform/ARM/N1Sdp/Drivers/PlatformDxe/PlatformDxe.c
|
||||
new file mode 100644
|
||||
index 0000000000..c9eac1e4a9
|
||||
--- /dev/null
|
||||
+++ b/Platform/ARM/N1Sdp/Drivers/PlatformDxe/PlatformDxe.c
|
||||
@@ -0,0 +1,43 @@
|
||||
+/** @file
|
||||
+*
|
||||
+* Copyright (c) 2021, ARM Limited. All rights reserved.<BR>
|
||||
+*
|
||||
+* SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
+*
|
||||
+**/
|
||||
+
|
||||
+#include <Library/DebugLib.h>
|
||||
+#include <Library/UefiBootServicesTableLib.h>
|
||||
+#include <Protocol/RamDisk.h>
|
||||
+
|
||||
+EFI_STATUS
|
||||
+EFIAPI
|
||||
+ArmN1SdpEntryPoint (
|
||||
+ IN EFI_HANDLE ImageHandle,
|
||||
+ IN EFI_SYSTEM_TABLE *SystemTable
|
||||
+ )
|
||||
+{
|
||||
+ EFI_STATUS Status;
|
||||
+ EFI_RAM_DISK_PROTOCOL *RamDisk;
|
||||
+ EFI_DEVICE_PATH_PROTOCOL *DevicePath;
|
||||
+
|
||||
+ Status = EFI_UNSUPPORTED;
|
||||
+ if (FeaturePcdGet (PcdRamDiskSupported)) {
|
||||
+ Status = gBS->LocateProtocol (&gEfiRamDiskProtocolGuid, NULL, (VOID**) &RamDisk);
|
||||
+ if (EFI_ERROR (Status)) {
|
||||
+ DEBUG ((DEBUG_ERROR, "%a: Couldn't find the RAM Disk protocol - %r\n", __FUNCTION__, Status));
|
||||
+ return Status;
|
||||
+ }
|
||||
+
|
||||
+ Status = RamDisk->Register (
|
||||
+ (UINTN)PcdGet32(PcdRamDiskBase),
|
||||
+ (UINTN)PcdGet32(PcdRamDiskSize),
|
||||
+ &gEfiVirtualCdGuid,
|
||||
+ NULL,
|
||||
+ &DevicePath);
|
||||
+ if (EFI_ERROR (Status)) {
|
||||
+ DEBUG ((DEBUG_ERROR, "%a: Failed to register RAM Disk - %r\n", __FUNCTION__, Status));
|
||||
+ }
|
||||
+ }
|
||||
+ return Status;
|
||||
+}
|
||||
diff --git a/Platform/ARM/N1Sdp/Drivers/PlatformDxe/PlatformDxe.inf b/Platform/ARM/N1Sdp/Drivers/PlatformDxe/PlatformDxe.inf
|
||||
new file mode 100644
|
||||
index 0000000000..0a3915734d
|
||||
--- /dev/null
|
||||
+++ b/Platform/ARM/N1Sdp/Drivers/PlatformDxe/PlatformDxe.inf
|
||||
@@ -0,0 +1,43 @@
|
||||
+## @file
|
||||
+#
|
||||
+# Copyright (c) 2021, ARM Limited. All rights reserved.<BR>
|
||||
+#
|
||||
+# SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
+#
|
||||
+##
|
||||
+
|
||||
+[Defines]
|
||||
+ INF_VERSION = 0x0001001B
|
||||
+ BASE_NAME = PlatformDxe
|
||||
+ FILE_GUID = 11fc8b5a-377d-47a8-aee9-0093d3d3407f
|
||||
+ MODULE_TYPE = DXE_DRIVER
|
||||
+ VERSION_STRING = 1.0
|
||||
+ ENTRY_POINT = ArmN1SdpEntryPoint
|
||||
+
|
||||
+[Sources.common]
|
||||
+ PlatformDxe.c
|
||||
+
|
||||
+[Packages]
|
||||
+ ArmPkg/ArmPkg.dec
|
||||
+ ArmPlatformPkg/ArmPlatformPkg.dec
|
||||
+ EmbeddedPkg/EmbeddedPkg.dec
|
||||
+ MdePkg/MdePkg.dec
|
||||
+ MdeModulePkg/MdeModulePkg.dec
|
||||
+ Platform/ARM/N1Sdp/N1SdpPlatform.dec
|
||||
+
|
||||
+[LibraryClasses]
|
||||
+ HobLib
|
||||
+ UefiDriverEntryPoint
|
||||
+
|
||||
+[Protocols]
|
||||
+ gEfiRamDiskProtocolGuid
|
||||
+
|
||||
+[FeaturePcd]
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdRamDiskSupported
|
||||
+
|
||||
+[FixedPcd]
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdRamDiskBase
|
||||
+ gArmN1SdpTokenSpaceGuid.PcdRamDiskSize
|
||||
+
|
||||
+[Depex]
|
||||
+ gEfiRamDiskProtocolGuid
|
||||
--
|
||||
2.17.1
|
||||
|
||||
Reference in New Issue
Block a user