Browse Source

Platform/ARM/SgiPkg: Add initial support for RD-Daniel Config-M platform

Arm's RD-Daniel Config-M platform is built using 16 Neoverse cores and
connected to 8GB of RAM. Add initial platform support for this platform.

Signed-off-by: Aditya Angadi <aditya.angadi@arm.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@arm.com>
Aditya Angadi 4 years ago
parent
commit
f1bb8f463f

+ 4 - 0
Platform/ARM/SgiPkg/Include/SgiPlatform.h

@@ -70,6 +70,10 @@
 #define RD_N1_EDGE_CONF_ID                        0x1
 #define RD_E1_EDGE_CONF_ID                        0x2
 
+// RD-Daniel Platform Identification values
+#define RD_DANIEL_PART_NUM                        0x78A
+#define RD_DANIEL_CFGM_CONF_ID                    0x1
+
 #define SGI_CONFIG_MASK                           0x0F
 #define SGI_CONFIG_SHIFT                          0x1C
 #define SGI_PART_NUM_MASK                         0xFFF

+ 51 - 0
Platform/ARM/SgiPkg/RdDanielCfgM/RdDanielCfgM.dsc

@@ -0,0 +1,51 @@
+#
+#  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                  = RdDanielCfgM
+  PLATFORM_GUID                  = d301ac4e-0828-4cef-b754-34ca9b6781b5
+  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/RdDanielCfgM/RdDanielCfgM.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|16
+
+################################################################################
+#
+# Components Section - list of all EDK II Modules needed by this Platform
+#
+################################################################################
+
+[Components.common]
+  Platform/ARM/SgiPkg/AcpiTables/RdDanielCfgMAcpiTables.inf

+ 10 - 0
Platform/ARM/SgiPkg/RdDanielCfgM/RdDanielCfgM.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/RdDanielCfgMAcpiTables.inf