From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web12.9218.1639041923161044333 for ; Thu, 09 Dec 2021 01:25:23 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: pierre.gondois@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1B3E91476; Thu, 9 Dec 2021 01:25:15 -0800 (PST) Received: from e126645.nice.arm.com (unknown [10.34.129.54]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 5F3BB3F73B; Thu, 9 Dec 2021 01:25:14 -0800 (PST) From: "PierreGondois" To: devel@edk2.groups.io Cc: Sami Mujawar , Alexei Fedorov Subject: [PATCH v4 0/8] Create a SSDT PCIe generator Date: Thu, 9 Dec 2021 10:24:57 +0100 Message-Id: <20211209092505.1248326-1-Pierre.Gondois@arm.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Pierre Gondois REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3682 As part of the DynamicTablesPkg, add a generator creating a SSDT table describing a PCIe bus. This patch-set also adds new functions to generate AML bytecode in the AmlLib. The changes can be seen at: https://github.com/PierreARM/edk2/tree/1781_C= reate_ssdt_pcie_generator_v3 v4: - Run uncrustify and apply the required formatting. [Pierre] - No other change with v3. [Pierre] v3: - Use ASSERT_EFI_ERROR when possible. [Sami] - Fix typos and add comments. [Pierre] - Add new patch "DynamicTablesPkg: Fix multiple objects parsing". [Pierre] v2: The following patches were modified: - DynamicTablesPkg: AML Code generation for memory ranges - DynamicTablesPkg: SSDT Pci express generator Pierre Gondois (8): DynamicTablesPkg: AML Code generation for memory ranges DynamicTablesPkg: AML Code generation to create a named Package() DynamicTablesPkg: AML Code generation to create a named ResourceTemplate() DynamicTablesPkg: AML Code generation to add _PRT entries DynamicTablesPkg: Add AmlAttachNode() DynamicTablesPkg: Add Pci related objects DynamicTablesPkg: SSDT Pci express generator DynamicTablesPkg: Fix multiple objects parsing DynamicTablesPkg/DynamicTables.dsc.inc | 2 + DynamicTablesPkg/Include/AcpiTableGenerator.h | 5 + .../Include/ArmNameSpaceObjects.h | 86 +- .../Include/Library/AmlLib/AmlLib.h | 413 +++++ .../AcpiSsdtPcieLibArm/SsdtPcieGenerator.c | 1460 +++++++++++++++++ .../AcpiSsdtPcieLibArm/SsdtPcieGenerator.h | 138 ++ .../Arm/AcpiSsdtPcieLibArm/SsdtPcieLibArm.inf | 32 + .../SsdtPcieOscTemplate.asl | 80 + .../Library/Common/AmlLib/Api/AmlApi.c | 36 + .../Common/AmlLib/CodeGen/AmlCodeGen.c | 326 ++++ .../AmlLib/CodeGen/AmlResourceDataCodeGen.c | 951 +++++++++++ .../ConfigurationManagerObjectParser.c | 48 +- 12 files changed, 3568 insertions(+), 9 deletions(-) create mode 100644 DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/= SsdtPcieGenerator.c create mode 100644 DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/= SsdtPcieGenerator.h create mode 100644 DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/= SsdtPcieLibArm.inf create mode 100644 DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/= SsdtPcieOscTemplate.asl -- 2.25.1