summaryrefslogtreecommitdiff
path: root/DynamicTablesPkg
diff options
context:
space:
mode:
authorGirish Mahadevan <gmahadevan@nvidia.com>2026-04-20 21:50:31 +0000
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2026-07-17 11:12:25 +0000
commit7ac27b187e6063bef2023498da80396ff31467f6 (patch)
tree0aabf0d2cb8a0fdb60e653d51dece1df71cd7fad /DynamicTablesPkg
parent2fc0e060efc25a2b9dd24bfc5844bf18e33b999e (diff)
downloadedk2-7ac27b187e6063bef2023498da80396ff31467f6.tar.gz
edk2-7ac27b187e6063bef2023498da80396ff31467f6.zip
DynamicTablesPkg: Add System Information CM object and parser
Add EArchCommonObjSystemInfo to ArchCommonNameSpaceObjects.h and a corresponding parser entry in ConfigurationManagerObjectParser.c. Signed-off-by: Girish Mahadevan <gmahadevan@nvidia.com>
Diffstat (limited to 'DynamicTablesPkg')
-rw-r--r--DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h28
-rw-r--r--DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c180
2 files changed, 142 insertions, 66 deletions
diff --git a/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h b/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h
index 759dedc03b..da543b8495 100644
--- a/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h
+++ b/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h
@@ -93,6 +93,7 @@ typedef enum ArchCommonObjectID {
EArchCommonObjMemoryChannelInfo, ///< 64 - Memory Channel Info
EArchCommonObjMemoryChannelDevice, ///< 65 - Memory Channel Device Info
EArchCommonObjProcessorSpecificBlockInfo, ///< 66 - Processor specific data Info
+ EArchCommonObjSystemInfo, ///< 67 - System Info
EArchCommonObjMax
} EARCH_COMMON_OBJECT_ID;
@@ -1727,4 +1728,31 @@ typedef struct CmArchCommonProcessorSpecificBlockInfo {
CM_OBJECT_TOKEN ArchProcessorSpecificDataToken;
} CM_ARCH_COMMON_PROCESSOR_SPECIFIC_BLOCK_INFO;
+/** A structure that describes System Information.
+
+ SMBIOS Specification v3.9.0 Type 1
+
+ ID: EArchCommonObjSystemInfo
+**/
+typedef struct CmArchCommonSystemInfo {
+ /// CM Object Token uniquely identifying this System Information entry.
+ CM_OBJECT_TOKEN SystemInfoToken;
+ /// Manufacturer of the system.
+ CHAR8 Manufacturer[SMBIOS_MAX_STRING_SIZE];
+ /// Product name of the system.
+ CHAR8 ProductName[SMBIOS_MAX_STRING_SIZE];
+ /// Version of the system.
+ CHAR8 Version[SMBIOS_MAX_STRING_SIZE];
+ /// Serial number of the system.
+ CHAR8 SerialNum[SMBIOS_MAX_STRING_SIZE];
+ /// Universal unique ID of the system.
+ GUID Uuid;
+ /// Identifies the event that caused the system to power up.
+ UINT8 WakeUpType;
+ /// SKU number of the system.
+ CHAR8 SkuNum[SMBIOS_MAX_STRING_SIZE];
+ /// Family that the system belongs to.
+ CHAR8 Family[SMBIOS_MAX_STRING_SIZE];
+} CM_ARCH_COMMON_SYSTEM_INFO;
+
#pragma pack()
diff --git a/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c b/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c
index 7b3f612866..77b94121f3 100644
--- a/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c
+++ b/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c
@@ -44,6 +44,15 @@ PrintChars (
STATIC
VOID
EFIAPI
+PrintGuid (
+ CONST CHAR8 *Format,
+ UINT8 *Ptr,
+ UINT32 Length
+ );
+
+STATIC
+VOID
+EFIAPI
HexDump (
CONST CHAR8 *Format,
UINT8 *Ptr,
@@ -1320,76 +1329,92 @@ STATIC CONST CM_OBJ_PARSER CmArchCommonSystemResetInfoParser[] = {
{ "Timeout", sizeof (UINT16), "0x%x", NULL },
};
+/** A parser for EArchCommonObjSystemInfo.
+*/
+STATIC CONST CM_OBJ_PARSER CmArchCommonSystemInfoParser[] = {
+ { "SystemInfoToken", sizeof (CM_OBJECT_TOKEN), "0x%p", NULL },
+ { "Manufacturer", SMBIOS_MAX_STRING_SIZE, NULL, PrintString },
+ { "ProductName", SMBIOS_MAX_STRING_SIZE, NULL, PrintString },
+ { "Version", SMBIOS_MAX_STRING_SIZE, NULL, PrintString },
+ { "SerialNum", SMBIOS_MAX_STRING_SIZE, NULL, PrintString },
+ { "Uuid", sizeof (GUID), NULL, PrintGuid },
+ { "WakeUpType", sizeof (UINT8), "0x%x", NULL },
+ { "SkuNum", SMBIOS_MAX_STRING_SIZE, NULL, PrintString },
+ { "Family", SMBIOS_MAX_STRING_SIZE, NULL, PrintString },
+};
+
/** A parser for Arch Common namespace objects.
*/
STATIC CONST CM_OBJ_PARSER_ARRAY ArchCommonNamespaceObjectParser[] = {
CM_PARSER_ADD_OBJECT_RESERVED (EArchCommonObjReserved),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPowerManagementProfileInfo, CmArchCommonPowerManagementProfileInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjSerialPortInfo, CmArchCommonSerialPortInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjConsolePortInfo, CmArchCommonSerialPortInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjSerialDebugPortInfo, CmArchCommonSerialPortInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjHypervisorVendorIdentity, CmArchCommonHypervisorVendorIdentityParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjFixedFeatureFlags, CmArchCommonFixedFeatureFlagsParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjCmRef, CmArchCommonObjRefParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPciConfigSpaceInfo, CmArchCommonPciConfigSpaceInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPciAddressMapInfo, CmArchCommonPciAddressMapInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPciInterruptMapInfo, CmArchCommonPciInterruptMapInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryAffinityInfo, CmArchCommonMemoryAffinityInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjDeviceHandleAcpi, CmArchCommonDeviceHandleAcpiParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjDeviceHandlePci, CmArchCommonDeviceHandlePciParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjGenericInitiatorAffinityInfo, CmArchCommonGenericInitiatorAffinityInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjLpiInfo, CmArchCommonLpiInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjProcHierarchyInfo, CmArchCommonProcHierarchyInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjCacheInfo, CmArchCommonCacheInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjCpcInfo, CmArchCommonCpcInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPccSubspaceType0Info, CmArchCommonPccSubspaceType0InfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPccSubspaceType1Info, CmArchCommonPccSubspaceType1InfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPccSubspaceType2Info, CmArchCommonPccSubspaceType2InfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPccSubspaceType3Info, CmArchCommonPccSubspaceType34InfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPccSubspaceType4Info, CmArchCommonPccSubspaceType34InfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPccSubspaceType5Info, CmArchCommonPccSubspaceType5InfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPsdInfo, CmArchCommonPsdInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjTpm2InterfaceInfo, CmArchCommonTpm2InterfaceInfo),
- CM_PARSER_ADD_OBJECT (EArchCommonObjSpmiInterfaceInfo, CmArchCommonSpmiInterfaceInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjSpmiInterruptDeviceInfo, CmArchCommonSpmiInterruptDeviceInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjCstInfo, CmArchCommonCstInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjCsdInfo, CmArchCommonCsdInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPctInfo, CmArchCommonPctInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPssInfo, CmArchCommonPssInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPpcInfo, CmArchCommonPpcInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjStaInfo, CmArchCommonStaInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryRangeDescriptor, CmArchCommonObjMemoryRangeDescriptor),
- CM_PARSER_ADD_OBJECT (EArchCommonObjGenericDbg2DeviceInfo, CmArchCommonObjDbg2DeviceInfo),
- CM_PARSER_ADD_OBJECT (EArchCommonObjCxlHostBridgeInfo, CmArchCommonObjCxlHostBridgeInfo),
- CM_PARSER_ADD_OBJECT (EArchCommonObjCxlFixedMemoryWindowInfo, CmArchCommonObjCxlFixedMemoryWindowInfo),
- CM_PARSER_ADD_OBJECT (EArchCommonObjProximityDomainInfo, CmArchCommonProximityDomainInfo),
- CM_PARSER_ADD_OBJECT (EArchCommonObjProximityDomainRelationInfo, CmArchCommonProximityDomainRelationInfo),
- CM_PARSER_ADD_OBJECT (EArchCommonObjSystemLocalityInfo, CmArchCommonSystemLocalityInfo),
- CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryProximityDomainAttrInfo,CmArchCommonMemoryProximityDomainAttrInfo),
- CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryLatBwInfo, CmArchCommonMemoryLatBwInfo),
- CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryCacheInfo, CmArchCommonMemoryCacheInfo),
- CM_PARSER_ADD_OBJECT (EArchCommonObjSpcrInfo, CmArchCommonObjSpcrInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjTpm2DeviceInfo, CmArchCommonObjTpm2DeviceInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjMcfgPciConfigSpaceInfo, CmArchCommonPciConfigSpaceInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPciRootPortInfo, CmArchCommonObjPciRootPortInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjErrSourcePciRootPortInfo, CmArchCommonObjErrSourcePciRootPortInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjErrSourcePciDeviceInfo, CmArchCommonObjErrSourcePciDeviceInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjErrSourcePciBridgeInfo, CmArchCommonObjErrSourcePciBridgeInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjErrSourceGenericHwInfo, CmArchCommonObjErrSourceGenericHwInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjErrSourceGenericHwVer2Info, CmArchCommonObjErrSourceGenericHwVer2InfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjEinjInstructionsInfo, CmArchCommonObjEinjInstructionsInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPlatformFwInfo, CmArchCommonPlatformFwInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjPhysicalMemoryArray, CmArchCommonPhysicalMemoryArrayParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryDeviceInfo, CmArchCommonMemoryDeviceInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryArrayMappedAddress, CmArchCommonMemoryArrayMappedAddressParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjCoolingDeviceInfo, CmArchCommonCoolingDeviceInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjTemperatureProbeInfo, CmArchCommonTemperatureProbeInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjVoltageProbeInfo, CmArchCommonVoltageProbeInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjElectricalCurrentProbeInfo, CmArchCommonElectricalCurrentProbeInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjSystemResetInfo, CmArchCommonSystemResetInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryDeviceMappedAddress, CmArchCommonMemoryDeviceMappedAddressParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryChannelInfo, CmArchCommonMemoryChannelInfoParser),
- CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryChannelDevice, CmArchCommonMemoryChannelDeviceParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPowerManagementProfileInfo, CmArchCommonPowerManagementProfileInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjSerialPortInfo, CmArchCommonSerialPortInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjConsolePortInfo, CmArchCommonSerialPortInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjSerialDebugPortInfo, CmArchCommonSerialPortInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjHypervisorVendorIdentity, CmArchCommonHypervisorVendorIdentityParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjFixedFeatureFlags, CmArchCommonFixedFeatureFlagsParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjCmRef, CmArchCommonObjRefParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPciConfigSpaceInfo, CmArchCommonPciConfigSpaceInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPciAddressMapInfo, CmArchCommonPciAddressMapInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPciInterruptMapInfo, CmArchCommonPciInterruptMapInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryAffinityInfo, CmArchCommonMemoryAffinityInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjDeviceHandleAcpi, CmArchCommonDeviceHandleAcpiParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjDeviceHandlePci, CmArchCommonDeviceHandlePciParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjGenericInitiatorAffinityInfo, CmArchCommonGenericInitiatorAffinityInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjLpiInfo, CmArchCommonLpiInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjProcHierarchyInfo, CmArchCommonProcHierarchyInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjCacheInfo, CmArchCommonCacheInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjCpcInfo, CmArchCommonCpcInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPccSubspaceType0Info, CmArchCommonPccSubspaceType0InfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPccSubspaceType1Info, CmArchCommonPccSubspaceType1InfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPccSubspaceType2Info, CmArchCommonPccSubspaceType2InfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPccSubspaceType3Info, CmArchCommonPccSubspaceType34InfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPccSubspaceType4Info, CmArchCommonPccSubspaceType34InfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPccSubspaceType5Info, CmArchCommonPccSubspaceType5InfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPsdInfo, CmArchCommonPsdInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjTpm2InterfaceInfo, CmArchCommonTpm2InterfaceInfo),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjSpmiInterfaceInfo, CmArchCommonSpmiInterfaceInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjSpmiInterruptDeviceInfo, CmArchCommonSpmiInterruptDeviceInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjCstInfo, CmArchCommonCstInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjCsdInfo, CmArchCommonCsdInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPctInfo, CmArchCommonPctInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPssInfo, CmArchCommonPssInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPpcInfo, CmArchCommonPpcInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjStaInfo, CmArchCommonStaInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryRangeDescriptor, CmArchCommonObjMemoryRangeDescriptor),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjGenericDbg2DeviceInfo, CmArchCommonObjDbg2DeviceInfo),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjCxlHostBridgeInfo, CmArchCommonObjCxlHostBridgeInfo),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjCxlFixedMemoryWindowInfo, CmArchCommonObjCxlFixedMemoryWindowInfo),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjProximityDomainInfo, CmArchCommonProximityDomainInfo),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjProximityDomainRelationInfo, CmArchCommonProximityDomainRelationInfo),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjSystemLocalityInfo, CmArchCommonSystemLocalityInfo),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryProximityDomainAttrInfo, CmArchCommonMemoryProximityDomainAttrInfo),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryLatBwInfo, CmArchCommonMemoryLatBwInfo),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryCacheInfo, CmArchCommonMemoryCacheInfo),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjSpcrInfo, CmArchCommonObjSpcrInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjTpm2DeviceInfo, CmArchCommonObjTpm2DeviceInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjMcfgPciConfigSpaceInfo, CmArchCommonPciConfigSpaceInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPciRootPortInfo, CmArchCommonObjPciRootPortInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjErrSourcePciRootPortInfo, CmArchCommonObjErrSourcePciRootPortInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjErrSourcePciDeviceInfo, CmArchCommonObjErrSourcePciDeviceInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjErrSourcePciBridgeInfo, CmArchCommonObjErrSourcePciBridgeInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjErrSourceGenericHwInfo, CmArchCommonObjErrSourceGenericHwInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjErrSourceGenericHwVer2Info, CmArchCommonObjErrSourceGenericHwVer2InfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjEinjInstructionsInfo, CmArchCommonObjEinjInstructionsInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPlatformFwInfo, CmArchCommonPlatformFwInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjPhysicalMemoryArray, CmArchCommonPhysicalMemoryArrayParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryDeviceInfo, CmArchCommonMemoryDeviceInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryArrayMappedAddress, CmArchCommonMemoryArrayMappedAddressParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjCoolingDeviceInfo, CmArchCommonCoolingDeviceInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjTemperatureProbeInfo, CmArchCommonTemperatureProbeInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjVoltageProbeInfo, CmArchCommonVoltageProbeInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjElectricalCurrentProbeInfo, CmArchCommonElectricalCurrentProbeInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjSystemResetInfo, CmArchCommonSystemResetInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryDeviceMappedAddress, CmArchCommonMemoryDeviceMappedAddressParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryChannelInfo, CmArchCommonMemoryChannelInfoParser),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjMemoryChannelDevice, CmArchCommonMemoryChannelDeviceParser),
+ CM_PARSER_ADD_OBJECT_RESERVED (EArchCommonObjProcessorSpecificBlockInfo),
+ CM_PARSER_ADD_OBJECT (EArchCommonObjSystemInfo, CmArchCommonSystemInfoParser),
CM_PARSER_ADD_OBJECT_RESERVED (EArchCommonObjMax)
};
@@ -1786,6 +1811,29 @@ PrintString (
DEBUG ((DEBUG_INFO, "%a", Ptr));
}
+/** Print GUID data.
+
+ @param [in] Format Format to print the Ptr.
+ @param [in] Ptr Pointer to the GUID.
+ @param [in] Length Length of the field.
+**/
+STATIC
+VOID
+EFIAPI
+PrintGuid (
+ IN CONST CHAR8 *Format,
+ IN UINT8 *Ptr,
+ IN UINT32 Length
+ )
+{
+ if ((Ptr == NULL) || (Length != sizeof (GUID))) {
+ ASSERT (0);
+ return;
+ }
+
+ DEBUG ((DEBUG_INFO, "%g", (GUID *)Ptr));
+}
+
/** Print string from pointer.
The string must be NULL terminated.