[edk2-devel] [edk2-platforms][PATCH v2 5/7] Platform/Sgi: Add support for RD-N2-Cfg3 platform

Prabin CA posted 7 patches 2 years, 1 month ago
There is a newer version of this series
[edk2-devel] [edk2-platforms][PATCH v2 5/7] Platform/Sgi: Add support for RD-N2-Cfg3 platform
Posted by Prabin CA 2 years, 1 month ago
The Neoverse RD-N2-Cfg3 platform is a variant of RD-N2 platform with a
different mesh size and GIC ITS count. As part of the initial platform
support, add the corresponding platform and flash description files.
Use PcdPlatformVariant for the RD-N2-Cfg3 platform to specify the
platform variant. RD-N2-Cfg3 has 12 GIC ITS blocks when compared to the
other RD-N2 variants that have 6 GIC ITS blocks.

Signed-off-by: Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com>
Signed-off-by: Prabin CA <prabin.ca@arm.com>
---
 Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.dsc                                     | 58 ++++++++++++++++++++
 Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf                             |  3 +-
 Platform/ARM/SgiPkg/AcpiTables/{RdN2AcpiTables.inf => RdN2Cfg3AcpiTables.inf} | 15 ++---
 Platform/ARM/SgiPkg/AcpiTables/RdN2/Madt.aslc                                 | 14 ++++-
 Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.fdf.inc                                 | 10 ++++
 5 files changed, 88 insertions(+), 12 deletions(-)

diff --git a/Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.dsc b/Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.dsc
new file mode 100644
index 000000000000..88293b236a32
--- /dev/null
+++ b/Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.dsc
@@ -0,0 +1,58 @@
+#
+#  Copyright (c) 2024, 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                  = RdN2Cfg3
+  PLATFORM_GUID                  = b890ba7d-a256-4820-9d3a-655acbb737c9
+  PLATFORM_VERSION               = 0.1
+  DSC_SPECIFICATION              = 0x0001001B
+  OUTPUT_DIRECTORY               = Build/$(PLATFORM_NAME)
+  SUPPORTED_ARCHITECTURES        = AARCH64
+  BUILD_TARGETS                  = NOOPT|DEBUG|RELEASE
+  SKUID_IDENTIFIER               = DEFAULT
+  FLASH_DEFINITION               = Platform/ARM/SgiPkg/SgiPlatform.fdf
+  BOARD_DXE_FV_COMPONENTS        = Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.fdf.inc
+  BUILD_NUMBER                   = 1
+
+# include common definitions from SgiPlatform.dsc
+!include Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
+!include Platform/ARM/SgiPkg/SgiMemoryMap2.dsc.inc
+
+# include common/basic libraries from MdePkg.
+!include MdePkg/MdeLibs.dsc.inc
+
+################################################################################
+#
+# Pcd Section - list of all EDK II PCD Entries defined by this Platform
+#
+################################################################################
+
+[PcdsFixedAtBuild.common]
+  # GIC configurations
+  gArmTokenSpaceGuid.PcdGicDistributorBase|0x30000000
+  gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x30300000
+  gArmSgiTokenSpaceGuid.PcdGicSize|0x400000
+
+  # ARM Cores and Clusters
+  gArmPlatformTokenSpaceGuid.PcdCoreCount|1
+  gArmPlatformTokenSpaceGuid.PcdClusterCount|16
+
+  # RdN2Cfg3 is the third variant from RdN2 Platform
+  gArmSgiTokenSpaceGuid.PcdPlatformVariant|3
+
+################################################################################
+#
+# Components Section - list of all EDK II Modules needed by this Platform
+#
+################################################################################
+
+[Components.common]
+  Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg3AcpiTables.inf
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
index 8025ef58171b..afc38385c051 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
@@ -1,7 +1,7 @@
 ## @file
 #  ACPI table data and ASL sources required to boot the platform.
 #
-#  Copyright (c) 2020 - 2023, Arm Ltd. All rights reserved.
+#  Copyright (c) 2020 - 2024, Arm Ltd. All rights reserved.
 #
 #  SPDX-License-Identifier: BSD-2-Clause-Patent
 #
@@ -67,6 +67,7 @@ [FixedPcd]
   gArmSgiTokenSpaceGuid.PcdMaxAddressBitsPerChip
   gArmSgiTokenSpaceGuid.PcdOscLpiEnable
   gArmSgiTokenSpaceGuid.PcdOscCppcEnable
