diff --git a/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h b/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h index e4205d6ba6..bbf3cd1e2e 100644 --- a/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h +++ b/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h @@ -21,7 +21,25 @@ */ typedef enum ArchCommonObjectID { EArchCommonObjReserved, ///< 0 - Reserved + EArchCommonObjPowerManagementProfileInfo, ///< 1 - Power Management Profile Info EArchCommonObjMax } EARCH_COMMON_OBJECT_ID; +#pragma pack(1) + +/** A structure that describes the + Power Management Profile Information for the Platform. + + ID: EArchCommonObjPowerManagementProfileInfo +*/ +typedef struct CmArchCommonPowerManagementProfileInfo { + /** This is the Preferred_PM_Profile field of the FADT Table + described in the ACPI Specification + */ + UINT8 PowerManagementProfile; +} CM_ARCH_COMMON_POWER_MANAGEMENT_PROFILE_INFO; + + +#pragma pack() + #endif // ARCH_COMMON_NAMESPACE_OBJECTS_H_ diff --git a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h index f7e1a0933f..3d9a151846 100644 --- a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h +++ b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h @@ -30,53 +30,52 @@ typedef enum ArmObjectID { EArmObjReserved, ///< 0 - Reserved EArmObjBootArchInfo, ///< 1 - Boot Architecture Info - EArmObjPowerManagementProfileInfo, ///< 2 - Power Management Profile Info - EArmObjGicCInfo, ///< 3 - GIC CPU Interface Info - EArmObjGicDInfo, ///< 4 - GIC Distributor Info - EArmObjGicMsiFrameInfo, ///< 5 - GIC MSI Frame Info - EArmObjGicRedistributorInfo, ///< 6 - GIC Redistributor Info - EArmObjGicItsInfo, ///< 7 - GIC ITS Info - EArmObjSerialConsolePortInfo, ///< 8 - Serial Console Port Info - EArmObjSerialDebugPortInfo, ///< 9 - Serial Debug Port Info - EArmObjGenericTimerInfo, ///< 10 - Generic Timer Info - EArmObjPlatformGTBlockInfo, ///< 11 - Platform GT Block Info - EArmObjGTBlockTimerFrameInfo, ///< 12 - Generic Timer Block Frame Info - EArmObjPlatformGenericWatchdogInfo, ///< 13 - Platform Generic Watchdog - EArmObjPciConfigSpaceInfo, ///< 14 - PCI Configuration Space Info - EArmObjHypervisorVendorIdentity, ///< 15 - Hypervisor Vendor Id - EArmObjFixedFeatureFlags, ///< 16 - Fixed feature flags for FADT - EArmObjItsGroup, ///< 17 - ITS Group - EArmObjNamedComponent, ///< 18 - Named Component - EArmObjRootComplex, ///< 19 - Root Complex - EArmObjSmmuV1SmmuV2, ///< 20 - SMMUv1 or SMMUv2 - EArmObjSmmuV3, ///< 21 - SMMUv3 - EArmObjPmcg, ///< 22 - PMCG - EArmObjGicItsIdentifierArray, ///< 23 - GIC ITS Identifier Array - EArmObjIdMappingArray, ///< 24 - ID Mapping Array - EArmObjSmmuInterruptArray, ///< 25 - SMMU Interrupt Array - EArmObjProcHierarchyInfo, ///< 26 - Processor Hierarchy Info - EArmObjCacheInfo, ///< 27 - Cache Info - EArmObjCmRef, ///< 28 - CM Object Reference - EArmObjMemoryAffinityInfo, ///< 29 - Memory Affinity Info - EArmObjDeviceHandleAcpi, ///< 30 - Device Handle Acpi - EArmObjDeviceHandlePci, ///< 31 - Device Handle Pci - EArmObjGenericInitiatorAffinityInfo, ///< 32 - Generic Initiator Affinity - EArmObjSerialPortInfo, ///< 33 - Generic Serial Port Info - EArmObjCmn600Info, ///< 34 - CMN-600 Info - EArmObjLpiInfo, ///< 35 - Lpi Info - EArmObjPciAddressMapInfo, ///< 36 - Pci Address Map Info - EArmObjPciInterruptMapInfo, ///< 37 - Pci Interrupt Map Info - EArmObjRmr, ///< 38 - Reserved Memory Range Node - EArmObjMemoryRangeDescriptor, ///< 39 - Memory Range Descriptor - EArmObjCpcInfo, ///< 40 - Continuous Performance Control Info - EArmObjPccSubspaceType0Info, ///< 41 - Pcc Subspace Type 0 Info - EArmObjPccSubspaceType1Info, ///< 42 - Pcc Subspace Type 2 Info - EArmObjPccSubspaceType2Info, ///< 43 - Pcc Subspace Type 2 Info - EArmObjPccSubspaceType3Info, ///< 44 - Pcc Subspace Type 3 Info - EArmObjPccSubspaceType4Info, ///< 45 - Pcc Subspace Type 4 Info - EArmObjPccSubspaceType5Info, ///< 46 - Pcc Subspace Type 5 Info - EArmObjEtInfo, ///< 47 - Embedded Trace Extension/Module Info - EArmObjPsdInfo, ///< 48 - P-State Dependency (PSD) Info + EArmObjGicCInfo, ///< 2 - GIC CPU Interface Info + EArmObjGicDInfo, ///< 3 - GIC Distributor Info + EArmObjGicMsiFrameInfo, ///< 4 - GIC MSI Frame Info + EArmObjGicRedistributorInfo, ///< 5 - GIC Redistributor Info + EArmObjGicItsInfo, ///< 6 - GIC ITS Info + EArmObjSerialConsolePortInfo, ///< 7 - Serial Console Port Info + EArmObjSerialDebugPortInfo, ///< 8 - Serial Debug Port Info + EArmObjGenericTimerInfo, ///< 9 - Generic Timer Info + EArmObjPlatformGTBlockInfo, ///< 10 - Platform GT Block Info + EArmObjGTBlockTimerFrameInfo, ///< 11 - Generic Timer Block Frame Info + EArmObjPlatformGenericWatchdogInfo, ///< 12 - Platform Generic Watchdog + EArmObjPciConfigSpaceInfo, ///< 13 - PCI Configuration Space Info + EArmObjHypervisorVendorIdentity, ///< 14 - Hypervisor Vendor Id + EArmObjFixedFeatureFlags, ///< 15 - Fixed feature flags for FADT + EArmObjItsGroup, ///< 16 - ITS Group + EArmObjNamedComponent, ///< 17 - Named Component + EArmObjRootComplex, ///< 18 - Root Complex + EArmObjSmmuV1SmmuV2, ///< 19 - SMMUv1 or SMMUv2 + EArmObjSmmuV3, ///< 20 - SMMUv3 + EArmObjPmcg, ///< 21 - PMCG + EArmObjGicItsIdentifierArray, ///< 22 - GIC ITS Identifier Array + EArmObjIdMappingArray, ///< 23 - ID Mapping Array + EArmObjSmmuInterruptArray, ///< 24 - SMMU Interrupt Array + EArmObjProcHierarchyInfo, ///< 25 - Processor Hierarchy Info + EArmObjCacheInfo, ///< 26 - Cache Info + EArmObjCmRef, ///< 27 - CM Object Reference + EArmObjMemoryAffinityInfo, ///< 28 - Memory Affinity Info + EArmObjDeviceHandleAcpi, ///< 29 - Device Handle Acpi + EArmObjDeviceHandlePci, ///< 30 - Device Handle Pci + EArmObjGenericInitiatorAffinityInfo, ///< 31 - Generic Initiator Affinity + EArmObjSerialPortInfo, ///< 32 - Generic Serial Port Info + EArmObjCmn600Info, ///< 33 - CMN-600 Info + EArmObjLpiInfo, ///< 34 - Lpi Info + EArmObjPciAddressMapInfo, ///< 35 - Pci Address Map Info + EArmObjPciInterruptMapInfo, ///< 36 - Pci Interrupt Map Info + EArmObjRmr, ///< 37 - Reserved Memory Range Node + EArmObjMemoryRangeDescriptor, ///< 38 - Memory Range Descriptor + EArmObjCpcInfo, ///< 39 - Continuous Performance Control Info + EArmObjPccSubspaceType0Info, ///< 40 - Pcc Subspace Type 0 Info + EArmObjPccSubspaceType1Info, ///< 41 - Pcc Subspace Type 2 Info + EArmObjPccSubspaceType2Info, ///< 42 - Pcc Subspace Type 2 Info + EArmObjPccSubspaceType3Info, ///< 43 - Pcc Subspace Type 3 Info + EArmObjPccSubspaceType4Info, ///< 44 - Pcc Subspace Type 4 Info + EArmObjPccSubspaceType5Info, ///< 45 - Pcc Subspace Type 5 Info + EArmObjEtInfo, ///< 46 - Embedded Trace Extension/Module Info + EArmObjPsdInfo, ///< 47 - P-State Dependency (PSD) Info EArmObjMax } EARM_OBJECT_ID; @@ -92,18 +91,6 @@ typedef struct CmArmBootArchInfo { UINT16 BootArchFlags; } CM_ARM_BOOT_ARCH_INFO; -/** A structure that describes the - Power Management Profile Information for the Platform. - - ID: EArmObjPowerManagementProfileInfo -*/ -typedef struct CmArmPowerManagementProfileInfo { - /** This is the Preferred_PM_Profile field of the FADT Table - described in the ACPI Specification - */ - UINT8 PowerManagementProfile; -} CM_ARM_POWER_MANAGEMENT_PROFILE_INFO; - /** A structure that describes the GIC CPU Interface for the Platform. diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c index 57aaaf85e6..ea8c821d11 100644 --- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c +++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c @@ -25,7 +25,7 @@ Requirements: The following Configuration Manager Object(s) are required by this Generator: - - EArmObjPowerManagementProfileInfo + - EArchCommonObjPowerManagementProfileInfo - EArmObjBootArchInfo - EArmObjHypervisorVendorIdentity (OPTIONAL) */ @@ -202,9 +202,9 @@ EFI_ACPI_6_5_FIXED_ACPI_DESCRIPTION_TABLE AcpiFadt = { Management Profile Information from the Configuration Manager. */ GET_OBJECT_LIST ( - EObjNameSpaceArm, - EArmObjPowerManagementProfileInfo, - CM_ARM_POWER_MANAGEMENT_PROFILE_INFO + EObjNameSpaceArchCommon, + EArchCommonObjPowerManagementProfileInfo, + CM_ARCH_COMMON_POWER_MANAGEMENT_PROFILE_INFO ); /** This macro expands to a function that retrieves the Boot @@ -253,13 +253,13 @@ FadtAddPmProfileInfo ( IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST CfgMgrProtocol ) { - EFI_STATUS Status; - CM_ARM_POWER_MANAGEMENT_PROFILE_INFO *PmProfile; + EFI_STATUS Status; + CM_ARCH_COMMON_POWER_MANAGEMENT_PROFILE_INFO *PmProfile; ASSERT (CfgMgrProtocol != NULL); // Get the Power Management Profile from the Platform Configuration Manager - Status = GetEArmObjPowerManagementProfileInfo ( + Status = GetEArchCommonObjPowerManagementProfileInfo ( CfgMgrProtocol, CM_NULL_TOKEN, &PmProfile, diff --git a/DynamicTablesPkg/Library/Common/DynamicPlatRepoLib/CmObjectTokenFixer.c b/DynamicTablesPkg/Library/Common/DynamicPlatRepoLib/CmObjectTokenFixer.c index 833fa2d6a2..ef2a8dcfdd 100644 --- a/DynamicTablesPkg/Library/Common/DynamicPlatRepoLib/CmObjectTokenFixer.c +++ b/DynamicTablesPkg/Library/Common/DynamicPlatRepoLib/CmObjectTokenFixer.c @@ -145,53 +145,52 @@ CONST CM_OBJECT_TOKEN_FIXER TokenFixer[EArmObjMax] = { NULL, ///< 0 - Reserved NULL, ///< 1 - Boot Architecture Info - NULL, ///< 2 - Power Management Profile Info - NULL, ///< 3 - GIC CPU Interface Info - NULL, ///< 4 - GIC Distributor Info - NULL, ///< 5 - GIC MSI Frame Info - NULL, ///< 6 - GIC Redistributor Info - NULL, ///< 7 - GIC ITS Info - NULL, ///< 8 - Serial Console Port Info - NULL, ///< 9 - Serial Debug Port Info - NULL, ///< 10 - Generic Timer Info - NULL, ///< 11 - Platform GT Block Info - NULL, ///< 12 - Generic Timer Block Frame Info - NULL, ///< 13 - Platform Generic Watchdog - NULL, ///< 14 - PCI Configuration Space Info - NULL, ///< 15 - Hypervisor Vendor Id - NULL, ///< 16 - Fixed feature flags for FADT - TokenFixerItsGroup, ///< 17 - ITS Group - TokenFixerNamedComponentNode, ///< 18 - Named Component - TokenFixerRootComplexNode, ///< 19 - Root Complex - TokenFixerNotImplemented, ///< 20 - SMMUv1 or SMMUv2 - TokenFixerSmmuV3Node, ///< 21 - SMMUv3 - TokenFixerNotImplemented, ///< 22 - PMCG - NULL, ///< 23 - GIC ITS Identifier Array - NULL, ///< 24 - ID Mapping Array - NULL, ///< 25 - SMMU Interrupt Array - TokenFixerNotImplemented, ///< 26 - Processor Hierarchy Info - TokenFixerNotImplemented, ///< 27 - Cache Info - NULL, ///< 28 - CM Object Reference - NULL, ///< 29 - Memory Affinity Info - NULL, ///< 30 - Device Handle Acpi - NULL, ///< 31 - Device Handle Pci - NULL, ///< 32 - Generic Initiator Affinity - NULL, ///< 33 - Generic Serial Port Info - NULL, ///< 34 - CMN-600 Info - NULL, ///< 35 - Lpi Info - NULL, ///< 36 - Pci Address Map Info - NULL, ///< 37 - Pci Interrupt Map Info - NULL, ///< 38 - Reserved Memory Range Node - NULL, ///< 39 - Memory Range Descriptor - NULL, ///< 40 - Continuous Performance Control Info - NULL, ///< 41 - Pcc Subspace Type 0 Info + NULL, ///< 2 - GIC CPU Interface Info + NULL, ///< 3 - GIC Distributor Info + NULL, ///< 4 - GIC MSI Frame Info + NULL, ///< 5 - GIC Redistributor Info + NULL, ///< 6 - GIC ITS Info + NULL, ///< 7 - Serial Console Port Info + NULL, ///< 8 - Serial Debug Port Info + NULL, ///< 9 - Generic Timer Info + NULL, ///< 10 - Platform GT Block Info + NULL, ///< 11 - Generic Timer Block Frame Info + NULL, ///< 12 - Platform Generic Watchdog + NULL, ///< 13 - PCI Configuration Space Info + NULL, ///< 14 - Hypervisor Vendor Id + NULL, ///< 15 - Fixed feature flags for FADT + TokenFixerItsGroup, ///< 16 - ITS Group + TokenFixerNamedComponentNode, ///< 17 - Named Component + TokenFixerRootComplexNode, ///< 18 - Root Complex + TokenFixerNotImplemented, ///< 19 - SMMUv1 or SMMUv2 + TokenFixerSmmuV3Node, ///< 20 - SMMUv3 + TokenFixerNotImplemented, ///< 21 - PMCG + NULL, ///< 22 - GIC ITS Identifier Array + NULL, ///< 23 - ID Mapping Array + NULL, ///< 24 - SMMU Interrupt Array + TokenFixerNotImplemented, ///< 25 - Processor Hierarchy Info + TokenFixerNotImplemented, ///< 26 - Cache Info + NULL, ///< 27 - CM Object Reference + NULL, ///< 28 - Memory Affinity Info + NULL, ///< 29 - Device Handle Acpi + NULL, ///< 30 - Device Handle Pci + NULL, ///< 31 - Generic Initiator Affinity + NULL, ///< 32 - Generic Serial Port Info + NULL, ///< 33 - CMN-600 Info + NULL, ///< 34 - Lpi Info + NULL, ///< 35 - Pci Address Map Info + NULL, ///< 36 - Pci Interrupt Map Info + NULL, ///< 37 - Reserved Memory Range Node + NULL, ///< 38 - Memory Range Descriptor + NULL, ///< 39 - Continuous Performance Control Info + NULL, ///< 40 - Pcc Subspace Type 0 Info + NULL, ///< 41 - Pcc Subspace Type 2 Info NULL, ///< 42 - Pcc Subspace Type 2 Info - NULL, ///< 43 - Pcc Subspace Type 2 Info - NULL, ///< 44 - Pcc Subspace Type 3 Info - NULL, ///< 45 - Pcc Subspace Type 4 Info - NULL, ///< 46 - Pcc Subspace Type 5 Info - NULL, ///< 47 - Embedded Trace Extension/Module Info - NULL ///< 48 - P-State Dependency (PSD) Info + NULL, ///< 43 - Pcc Subspace Type 3 Info + NULL, ///< 44 - Pcc Subspace Type 4 Info + NULL, ///< 45 - Pcc Subspace Type 5 Info + NULL, ///< 46 - Embedded Trace Extension/Module Info + NULL ///< 47 - P-State Dependency (PSD) Info }; /** CmObj token fixer. diff --git a/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c b/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c index 6896463b28..0d3e53312b 100644 --- a/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c +++ b/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c @@ -57,9 +57,9 @@ STATIC CONST CM_OBJ_PARSER CmArmBootArchInfoParser[] = { { "BootArchFlags", 2, "0x%x", NULL } }; -/** A parser for EArmObjPowerManagementProfileInfo. +/** A parser for EArchCommonObjPowerManagementProfileInfo. */ -STATIC CONST CM_OBJ_PARSER CmArmPowerManagementProfileInfoParser[] = { +STATIC CONST CM_OBJ_PARSER CmArchCommonPowerManagementProfileInfoParser[] = { { "PowerManagementProfile", 1, "0x%x", NULL } }; @@ -671,6 +671,7 @@ STATIC CONST CM_OBJ_PARSER CmArmPsdInfoParser[] = { */ STATIC CONST CM_OBJ_PARSER_ARRAY ArchCommonNamespaceObjectParser[] = { CM_PARSER_ADD_OBJECT_RESERVED (EArchCommonObjReserved), + CM_PARSER_ADD_OBJECT (EArchCommonObjPowerManagementProfileInfo,CmArchCommonPowerManagementProfileInfoParser), CM_PARSER_ADD_OBJECT_RESERVED (EArchCommonObjMax) }; @@ -679,7 +680,6 @@ STATIC CONST CM_OBJ_PARSER_ARRAY ArchCommonNamespaceObjectParser[] = { STATIC CONST CM_OBJ_PARSER_ARRAY ArmNamespaceObjectParser[] = { CM_PARSER_ADD_OBJECT_RESERVED (EArmObjReserved), CM_PARSER_ADD_OBJECT (EArmObjBootArchInfo, CmArmBootArchInfoParser), - CM_PARSER_ADD_OBJECT (EArmObjPowerManagementProfileInfo, CmArmPowerManagementProfileInfoParser), CM_PARSER_ADD_OBJECT (EArmObjGicCInfo, CmArmGicCInfoParser), CM_PARSER_ADD_OBJECT (EArmObjGicDInfo, CmArmGicDInfoParser), CM_PARSER_ADD_OBJECT (EArmObjGicMsiFrameInfo, CmArmGicMsiFrameInfoParser), diff --git a/DynamicTablesPkg/Readme.md b/DynamicTablesPkg/Readme.md index 8d30bf560b..3295bb2993 100644 --- a/DynamicTablesPkg/Readme.md +++ b/DynamicTablesPkg/Readme.md @@ -442,53 +442,52 @@ The CM_OBJECT_ID type is used to identify the Configuration Manager | ---: | :-------------------------- | :--- | | 0 | Reserved | | | 1 | Boot Architecture Info | | -| 2 | Power Management Profile Info | Move to Arch Common NS | -| 3 | GICC Info | | -| 4 | GICD Info | | -| 5 | GIC MSI Frame Info | | -| 6 | GIC Redistributor Info | | -| 7 | GIC ITS Info | | -| 8 | Serial Console Port Info | Move to Arch Common NS | -| 9 | Serial Debug Port Info | Move to Arch Common NS | -| 10 | Generic Timer Info | | -| 11 | Platform GT Block Info | | -| 12 | Generic Timer Block Frame Info | | -| 13 | Platform Generic Watchdog | | -| 14 | PCI Configuration Space Info | Move to Arch Common NS | -| 15 | Hypervisor Vendor Id | Move to Arch Common NS | -| 16 | Fixed feature flags for FADT | Move to Arch Common NS | -| 17 | ITS Group | | -| 18 | Named Component | | -| 19 | Root Complex | | -| 20 | SMMUv1 or SMMUv2 | | -| 21 | SMMUv3 | | -| 22 | PMCG | | -| 23 | GIC ITS Identifier Array | | -| 24 | ID Mapping Array | | -| 25 | SMMU Interrupt Array | | -| 26 | Processor Hierarchy Info | Move to Arch Common NS | -| 27 | Cache Info | Move to Arch Common NS | -| 28 | CM Object Reference | Move to Arch Common NS | -| 29 | Memory Affinity Info | Move to Arch Common NS | -| 30 | Device Handle Acpi | Move to Arch Common NS | -| 31 | Device Handle PCI | Move to Arch Common NS | -| 32 | Generic Initiator Affinity Info | Move to Arch Common NS | -| 33 | Serial Port Info | Move to Arch Common NS | -| 34 | CMN 600 Info | | -| 35 | Low Power Idle State Info | Move to Arch Common NS | -| 36 | PCI Address Map Info | Move to Arch Common NS | -| 37 | PCI Interrupt Map Info | Move to Arch Common NS | -| 38 | Reserved Memory Range Node | | -| 39 | Memory Range Descriptor | | -| 40 | Continuous Performance Control Info | Move to Arch Common NS | -| 41 | Pcc Subspace Type 0 Info | Move to Arch Common NS | -| 42 | Pcc Subspace Type 1 Info | Move to Arch Common NS | -| 43 | Pcc Subspace Type 2 Info | Move to Arch Common NS | -| 44 | Pcc Subspace Type 3 Info | Move to Arch Common NS | -| 45 | Pcc Subspace Type 4 Info | Move to Arch Common NS | -| 46 | Pcc Subspace Type 5 Info | Move to Arch Common NS | -| 47 | Embedded Trace Extension/Module Info | | -| 48 | P-State Dependency (PSD) Info | Move to Arch Common NS | +| 2 | GICC Info | | +| 3 | GICD Info | | +| 4 | GIC MSI Frame Info | | +| 5 | GIC Redistributor Info | | +| 6 | GIC ITS Info | | +| 7 | Serial Console Port Info | Move to Arch Common NS | +| 8 | Serial Debug Port Info | Move to Arch Common NS | +| 9 | Generic Timer Info | | +| 10 | Platform GT Block Info | | +| 11 | Generic Timer Block Frame Info | | +| 12 | Platform Generic Watchdog | | +| 13 | PCI Configuration Space Info | Move to Arch Common NS | +| 14 | Hypervisor Vendor Id | Move to Arch Common NS | +| 15 | Fixed feature flags for FADT | Move to Arch Common NS | +| 16 | ITS Group | | +| 17 | Named Component | | +| 18 | Root Complex | | +| 19 | SMMUv1 or SMMUv2 | | +| 20 | SMMUv3 | | +| 21 | PMCG | | +| 22 | GIC ITS Identifier Array | | +| 23 | ID Mapping Array | | +| 24 | SMMU Interrupt Array | | +| 25 | Processor Hierarchy Info | Move to Arch Common NS | +| 26 | Cache Info | Move to Arch Common NS | +| 27 | CM Object Reference | Move to Arch Common NS | +| 28 | Memory Affinity Info | Move to Arch Common NS | +| 29 | Device Handle Acpi | Move to Arch Common NS | +| 30 | Device Handle PCI | Move to Arch Common NS | +| 31 | Generic Initiator Affinity Info | Move to Arch Common NS | +| 32 | Serial Port Info | Move to Arch Common NS | +| 33 | CMN 600 Info | | +| 34 | Low Power Idle State Info | Move to Arch Common NS | +| 35 | PCI Address Map Info | Move to Arch Common NS | +| 36 | PCI Interrupt Map Info | Move to Arch Common NS | +| 37 | Reserved Memory Range Node | | +| 38 | Memory Range Descriptor | | +| 39 | Continuous Performance Control Info | Move to Arch Common NS | +| 40 | Pcc Subspace Type 0 Info | Move to Arch Common NS | +| 41 | Pcc Subspace Type 1 Info | Move to Arch Common NS | +| 42 | Pcc Subspace Type 2 Info | Move to Arch Common NS | +| 43 | Pcc Subspace Type 3 Info | Move to Arch Common NS | +| 44 | Pcc Subspace Type 4 Info | Move to Arch Common NS | +| 45 | Pcc Subspace Type 5 Info | Move to Arch Common NS | +| 46 | Embedded Trace Extension/Module Info | | +| 47 | P-State Dependency (PSD) Info | Move to Arch Common NS | | `*` | All other values are reserved. | | #### Object ID's in the Arch Common Namespace: @@ -496,4 +495,5 @@ The CM_OBJECT_ID type is used to identify the Configuration Manager | ID | Description | Comments | | ---: | :-------------------------- | :--- | | 0 | Reserved | | +| 1 | Power Management Profile Info | | | `*` | All other values are reserved. | |