From: Pierre Gondois <pierre.gond...@arm.com> v2: - Update or error handling. [Sami/Pierre] - Various comments. [Sami] and New patches: DynamicTablesPkg: Remove unnecessary includes DynamicTablesPkg: Add missing parameter check DynamicTablesPkg: Add AddSsdtAcpiHeader() DynamicTablesPkg: Add AmlRdSetEndTagChecksum() DynamicTablesPkg: Add AmlSetRdListCheckSum() DynamicTablesPkg: Set EndTag's Checksum if RdList is modified DynamicTablesPkg: Clear pointer in node creation fcts DynamicTablesPkg: Update error handling for node creation
As part of the DynamicTablesPkg, add a generator creating a SSDT table representing a CPU topology. Low Power Idle (LPI) states can also be generated along the CPUs. This patch-set also adds new functions to generate AML bytecode. The changes can be seen at: https://github.com/PierreARM/edk2/tree/1449_Create_ssdt_cpu_topology_generator_v2 Pierre Gondois (21): DynamicTablesPkg: Remove unnecessary includes DynamicTablesPkg: Add missing parameter check DynamicTablesPkg: Add AddSsdtAcpiHeader() DynamicTablesPkg: Add AmlRdSetEndTagChecksum() DynamicTablesPkg: Add AmlSetRdListCheckSum() DynamicTablesPkg: Set EndTag's Checksum if RdList is modified DynamicTablesPkg: Clear pointer in node creation fcts DynamicTablesPkg: Update error handling for node creation DynamicTablesPkg: Make AmlNodeGetIntegerValue public DynamicTablesPkg: AML Code generation for Register() DynamicTablesPkg: AML Code generation for Resource data EndTag DynamicTablesPkg: AML code generation for a Package DynamicTablesPkg: Helper function to compute package length DynamicTablesPkg: AML code generation for a ResourceTemplate DynamicTablesPkg: AML code generation for a Method DynamicTablesPkg: AML code generation to Return a NameString DynamicTablesPkg: AML code generation for a Method returning a NS DynamicTablesPkg: AML code generation for a _LPI object DynamicTablesPkg: AML code generation to add an _LPI state DynamicTablesPkg: Add CM_ARM_LPI_INFO object DynamicTablesPkg: SSDT CPU topology and LPI state generator DynamicTablesPkg/DynamicTables.dsc.inc | 6 + DynamicTablesPkg/Include/AcpiTableGenerator.h | 7 +- .../Include/ArmNameSpaceObjects.h | 68 + .../Include/Library/AmlLib/AmlLib.h | 168 ++ .../Include/Library/TableHelperLib.h | 35 + .../SsdtCmn600Generator.c | 2 - .../SsdtCpuTopologyGenerator.c | 1228 +++++++++++++++ .../SsdtCpuTopologyGenerator.h | 134 ++ .../SsdtCpuTopologyLibArm.inf | 33 + .../SsdtSerialPortGenerator.c | 3 - .../Library/Common/AmlLib/AmlEncoding/Aml.c | 87 +- .../Library/Common/AmlLib/AmlEncoding/Aml.h | 47 +- .../Common/AmlLib/CodeGen/AmlCodeGen.c | 1351 ++++++++++++++++- .../AmlLib/CodeGen/AmlResourceDataCodeGen.c | 210 ++- .../AmlLib/CodeGen/AmlResourceDataCodeGen.h | 92 ++ .../AmlLib/ResourceData/AmlResourceData.c | 33 + .../AmlLib/ResourceData/AmlResourceData.h | 21 + .../Library/Common/AmlLib/Tree/AmlClone.c | 2 - .../Library/Common/AmlLib/Tree/AmlNode.c | 18 +- .../Library/Common/AmlLib/Tree/AmlNode.h | 12 +- .../Common/AmlLib/Tree/AmlNodeInterface.c | 7 + .../Library/Common/AmlLib/Tree/AmlTree.c | 72 +- .../Library/Common/AmlLib/Utils/AmlUtility.c | 79 +- .../Library/Common/AmlLib/Utils/AmlUtility.h | 50 +- .../SsdtSerialPortFixupLib.c | 1 - .../ConfigurationManagerObjectParser.c | 35 + .../Common/TableHelperLib/TableHelper.c | 89 ++ 27 files changed, 3815 insertions(+), 75 deletions(-) create mode 100644 DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtCpuTopologyLibArm/SsdtCpuTopologyGenerator.c create mode 100644 DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtCpuTopologyLibArm/SsdtCpuTopologyGenerator.h create mode 100644 DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtCpuTopologyLibArm/SsdtCpuTopologyLibArm.inf -- 2.17.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#81581): https://edk2.groups.io/g/devel/message/81581 Mute This Topic: https://groups.io/mt/86148191/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-