public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "PierreGondois" <pierre.gondois@arm.com>
To: devel@edk2.groups.io, prabin.ca@arm.com
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Sami Mujawar <sami.mujawar@arm.com>
Subject: Re: [edk2-devel] [edk2-platforms][PATCH V2 4/8] Platform/Sgi: Add ACPI tables for RD-Fremont platform
Date: Mon, 15 Jan 2024 12:10:10 +0100	[thread overview]
Message-ID: <e727923d-fe8a-4c0f-8eac-b2121aebdd59@arm.com> (raw)
In-Reply-To: <20240112154759.1222138-5-prabin.ca@arm.com>



On 1/12/24 16:47, Prabin CA via groups.io wrote:
> From: Shriram K <shriram.k@arm.com>
> 
> RD-Fremont is the next platform in the Arm's reference design platform
> series. This platform includes 32 CPUs but the fixed virtual platform
> (FVP) simulates 16 CPUs of the platform. There is one CPU per cluster in
> the system and so the FVP simulates 16 clusters. In preparation for
> adding support for this platform, add the initial set of ACPI tables and
> reuse existing ACPI tables as applicable to boot a operating system on
> this platform.
> 
> Signed-off-by: Shriram K <shriram.k@arm.com>

I think this should be replaced with: 'Co-authored-by', cf:
- https://gcc.gnu.org/dco.html
- https://edk2.groups.io/g/devel/topic/82627064#74861

Same remark for:
- [PATCH V2 1/8] Platform/Sgi: Update the datatype of PcdSmmuBase from u32 to u64

> Signed-off-by: Prabin CA <prabin.ca@arm.com>
> ---
>   Platform/ARM/SgiPkg/AcpiTables/RdFremontAcpiTables.inf |  73 ++++++++
>   Platform/ARM/SgiPkg/AcpiTables/RdFremont/Dsdt.asl      | 196 ++++++++++++++++++++
>   Platform/ARM/SgiPkg/AcpiTables/RdFremont/Madt.aslc     | 138 ++++++++++++++
>   Platform/ARM/SgiPkg/AcpiTables/RdFremont/Pptt.aslc     | 167 +++++++++++++++++
>   4 files changed, 574 insertions(+)
> 

[snip]

> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdFremont/Madt.aslc b/Platform/ARM/SgiPkg/AcpiTables/RdFremont/Madt.aslc
> new file mode 100644
> index 000000000000..e81ce86ae8fd
> --- /dev/null
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdFremont/Madt.aslc
> @@ -0,0 +1,138 @@
> +/** @file
> +*  Multiple APIC Description Table (MADT)
> +*
> +*  Copyright (c) 2024, Arm Limited. All rights reserved.
> +*
> +*  SPDX-License-Identifier: BSD-2-Clause-Patent
> +*
> +**/
> +
> +#include <Library/AcpiLib.h>
> +#include <Library/ArmLib.h>
> +#include <Library/PcdLib.h>
> +
> +#include "SgiAcpiHeader.h"
> +#include "SgiPlatform.h"
> +
> +#define CORE_CNT   (FixedPcdGet32 (PcdClusterCount) * \
> +                      FixedPcdGet32 (PcdCoreCount))
> +
> +// Multiple APIC Description Table
> +#pragma pack (1)
> +
> +typedef struct {
> +  EFI_ACPI_6_4_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER   Header;
> +  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_MULTIPLE_APIC_DESCRIPTION_TABLE;
> +
> +#pragma pack ()
> +
> +STATIC EFI_ACPI_6_4_MULTIPLE_APIC_DESCRIPTION_TABLE Madt = {
> +  {
> +    ARM_ACPI_HEADER (
> +      EFI_ACPI_6_4_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE,
> +      EFI_ACPI_6_4_MULTIPLE_APIC_DESCRIPTION_TABLE,
> +      EFI_ACPI_6_4_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION
> +    ),
> +    // MADT specific fields
> +    0, // LocalApicAddress
> +    0  // Flags
> +  },
> +  {
> +    // Format: EFI_ACPI_6_4_GICC_STRUCTURE_INIT(GicId, AcpiCpuUid, Mpidr, Flags,
> +    //                                          PmuIrq, GicBase, GicVBase,
> +    //                                          GicHBase, GsivId, GicRBase,
> +    //                                          Efficiency,
> +    //                                          SpeOverflowInterrupt)
> +    // Note: The GIC Structure of the primary CPU must be the first entry
> +    // (see note in 5.2.12.14 GICC Structure of ACPI v6.4).
> +    EFI_ACPI_6_4_GICC_STRUCTURE_INIT( // Neoverse Poseidon core0
> +      0, 0, GET_MPID(0x0, 0x0), EFI_ACPI_6_4_GIC_ENABLED, 23,
> +      FixedPcdGet32 (PcdGicDistributorBase),
> +      0x2c020000, 0x2c010000, 25, 0, 0, 0),

This seems to be generic to all other platforms, so this is just a remark,
but it is curious the GICH/GICV addresses are hard-coded for all platforms.
(Again, this is just a remark, nothing to be changed).

> +    EFI_ACPI_6_4_GICC_STRUCTURE_INIT( // Neoverse Poseidon core1
> +      0, 1, GET_MPID(0x100, 0x0), EFI_ACPI_6_4_GIC_ENABLED, 23,
> +      FixedPcdGet32 (PcdGicDistributorBase),
> +      0x2c020000, 0x2c010000, 25, 0, 0, 0),
> +    EFI_ACPI_6_4_GICC_STRUCTURE_INIT( // Neoverse Poseidon core2
> +      0, 2, GET_MPID(0x200, 0x0), EFI_ACPI_6_4_GIC_ENABLED, 23,
> +      FixedPcdGet32 (PcdGicDistributorBase),
> +      0x2c020000, 0x2c010000, 25, 0, 0, 0),
> +    EFI_ACPI_6_4_GICC_STRUCTURE_INIT( // Neoverse Poseidon core3
> +      0, 3, GET_MPID(0x300, 0x0), EFI_ACPI_6_4_GIC_ENABLED, 23,
> +      FixedPcdGet32 (PcdGicDistributorBase),
> +      0x2c020000, 0x2c010000, 25, 0, 0, 0),

[snip]



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#113815): https://edk2.groups.io/g/devel/message/113815
Mute This Topic: https://groups.io/mt/103685116/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



  reply	other threads:[~2024-01-16  5:56 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-12 15:47 [edk2-devel] [edk2-platforms][PATCH V2 0/8] Platform/Sgi: Add support for RD-Fremont platform Prabin CA
2024-01-12 15:47 ` [edk2-devel] [edk2-platforms][PATCH V2 1/8] Platform/Sgi: Update the datatype of PcdSmmuBase from u32 to u64 Prabin CA
2024-01-12 15:47 ` [edk2-devel] [edk2-platforms][PATCH V2 2/8] Platform/Sgi: Refactor system memory base and size definitions Prabin CA
2024-01-12 15:47 ` [edk2-devel] [edk2-platforms][PATCH V2 3/8] Platform/Sgi: Introduce a flag to enable PCIe support for RD Platforms Prabin CA
2024-01-15 11:10   ` PierreGondois
2024-01-25 18:31     ` Prabin CA
2024-01-12 15:47 ` [edk2-devel] [edk2-platforms][PATCH V2 4/8] Platform/Sgi: Add ACPI tables for RD-Fremont platform Prabin CA
2024-01-15 11:10   ` PierreGondois [this message]
2024-01-25 18:32   ` Prabin CA
2024-01-12 15:47 ` [edk2-devel] [edk2-platforms][PATCH V2 5/8] Platform/Sgi: Add initial support " Prabin CA
2024-01-12 15:47 ` [edk2-devel] [edk2-platforms][PATCH V2 6/8] Platform/Sgi: Extend SMBIOS support for RD-Fremont Prabin CA
2024-01-12 15:47 ` [edk2-devel] [edk2-platforms][PATCH V2 7/8] Platform/Sgi: Low Power Idle States " Prabin CA
2024-01-12 15:47 ` [edk2-devel] [edk2-platforms][PATCH V2 8/8] Platform/Sgi: Add CPPC support for RD-Fremont platform Prabin CA
2024-01-15 11:12 ` [edk2-devel] [edk2-platforms][PATCH V2 0/8] Platform/Sgi: Add " PierreGondois
2024-01-25 18:29   ` Prabin CA

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e727923d-fe8a-4c0f-8eac-b2121aebdd59@arm.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox