This patch series updates the configuration manager protocol
API to allow for configuration managers that dynamically allocate
memory when servicing calls from the Dynamic Tables framework.
Helper methods are provided in TableHelperLib to ensure
backwards compatibility with configuration managers that
do not allocate the memory that is provided to the caller.
Additional methods are provided to reduce the difficulty of
developing Dynamic Tables extensions and Configuration Managers.
The Dynamic Tables framework is simplified to use the new revision
of the protocol, while retaining backwards compatbility.
The refactoring was tested using the AcpiViewApp and the
Configuration Manager that is included in the JunoPkg, running
in the SbsaQemu platform. The resulting dump of the ACPI tables
is identical between a build that includes these patches and
a build without this patchset.
Cc: Sami Mujawar <Sami.Mujawar@arm.com>
Cc: Alexei Fedorov <Alexei.Fedorov@arm.com>
Signed-off-by: Tomas Pilar <tomas@nuviainc.com>
--
Tomas Pilar (8):
DynamicTablesPkg: Include BaseStackCheckLib
DynamicTablesPkg: Fold Namespaces into CmObjectId Enums
DynamicTablesPkg: Add ConfigurationManagerDumpApp
DynamicTablesPkg: Update ConfigurationManagerProtocol
DynamicTablesPkg: Add CfgMgrProtocol helper functions
DynamicTablesPkg/TableHelperLib: User friendly strings
DynamicTablesPkg: Simplify AddAcpiHeader, CfgMgrGetInfo
DynamicTablesPkg: Remove GET_OBJECT_LIST
.../ConfigurationManagerDumpApp.c | 69 ++
.../ConfigurationManagerDumpApp.inf | 41 +
.../DynamicTableFactoryDxe.c | 1 -
.../DynamicTableManagerDxe.c | 54 +-
DynamicTablesPkg/DynamicTablesPkg.dsc | 7 +
.../Include/ArmNameSpaceObjects.h | 3 +-
.../Include/ConfigurationManagerHelper.h | 126 --
.../Include/ConfigurationManagerNameSpace.h | 43 +
.../Include/ConfigurationManagerObject.h | 57 +-
.../Include/Library/TableHelperLib.h | 205 +++-
.../Protocol/ConfigurationManagerProtocol.h | 83 +-
.../Include/StandardNameSpaceObjects.h | 7 +-
.../Acpi/Arm/AcpiDbg2LibArm/Dbg2Generator.c | 44 +-
.../Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c | 211 +---
.../Acpi/Arm/AcpiGtdtLibArm/GtdtGenerator.c | 242 ++--
.../Acpi/Arm/AcpiIortLibArm/IortGenerator.c | 1066 +++++------------
.../Acpi/Arm/AcpiMadtLibArm/MadtGenerator.c | 312 ++---
.../Acpi/Arm/AcpiMcfgLibArm/McfgGenerator.c | 108 +-
.../Acpi/Arm/AcpiPpttLibArm/PpttGenerator.c | 295 ++---
.../Acpi/Arm/AcpiRawLibArm/RawGenerator.c | 1 -
.../Acpi/Arm/AcpiSpcrLibArm/SpcrGenerator.c | 45 +-
.../Acpi/Arm/AcpiSratLibArm/SratGenerator.c | 447 +++----
.../ConfigurationObjectStrings.c | 92 ++
.../Common/TableHelperLib/TableHelper.c | 468 ++++++--
.../Common/TableHelperLib/TableHelperLib.inf | 10 +-
25 files changed, 1766 insertions(+), 2271 deletions(-)
create mode 100644 DynamicTablesPkg/Applications/ConfigurationManagerDumpApp/ConfigurationManagerDumpApp.c
create mode 100644 DynamicTablesPkg/Applications/ConfigurationManagerDumpApp/ConfigurationManagerDumpApp.inf
delete mode 100644 DynamicTablesPkg/Include/ConfigurationManagerHelper.h
create mode 100644 DynamicTablesPkg/Include/ConfigurationManagerNameSpace.h
create mode 100644 DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationObjectStrings.c
--
2.25.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#63579): https://edk2.groups.io/g/devel/message/63579
Mute This Topic: https://groups.io/mt/75910561/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-