summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAditya Angadi <aditya.angadi@arm.com>2020-02-19 18:15:45 +0530
committerThomas Abraham <thomas.abraham@arm.com>2020-04-15 21:22:49 +0530
commit48ce89e2f826bc1db5ab96d9cdfd99b651f92e67 (patch)
tree20c94bda5969e5708b21cb2f358ebbbc3d59d278
parent08311799167ed9dff1cbddefd30393ff300298b8 (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>
-rw-r--r--Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgXlrAcpiTables.inf3
-rw-r--r--Platform/ARM/SgiPkg/Include/SgiPlatform.h1
-rw-r--r--Platform/ARM/SgiPkg/RdDanielCfgXlr/RdDanielCfgXlr.dsc70
-rw-r--r--Platform/ARM/SgiPkg/RdDanielCfgXlr/RdDanielCfgXlr.fdf.inc10
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