+  gArmSgiTokenSpaceGuid.PcdPlatformVariant
   gArmSgiTokenSpaceGuid.PcdSp804DualTimerBaseAddress
   gArmSgiTokenSpaceGuid.PcdSp804DualTimerSize
   gArmSgiTokenSpaceGuid.PcdSp804DualTimerInterrupt
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg3AcpiTables.inf
similarity index 90%
copy from Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
copy to Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg3AcpiTables.inf
index 8025ef58171b..a703d5a994f7 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg3AcpiTables.inf
@@ -1,7 +1,7 @@
 ## @file
 #  ACPI table data and ASL sources required to boot the platform.
 #
-#  Copyright (c) 2020 - 2023, Arm Ltd. All rights reserved.
+#  Copyright (c) 2024, Arm Ltd. All rights reserved.
 #
 #  SPDX-License-Identifier: BSD-2-Clause-Patent
 #
@@ -9,7 +9,7 @@
 
 [Defines]
   INF_VERSION                    = 0x0001001A
-  BASE_NAME                      = RdN2AcpiTables
+  BASE_NAME                      = RdN2Cfg3AcpiTables
   FILE_GUID                      = c712719a-0aaf-438c-9cdd-35ab4d60207d  # gArmSgiAcpiTablesGuid
   MODULE_TYPE                    = USER_DEFINED
   VERSION_STRING                 = 1.0
@@ -18,16 +18,13 @@ [Sources]
   Dbg2.aslc
   Fadt.aslc
   Gtdt.aslc
-  Iort.aslc
-  Mcfg.aslc
   RdN2/Dsdt.asl
   RdN2/Madt.aslc
   RdN2/Pptt.aslc
   Spcr.aslc
-  Ssdt.asl
+  SsdtRos.asl
   SsdtEvents.asl
   SsdtIoVirtSocExp.asl
-  SsdtRos.asl
   SsdtRosVirtioP9.asl
 
 [Packages]
@@ -56,17 +53,17 @@ [FixedPcd]
   gArmTokenSpaceGuid.PcdPciBusMin
   gArmTokenSpaceGuid.PcdPciBusMax
 
-  gArmSgiTokenSpaceGuid.PcdChipCount
   gArmSgiTokenSpaceGuid.PcdGpioController0BaseAddress
   gArmSgiTokenSpaceGuid.PcdGpioController0Size
   gArmSgiTokenSpaceGuid.PcdGpioController0Interrupt
   gArmSgiTokenSpaceGuid.PcdGtFrame0Gsiv
   gArmSgiTokenSpaceGuid.PcdGtFrame1Gsiv
+  gArmSgiTokenSpaceGuid.PcdOscLpiEnable
+  gArmSgiTokenSpaceGuid.PcdOscCppcEnable
   gArmSgiTokenSpaceGuid.PcdIoVirtSocExpBlk0Base
   gArmSgiTokenSpaceGuid.PcdIoVirtSocExpBlkUartEnable
   gArmSgiTokenSpaceGuid.PcdMaxAddressBitsPerChip
-  gArmSgiTokenSpaceGuid.PcdOscLpiEnable
-  gArmSgiTokenSpaceGuid.PcdOscCppcEnable
+  gArmSgiTokenSpaceGuid.PcdPlatformVariant
   gArmSgiTokenSpaceGuid.PcdSp804DualTimerBaseAddress
   gArmSgiTokenSpaceGuid.PcdSp804DualTimerSize
   gArmSgiTokenSpaceGuid.PcdSp804DualTimerInterrupt
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2/Madt.aslc b/Platform/ARM/SgiPkg/AcpiTables/RdN2/Madt.aslc
index cdf8b3f2e953..5fba3fa7d020 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2/Madt.aslc
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2/Madt.aslc
@@ -6,7 +6,7 @@
   CPU interface, redistributor, distributor and ITS blocks on the Rd-N2 platform
   is included in this table.
 
-  Copyright (c) 2020 - 2022, Arm Limited. All rights reserved.
+  Copyright (c) 2020 - 2024, Arm Limited. All rights reserved.
 
   SPDX-License-Identifier: BSD-2-Clause-Patent
 
@@ -23,6 +23,8 @@
 #define CORE_CNT   (FixedPcdGet32 (PcdClusterCount) * \
                       FixedPcdGet32 (PcdCoreCount))
 
+#define ITS_CNT ((FixedPcdGet32(PcdPlatformVariant) == 3) ? 12 : 6)
+
 // Multiple APIC Description Table
 #pragma pack (1)
 
