diff options
author | Aditya Angadi <aditya.angadi@arm.com> | 2020-02-19 18:15:45 +0530 |
---|---|---|
committer | Thomas Abraham <thomas.abraham@arm.com> | 2020-04-15 21:22:49 +0530 |
commit | 48ce89e2f826bc1db5ab96d9cdfd99b651f92e67 (patch) | |
tree | 20c94bda5969e5708b21cb2f358ebbbc3d59d278 | |
parent | 08311799167ed9dff1cbddefd30393ff300298b8 (diff) |
Platform/ARM/Sgi: Add initial support for RD-Daniel Config-XLR platform
Arm's RD-Daniel Config-XLR platform is a quad chip platform with each
chip having four Neoverse cores and 8GB of RAM attached to it. These
chips are coherently connected over CCIX interface. Add initial support
for this platform.
Change-Id: Ide397344a064a267333aed5e0b58499ee8f8439c
Signed-off-by: Aditya Angadi <aditya.angadi@arm.com>
4 files changed, 84 insertions, 0 deletions
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgXlrAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgXlrAcpiTables.inf index d05f025b..e6bd2039 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgXlrAcpiTables.inf +++ b/Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgXlrAcpiTables.inf @@ -42,12 +42,15 @@ [FixedPcd]
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt
+ gArmPlatformTokenSpaceGuid.PcdCoreCount
+ gArmPlatformTokenSpaceGuid.PcdClusterCount
gArmTokenSpaceGuid.PcdSystemMemoryBase
gArmTokenSpaceGuid.PcdSystemMemorySize
gArmSgiTokenSpaceGuid.PcdDramBlock2Base
gArmSgiTokenSpaceGuid.PcdDramBlock2Size
+ gArmSgiTokenSpaceGuid.PcdChipCount
gArmSgiTokenSpaceGuid.PcdDramBlock1BaseRemote1
gArmSgiTokenSpaceGuid.PcdDramBlock1SizeRemote1
gArmSgiTokenSpaceGuid.PcdDramBlock2BaseRemote1
diff --git a/Platform/ARM/SgiPkg/Include/SgiPlatform.h b/Platform/ARM/SgiPkg/Include/SgiPlatform.h index a9d8d70f..f3714500 100644 --- a/Platform/ARM/SgiPkg/Include/SgiPlatform.h +++ b/Platform/ARM/SgiPkg/Include/SgiPlatform.h @@ -73,6 +73,7 @@ // RD-Daniel Platform Identification values
#define RD_DANIEL_PART_NUM 0x78A
#define RD_DANIEL_CFGM_CONF_ID 0x1
+#define RD_DANIEL_CFGXLR_CONF_ID 0x2
#define SGI_CONFIG_MASK 0x0F
#define SGI_CONFIG_SHIFT 0x1C
diff --git a/Platform/ARM/SgiPkg/RdDanielCfgXlr/RdDanielCfgXlr.dsc b/Platform/ARM/SgiPkg/RdDanielCfgXlr/RdDanielCfgXlr.dsc new file mode 100644 index 00000000..e949fe46 --- /dev/null +++ b/Platform/ARM/SgiPkg/RdDanielCfgXlr/RdDanielCfgXlr.dsc @@ -0,0 +1,70 @@ +#
+# Copyright (c) 2020, ARM Limited. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+
+################################################################################
+#
+# Defines Section - statements that will be processed to create a Makefile.
+#
+################################################################################
+[Defines]
+ PLATFORM_NAME = RdDanielCfgXlr
+ PLATFORM_GUID = 082f1695-b92a-4761-a7e3-f577938cc9eb
+ PLATFORM_VERSION = 0.1
+ DSC_SPECIFICATION = 0x0001001B
+ OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME)
+ SUPPORTED_ARCHITECTURES = AARCH64|ARM
+ BUILD_TARGETS = NOOPT|DEBUG|RELEASE
+ SKUID_IDENTIFIER = DEFAULT
+ FLASH_DEFINITION = Platform/ARM/SgiPkg/SgiPlatform.fdf
+ BOARD_DXE_FV_COMPONENTS = Platform/ARM/SgiPkg/RdDanielCfgXlr/RdDanielCfgXlr.fdf.inc
+ BUILD_NUMBER = 1
+
+# include common definitions from SgiPlatform.dsc
+!include Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
+
+################################################################################
+#
+# Pcd Section - list of all EDK II PCD Entries defined by this Platform
+#
+################################################################################
+
+[PcdsFixedAtBuild.common]
+ # GIC Base Addresses
+ gArmTokenSpaceGuid.PcdGicDistributorBase|0x30000000
+ gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x30140000
+ gArmSgiTokenSpaceGuid.PcdGicSize|0x200000
+
+ # ARM Cores and Clusters
+ gArmPlatformTokenSpaceGuid.PcdCoreCount|1
+ gArmPlatformTokenSpaceGuid.PcdClusterCount|4
+
+ # Number of chips on the platform
+ gArmSgiTokenSpaceGuid.PcdChipCount|4
+
+ # Remote chip memory base and size
+ gArmSgiTokenSpaceGuid.PcdDramBlock1BaseRemote1|0x40080000000
+ gArmSgiTokenSpaceGuid.PcdDramBlock1SizeRemote1|0x80000000
+ gArmSgiTokenSpaceGuid.PcdDramBlock2BaseRemote1|0x48080000000
+ gArmSgiTokenSpaceGuid.PcdDramBlock2SizeRemote1|0x180000000
+
+ gArmSgiTokenSpaceGuid.PcdDramBlock1BaseRemote2|0x80080000000
+ gArmSgiTokenSpaceGuid.PcdDramBlock1SizeRemote2|0x80000000
+ gArmSgiTokenSpaceGuid.PcdDramBlock2BaseRemote2|0x88080000000
+ gArmSgiTokenSpaceGuid.PcdDramBlock2SizeRemote2|0x180000000
+
+ gArmSgiTokenSpaceGuid.PcdDramBlock1BaseRemote3|0xC0080000000
+ gArmSgiTokenSpaceGuid.PcdDramBlock1SizeRemote3|0x80000000
+ gArmSgiTokenSpaceGuid.PcdDramBlock2BaseRemote3|0xC8080000000
+ gArmSgiTokenSpaceGuid.PcdDramBlock2SizeRemote3|0x180000000
+
+################################################################################
+#
+# Components Section - list of all EDK II Modules needed by this Platform
+#
+################################################################################
+
+[Components.common]
+ Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgXlrAcpiTables.inf
diff --git a/Platform/ARM/SgiPkg/RdDanielCfgXlr/RdDanielCfgXlr.fdf.inc b/Platform/ARM/SgiPkg/RdDanielCfgXlr/RdDanielCfgXlr.fdf.inc new file mode 100644 index 00000000..0c50caf6 --- /dev/null +++ b/Platform/ARM/SgiPkg/RdDanielCfgXlr/RdDanielCfgXlr.fdf.inc @@ -0,0 +1,10 @@ +#
+# Copyright (c) 2020, ARM Limited. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+
+# Per-platform additional content of the DXE phase firmware volume
+
+ # ACPI support
+ INF RuleOverride=ACPITABLE Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgXlrAcpiTables.inf
|