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.
Signed-off-by: Aditya Angadi <aditya.ang...@arm.com> --- Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgXlrAcpiTables.inf | 3 + Platform/ARM/SgiPkg/Include/SgiPlatform.h | 1 + Platform/ARM/SgiPkg/RdDanielCfgXlr/RdDanielCfgXlr.dsc | 70 ++++++++++++++++++++ Platform/ARM/SgiPkg/RdDanielCfgXlr/RdDanielCfgXlr.fdf.inc | 10 +++ 4 files changed, 84 insertions(+) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgXlrAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgXlrAcpiTables.inf index d05f025b108c..e6bd2039dd55 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgXlrAcpiTables.inf +++ b/Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgXlrAcpiTables.inf @@ -42,12 +42,15 @@ [Packages] [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 a9d8d70f8667..f371450023b3 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 000000000000..e949fe46447e --- /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 000000000000..0c50caf63860 --- /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 -- 2.17.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#57342): https://edk2.groups.io/g/devel/message/57342 Mute This Topic: https://groups.io/mt/73009402/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-