@@ -31,7 +33,7 @@ typedef struct {
   EFI_ACPI_6_4_GIC_STRUCTURE                            GicInterfaces[CORE_CNT];
   EFI_ACPI_6_4_GIC_DISTRIBUTOR_STRUCTURE                GicDistributor;
   EFI_ACPI_6_4_GICR_STRUCTURE                           GicRedistributor;
-  EFI_ACPI_6_4_GIC_ITS_STRUCTURE                        GicIts[6];
+  EFI_ACPI_6_4_GIC_ITS_STRUCTURE                        GicIts[ITS_CNT];
 } EFI_ACPI_6_4_MULTIPLE_APIC_DESCRIPTION_TABLE;
 
 #pragma pack ()
@@ -134,6 +136,14 @@ STATIC EFI_ACPI_6_4_MULTIPLE_APIC_DESCRIPTION_TABLE Madt = {
     EFI_ACPI_6_4_GIC_ITS_INIT(3, 0x30100000),
     EFI_ACPI_6_4_GIC_ITS_INIT(4, 0x30140000),
     EFI_ACPI_6_4_GIC_ITS_INIT(5, 0x30180000),
+#if (FixedPcdGet32 (PcdPlatformVariant) == 3)
+    EFI_ACPI_6_4_GIC_ITS_INIT(6, 0x301C0000),
+    EFI_ACPI_6_4_GIC_ITS_INIT(7, 0x30200000),
+    EFI_ACPI_6_4_GIC_ITS_INIT(8, 0x30240000),
+    EFI_ACPI_6_4_GIC_ITS_INIT(9, 0x30280000),
+    EFI_ACPI_6_4_GIC_ITS_INIT(10, 0x302C0000),
+    EFI_ACPI_6_4_GIC_ITS_INIT(11, 0x30180000),
+#endif
   },
 };
 
diff --git a/Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.fdf.inc b/Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.fdf.inc
new file mode 100644
index 000000000000..77288ab1ad93
--- /dev/null
+++ b/Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.fdf.inc
@@ -0,0 +1,10 @@
+#
+#  Copyright (c) 2024, 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/RdN2Cfg3AcpiTables.inf
-- 
2.34.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#113294): https://edk2.groups.io/g/devel/message/113294
Mute This Topic: https://groups.io/mt/103544573/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms][PATCH v2 5/7] Platform/Sgi: Add support for RD-N2-Cfg3 platform
Posted by levi.yun 2 years, 1 month ago
Reviewed-by: levi.yun <yeoreum.yun@arm.com>

