From: Pierre Gondois <pierre.gond...@arm.com> The generic HwInfoParserLib provides an interface to parse hardware information stored in certain a data type (e.g.: xml, device tree, ...) and generate objects that can be used by the DynamicTablesPkg framework to generate another hardware description (e.g.: SMBIOS tables, ACPI tables, ...).
This patch-set also implements a FdtHwInfoParserLib, parsing hardware information stored in a device tree. The objects generated by the library have been used ACPI tables. The changes can be seen at: https://github.com/PierreARM/edk2/tree/1787_Implement_FdtHwInfoParser The results of the CI can be seen at: https://github.com/tianocore/edk2/pull/1749 This patch-set is dependent over the following patch-sets: [PATCH v1 00/10] Various DynamicTablesPkg modifications https://edk2.groups.io/g/devel/message/76929 and: [PATCH v1 00/13] Create a SSDT CPU topology generator https://edk2.groups.io/g/devel/message/76941 and: [PATCH v1 0/7] Create a SSDT PCIe generator https://edk2.groups.io/g/devel/message/76958 Pierre Gondois (14): DynamicTablesPkg: Definition for HwInfoParser interface DynamicTablesPkg: FdtHwInfoParser: CM Object descriptor helper DynamicTablesPkg: FdtHwInfoParser: Add FDT utility functions DynamicTablesPkg: FdtHwInfoParser: Add Boot Arch parser DynamicTablesPkg: FdtHwInfoParser: Generic Timer Parser DynamicTablesPkg: FdtHwInfoParser: Add Serial port parser DynamicTablesPkg: FdtHwInfoParser: Add GICC parser DynamicTablesPkg: FdtHwInfoParser: Add GICD parser DynamicTablesPkg: FdtHwInfoParser: Add MSI Frame parser DynamicTablesPkg: FdtHwInfoParser: Add ITS parser DynamicTablesPkg: FdtHwInfoParser: Add GICR parser DynamicTablesPkg: FdtHwInfoParser: Add GIC dispatcher DynamicTablesPkg: FdtHwInfoParser: Add PCI config parser DynamicTablesPkg: Add FdtHwInfoParser library DynamicTablesPkg/DynamicTablesPkg.dec | 3 + DynamicTablesPkg/DynamicTablesPkg.dsc | 3 +- .../Include/Library/HwInfoParserLib.h | 99 ++ .../BootArch/ArmBootArchParser.c | 161 ++++ .../BootArch/ArmBootArchParser.h | 45 + .../FdtHwInfoParserLib/CmObjectDescUtility.c | 305 ++++++ .../FdtHwInfoParserLib/CmObjectDescUtility.h | 131 +++ .../FdtHwInfoParserLib/FdtHwInfoParser.c | 193 ++++ .../FdtHwInfoParserLib/FdtHwInfoParser.h | 63 ++ .../FdtHwInfoParserInclude.h | 17 + .../FdtHwInfoParserLib/FdtHwInfoParserLib.inf | 56 ++ .../Library/FdtHwInfoParserLib/FdtUtility.c | 909 ++++++++++++++++++ .../Library/FdtHwInfoParserLib/FdtUtility.h | 458 +++++++++ .../GenericTimer/ArmGenericTimerParser.c | 254 +++++ .../GenericTimer/ArmGenericTimerParser.h | 66 ++ .../FdtHwInfoParserLib/Gic/ArmGicCParser.c | 762 +++++++++++++++ .../FdtHwInfoParserLib/Gic/ArmGicCParser.h | 67 ++ .../FdtHwInfoParserLib/Gic/ArmGicDParser.c | 171 ++++ .../FdtHwInfoParserLib/Gic/ArmGicDParser.h | 50 + .../FdtHwInfoParserLib/Gic/ArmGicDispatcher.c | 212 ++++ .../FdtHwInfoParserLib/Gic/ArmGicDispatcher.h | 72 ++ .../FdtHwInfoParserLib/Gic/ArmGicItsParser.c | 215 +++++ .../FdtHwInfoParserLib/Gic/ArmGicItsParser.h | 48 + .../Gic/ArmGicMsiFrameParser.c | 214 +++++ .../Gic/ArmGicMsiFrameParser.h | 50 + .../FdtHwInfoParserLib/Gic/ArmGicRParser.c | 237 +++++ .../FdtHwInfoParserLib/Gic/ArmGicRParser.h | 47 + .../Pci/ArmPciConfigSpaceParser.c | 799 +++++++++++++++ .../Pci/ArmPciConfigSpaceParser.h | 142 +++ .../Serial/ArmSerialPortParser.c | 621 ++++++++++++ .../Serial/ArmSerialPortParser.h | 47 + 31 files changed, 6516 insertions(+), 1 deletion(-) create mode 100644 DynamicTablesPkg/Include/Library/HwInfoParserLib.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/BootArch/ArmBootArchParser.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/BootArch/ArmBootArchParser.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/CmObjectDescUtility.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/CmObjectDescUtility.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/FdtHwInfoParser.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/FdtHwInfoParser.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/FdtHwInfoParserInclude.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/FdtHwInfoParserLib.inf create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/FdtUtility.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/FdtUtility.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/GenericTimer/ArmGenericTimerParser.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/GenericTimer/ArmGenericTimerParser.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Gic/ArmGicCParser.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Gic/ArmGicCParser.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Gic/ArmGicDParser.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Gic/ArmGicDParser.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Gic/ArmGicDispatcher.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Gic/ArmGicDispatcher.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Gic/ArmGicItsParser.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Gic/ArmGicItsParser.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Gic/ArmGicMsiFrameParser.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Gic/ArmGicMsiFrameParser.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Gic/ArmGicRParser.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Gic/ArmGicRParser.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Pci/ArmPciConfigSpaceParser.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Pci/ArmPciConfigSpaceParser.h create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Serial/ArmSerialPortParser.c create mode 100644 DynamicTablesPkg/Library/FdtHwInfoParserLib/Serial/ArmSerialPortParser.h -- 2.17.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#76967): https://edk2.groups.io/g/devel/message/76967 Mute This Topic: https://groups.io/mt/83736620/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-