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]
-=-=-=-=-=-=-=-=-=-=-=-
next prev parent 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