On 05/01/2024 15:38, Prabin CA via groups.io wrote:
> The Neoverse RD-N2-Cfg3 platform is a variant of RD-N2 platform with a
> different mesh size and GIC ITS count. As part of the initial platform
> support, add the corresponding platform and flash description files.
> Use PcdPlatformVariant for the RD-N2-Cfg3 platform to specify the
> platform variant. RD-N2-Cfg3 has 12 GIC ITS blocks when compared to the
> other RD-N2 variants that have 6 GIC ITS blocks.
>
> Signed-off-by: Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com>
> Signed-off-by: Prabin CA <prabin.ca@arm.com>
> ---
>   Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.dsc                                     | 58 ++++++++++++++++++++
>   Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf                             |  3 +-
>   Platform/ARM/SgiPkg/AcpiTables/{RdN2AcpiTables.inf => RdN2Cfg3AcpiTables.inf} | 15 ++---
>   Platform/ARM/SgiPkg/AcpiTables/RdN2/Madt.aslc                                 | 14 ++++-
>   Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.fdf.inc                                 | 10 ++++
>   5 files changed, 88 insertions(+), 12 deletions(-)
>
> diff --git a/Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.dsc b/Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.dsc
> new file mode 100644
> index 000000000000..88293b236a32
> --- /dev/null
> +++ b/Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.dsc
> @@ -0,0 +1,58 @@
> +#
> +#  Copyright (c) 2024, 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                  = RdN2Cfg3
> +  PLATFORM_GUID                  = b890ba7d-a256-4820-9d3a-655acbb737c9
> +  PLATFORM_VERSION               = 0.1
> +  DSC_SPECIFICATION              = 0x0001001B
> +  OUTPUT_DIRECTORY               = Build/$(PLATFORM_NAME)
> +  SUPPORTED_ARCHITECTURES        = AARCH64
> +  BUILD_TARGETS                  = NOOPT|DEBUG|RELEASE
> +  SKUID_IDENTIFIER               = DEFAULT
> +  FLASH_DEFINITION               = Platform/ARM/SgiPkg/SgiPlatform.fdf
> +  BOARD_DXE_FV_COMPONENTS        = Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.fdf.inc
> +  BUILD_NUMBER                   = 1
> +
> +# include common definitions from SgiPlatform.dsc
> +!include Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
> +!include Platform/ARM/SgiPkg/SgiMemoryMap2.dsc.inc
> +
> +# include common/basic libraries from MdePkg.
> +!include MdePkg/MdeLibs.dsc.inc
> +
> +################################################################################
> +#
> +# Pcd Section - list of all EDK II PCD Entries defined by this Platform
> +#
> +################################################################################
> +
> +[PcdsFixedAtBuild.common]
> +  # GIC configurations
> +  gArmTokenSpaceGuid.PcdGicDistributorBase|0x30000000
> +  gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x30300000
> +  gArmSgiTokenSpaceGuid.PcdGicSize|0x400000
> +
> +  # ARM Cores and Clusters
> +  gArmPlatformTokenSpaceGuid.PcdCoreCount|1
> +  gArmPlatformTokenSpaceGuid.PcdClusterCount|16
> +
> +  # RdN2Cfg3 is the third variant from RdN2 Platform
> +  gArmSgiTokenSpaceGuid.PcdPlatformVariant|3
> +
> +################################################################################
> +#
> +# Components Section - list of all EDK II Modules needed by this Platform
> +#
> +################################################################################
> +
> +[Components.common]
> +  Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg3AcpiTables.inf
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
> index 8025ef58171b..afc38385c051 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
> @@ -1,7 +1,7 @@
>   ## @file
>   #  ACPI table data and ASL sources required to boot the platform.
>   #
> -#  Copyright (c) 2020 - 2023, Arm Ltd. All rights reserved.
> +#  Copyright (c) 2020 - 2024, Arm Ltd. All rights reserved.
>   #
>   #  SPDX-License-Identifier: BSD-2-Clause-Patent
>   #
> @@ -67,6 +67,7 @@ [FixedPcd]
>     gArmSgiTokenSpaceGuid.PcdMaxAddressBitsPerChip
>     gArmSgiTokenSpaceGuid.PcdOscLpiEnable
>     gArmSgiTokenSpaceGuid.PcdOscCppcEnable
> +  gArmSgiTokenSpaceGuid.PcdPlatformVariant
>     gArmSgiTokenSpaceGuid.PcdSp804DualTimerBaseAddress
>     gArmSgiTokenSpaceGuid.PcdSp804DualTimerSize
>     gArmSgiTokenSpaceGuid.PcdSp804DualTimerInterrupt
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg3AcpiTables.inf
> similarity index 90%
> copy from Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
> copy to Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg3AcpiTables.inf
> index 8025ef58171b..a703d5a994f7 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg3AcpiTables.inf
> @@ -1,7 +1,7 @@
>   ## @file
>   #  ACPI table data and ASL sources required to boot the platform.
>   #
> -#  Copyright (c) 2020 - 2023, Arm Ltd. All rights reserved.
> +#  Copyright (c) 2024, Arm Ltd. All rights reserved.
>   #
>   #  SPDX-License-Identifier: BSD-2-Clause-Patent
>   #
> @@ -9,7 +9,7 @@
>
>   [Defines]
>     INF_VERSION                    = 0x0001001A
> -  BASE_NAME                      = RdN2AcpiTables
> +  BASE_NAME                      = RdN2Cfg3AcpiTables
>     FILE_GUID                      = c712719a-0aaf-438c-9cdd-35ab4d60207d  # gArmSgiAcpiTablesGuid
>     MODULE_TYPE                    = USER_DEFINED
>     VERSION_STRING                 = 1.0
> @@ -18,16 +18,13 @@ [Sources]
>     Dbg2.aslc
>     Fadt.aslc
>     Gtdt.aslc
> -  Iort.aslc
> -  Mcfg.aslc
>     RdN2/Dsdt.asl
>     RdN2/Madt.aslc
>     RdN2/Pptt.aslc
>     Spcr.aslc
> -  Ssdt.asl
> +  SsdtRos.asl
>     SsdtEvents.asl
>     SsdtIoVirtSocExp.asl
> -  SsdtRos.asl
>     SsdtRosVirtioP9.asl
>
>   [Packages]
> @@ -56,17 +53,17 @@ [FixedPcd]
>     gArmTokenSpaceGuid.PcdPciBusMin
>     gArmTokenSpaceGuid.PcdPciBusMax
>
> -  gArmSgiTokenSpaceGuid.PcdChipCount
>     gArmSgiTokenSpaceGuid.PcdGpioController0BaseAddress
>     gArmSgiTokenSpaceGuid.PcdGpioController0Size
>     gArmSgiTokenSpaceGuid.PcdGpioController0Interrupt
>     gArmSgiTokenSpaceGuid.PcdGtFrame0Gsiv
>     gArmSgiTokenSpaceGuid.PcdGtFrame1Gsiv
> +  gArmSgiTokenSpaceGuid.PcdOscLpiEnable
> +  gArmSgiTokenSpaceGuid.PcdOscCppcEnable
>     gArmSgiTokenSpaceGuid.PcdIoVirtSocExpBlk0Base
>     gArmSgiTokenSpaceGuid.PcdIoVirtSocExpBlkUartEnable
>     gArmSgiTokenSpaceGuid.PcdMaxAddressBitsPerChip
> -  gArmSgiTokenSpaceGuid.PcdOscLpiEnable
> -  gArmSgiTokenSpaceGuid.PcdOscCppcEnable
> +  gArmSgiTokenSpaceGuid.PcdPlatformVariant
>     gArmSgiTokenSpaceGuid.PcdSp804DualTimerBaseAddress
>     gArmSgiTokenSpaceGuid.PcdSp804DualTimerSize
>     gArmSgiTokenSpaceGuid.PcdSp804DualTimerInterrupt
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2/Madt.aslc b/Platform/ARM/SgiPkg/AcpiTables/RdN2/Madt.aslc
> index cdf8b3f2e953..5fba3fa7d020 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2/Madt.aslc
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2/Madt.aslc
> @@ -6,7 +6,7 @@
>     CPU interface, redistributor, distributor and ITS blocks on the Rd-N2 platform
>     is included in this table.
>
> -  Copyright (c) 2020 - 2022, Arm Limited. All rights reserved.
> +  Copyright (c) 2020 - 2024, Arm Limited. All rights reserved.
>
>     SPDX-License-Identifier: BSD-2-Clause-Patent
>
> @@ -23,6 +23,8 @@
>   #define CORE_CNT   (FixedPcdGet32 (PcdClusterCount) * \
>                         FixedPcdGet32 (PcdCoreCount))
>
> +#define ITS_CNT ((FixedPcdGet32(PcdPlatformVariant) == 3) ? 12 : 6)
> +
>   // Multiple APIC Description Table
>   #pragma pack (1)
>
> @@ -31,7 +33,7 @@ typedef struct {
>     EFI_ACPI_6_4_GIC_STRUCTURE                            GicInterfaces[CORE_CNT];
>     EFI_ACPI_6_4_GIC_DISTRIBUTOR_STRUCTURE                GicDistributor;
>     EFI_ACPI_6_4_GICR_STRUCTURE                           GicRedistributor;
> -  EFI_ACPI_6_4_GIC_ITS_STRUCTURE                        GicIts[6];
> +  EFI_ACPI_6_4_GIC_ITS_STRUCTURE                        GicIts[ITS_CNT];
>   } EFI_ACPI_6_4_MULTIPLE_APIC_DESCRIPTION_TABLE;
>
>   #pragma pack ()
> @@ -134,6 +136,14 @@ STATIC EFI_ACPI_6_4_MULTIPLE_APIC_DESCRIPTION_TABLE Madt = {
>       EFI_ACPI_6_4_GIC_ITS_INIT(3, 0x30100000),
>       EFI_ACPI_6_4_GIC_ITS_INIT(4, 0x30140000),
>       EFI_ACPI_6_4_GIC_ITS_INIT(5, 0x30180000),
> +#if (FixedPcdGet32 (PcdPlatformVariant) == 3)
> +    EFI_ACPI_6_4_GIC_ITS_INIT(6, 0x301C0000),
> +    EFI_ACPI_6_4_GIC_ITS_INIT(7, 0x30200000),
> +    EFI_ACPI_6_4_GIC_ITS_INIT(8, 0x30240000),
> +    EFI_ACPI_6_4_GIC_ITS_INIT(9, 0x30280000),
> +    EFI_ACPI_6_4_GIC_ITS_INIT(10, 0x302C0000),
> +    EFI_ACPI_6_4_GIC_ITS_INIT(11, 0x30180000),
> +#endif
>     },
>   };
>
> diff --git a/Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.fdf.inc b/Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.fdf.inc
> new file mode 100644
> index 000000000000..77288ab1ad93
> --- /dev/null
> +++ b/Platform/ARM/SgiPkg/RdN2Cfg3/RdN2Cfg3.fdf.inc
> @@ -0,0 +1,10 @@
> +#
> +#  Copyright (c) 2024, 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/RdN2Cfg3AcpiTables.inf

IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#113380): https://edk2.groups.io/g/devel/message/113380
Mute This Topic: https://groups.io/mt/103544573/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-