DynamicTablesPkg: Move Power Mgmt Profile Info Object

Move PowerManagementProfileInfo Object from Arm Namespace to the
Arch Common namespace.
The following updates are also done to reflect the changes introduced
by the move:
 - Update the FADT Generator to migrate to use the Power Management
   Profile Info object CM_ARCH_COMMON_POWER_MANAGEMENT_PROFILE_INFO
   and EArchCommonObjPowerManagementProfileInfo.
 - Update the Configuration manager object parser to parse Arch
   Common namespace objects and update the parsing of the Power
   Management Profile information object from Arm namespace to
   the Arch Common namespace.
 - Update the Dynamic Plat Repo TokenFixer map

Cc: Pierre Gondois <Pierre.Gondois@arm.com>
Cc: Yeo Reum Yun <YeoReum.Yun@arm.com>
Cc: AbdulLateef Attar <AbdulLateef.Attar@amd.com>
Cc: Jeshua Smith <jeshuas@nvidia.com>
Cc: Jeff Brasen <jbrasen@nvidia.com>
Cc: Girish Mahadevan <gmahadevan@nvidia.com>
Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Cc: Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com>
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
Reviewed-by: Sunil V L <sunilvl@ventanamicro.com>
This commit is contained in:
Sami Mujawar 2024-03-05 16:34:46 +00:00 committed by mergify[bot]
parent 6dad45b7dd
commit 4362ddea7f
6 changed files with 166 additions and 162 deletions

View File

@ -21,7 +21,25 @@
*/ */
typedef enum ArchCommonObjectID { typedef enum ArchCommonObjectID {
EArchCommonObjReserved, ///< 0 - Reserved EArchCommonObjReserved, ///< 0 - Reserved
EArchCommonObjPowerManagementProfileInfo, ///< 1 - Power Management Profile Info
EArchCommonObjMax EArchCommonObjMax
} EARCH_COMMON_OBJECT_ID; } 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_ #endif // ARCH_COMMON_NAMESPACE_OBJECTS_H_

View File

@ -30,53 +30,52 @@
typedef enum ArmObjectID { typedef enum ArmObjectID {
EArmObjReserved, ///< 0 - Reserved EArmObjReserved, ///< 0 - Reserved
EArmObjBootArchInfo, ///< 1 - Boot Architecture Info EArmObjBootArchInfo, ///< 1 - Boot Architecture Info
EArmObjPowerManagementProfileInfo, ///< 2 - Power Management Profile Info EArmObjGicCInfo, ///< 2 - GIC CPU Interface Info
EArmObjGicCInfo, ///< 3 - GIC CPU Interface Info EArmObjGicDInfo, ///< 3 - GIC Distributor Info
EArmObjGicDInfo, ///< 4 - GIC Distributor Info EArmObjGicMsiFrameInfo, ///< 4 - GIC MSI Frame Info
EArmObjGicMsiFrameInfo, ///< 5 - GIC MSI Frame Info EArmObjGicRedistributorInfo, ///< 5 - GIC Redistributor Info
EArmObjGicRedistributorInfo, ///< 6 - GIC Redistributor Info EArmObjGicItsInfo, ///< 6 - GIC ITS Info
EArmObjGicItsInfo, ///< 7 - GIC ITS Info EArmObjSerialConsolePortInfo, ///< 7 - Serial Console Port Info
EArmObjSerialConsolePortInfo, ///< 8 - Serial Console Port Info EArmObjSerialDebugPortInfo, ///< 8 - Serial Debug Port Info
EArmObjSerialDebugPortInfo, ///< 9 - Serial Debug Port Info EArmObjGenericTimerInfo, ///< 9 - Generic Timer Info
EArmObjGenericTimerInfo, ///< 10 - Generic Timer Info EArmObjPlatformGTBlockInfo, ///< 10 - Platform GT Block Info
EArmObjPlatformGTBlockInfo, ///< 11 - Platform GT Block Info EArmObjGTBlockTimerFrameInfo, ///< 11 - Generic Timer Block Frame Info
EArmObjGTBlockTimerFrameInfo, ///< 12 - Generic Timer Block Frame Info EArmObjPlatformGenericWatchdogInfo, ///< 12 - Platform Generic Watchdog
EArmObjPlatformGenericWatchdogInfo, ///< 13 - Platform Generic Watchdog EArmObjPciConfigSpaceInfo, ///< 13 - PCI Configuration Space Info
EArmObjPciConfigSpaceInfo, ///< 14 - PCI Configuration Space Info EArmObjHypervisorVendorIdentity, ///< 14 - Hypervisor Vendor Id
EArmObjHypervisorVendorIdentity, ///< 15 - Hypervisor Vendor Id EArmObjFixedFeatureFlags, ///< 15 - Fixed feature flags for FADT
EArmObjFixedFeatureFlags, ///< 16 - Fixed feature flags for FADT EArmObjItsGroup, ///< 16 - ITS Group
EArmObjItsGroup, ///< 17 - ITS Group EArmObjNamedComponent, ///< 17 - Named Component
EArmObjNamedComponent, ///< 18 - Named Component EArmObjRootComplex, ///< 18 - Root Complex
EArmObjRootComplex, ///< 19 - Root Complex EArmObjSmmuV1SmmuV2, ///< 19 - SMMUv1 or SMMUv2
EArmObjSmmuV1SmmuV2, ///< 20 - SMMUv1 or SMMUv2 EArmObjSmmuV3, ///< 20 - SMMUv3
EArmObjSmmuV3, ///< 21 - SMMUv3 EArmObjPmcg, ///< 21 - PMCG
EArmObjPmcg, ///< 22 - PMCG EArmObjGicItsIdentifierArray, ///< 22 - GIC ITS Identifier Array
EArmObjGicItsIdentifierArray, ///< 23 - GIC ITS Identifier Array EArmObjIdMappingArray, ///< 23 - ID Mapping Array
EArmObjIdMappingArray, ///< 24 - ID Mapping Array EArmObjSmmuInterruptArray, ///< 24 - SMMU Interrupt Array
EArmObjSmmuInterruptArray, ///< 25 - SMMU Interrupt Array EArmObjProcHierarchyInfo, ///< 25 - Processor Hierarchy Info
EArmObjProcHierarchyInfo, ///< 26 - Processor Hierarchy Info EArmObjCacheInfo, ///< 26 - Cache Info
EArmObjCacheInfo, ///< 27 - Cache Info EArmObjCmRef, ///< 27 - CM Object Reference
EArmObjCmRef, ///< 28 - CM Object Reference EArmObjMemoryAffinityInfo, ///< 28 - Memory Affinity Info
EArmObjMemoryAffinityInfo, ///< 29 - Memory Affinity Info EArmObjDeviceHandleAcpi, ///< 29 - Device Handle Acpi
EArmObjDeviceHandleAcpi, ///< 30 - Device Handle Acpi EArmObjDeviceHandlePci, ///< 30 - Device Handle Pci
EArmObjDeviceHandlePci, ///< 31 - Device Handle Pci EArmObjGenericInitiatorAffinityInfo, ///< 31 - Generic Initiator Affinity
EArmObjGenericInitiatorAffinityInfo, ///< 32 - Generic Initiator Affinity EArmObjSerialPortInfo, ///< 32 - Generic Serial Port Info
EArmObjSerialPortInfo, ///< 33 - Generic Serial Port Info EArmObjCmn600Info, ///< 33 - CMN-600 Info
EArmObjCmn600Info, ///< 34 - CMN-600 Info EArmObjLpiInfo, ///< 34 - Lpi Info
EArmObjLpiInfo, ///< 35 - Lpi Info EArmObjPciAddressMapInfo, ///< 35 - Pci Address Map Info
EArmObjPciAddressMapInfo, ///< 36 - Pci Address Map Info EArmObjPciInterruptMapInfo, ///< 36 - Pci Interrupt Map Info
EArmObjPciInterruptMapInfo, ///< 37 - Pci Interrupt Map Info EArmObjRmr, ///< 37 - Reserved Memory Range Node
EArmObjRmr, ///< 38 - Reserved Memory Range Node EArmObjMemoryRangeDescriptor, ///< 38 - Memory Range Descriptor
EArmObjMemoryRangeDescriptor, ///< 39 - Memory Range Descriptor EArmObjCpcInfo, ///< 39 - Continuous Performance Control Info
EArmObjCpcInfo, ///< 40 - Continuous Performance Control Info EArmObjPccSubspaceType0Info, ///< 40 - Pcc Subspace Type 0 Info
EArmObjPccSubspaceType0Info, ///< 41 - Pcc Subspace Type 0 Info EArmObjPccSubspaceType1Info, ///< 41 - Pcc Subspace Type 2 Info
EArmObjPccSubspaceType1Info, ///< 42 - Pcc Subspace Type 2 Info EArmObjPccSubspaceType2Info, ///< 42 - Pcc Subspace Type 2 Info
EArmObjPccSubspaceType2Info, ///< 43 - Pcc Subspace Type 2 Info EArmObjPccSubspaceType3Info, ///< 43 - Pcc Subspace Type 3 Info
EArmObjPccSubspaceType3Info, ///< 44 - Pcc Subspace Type 3 Info EArmObjPccSubspaceType4Info, ///< 44 - Pcc Subspace Type 4 Info
EArmObjPccSubspaceType4Info, ///< 45 - Pcc Subspace Type 4 Info EArmObjPccSubspaceType5Info, ///< 45 - Pcc Subspace Type 5 Info
EArmObjPccSubspaceType5Info, ///< 46 - Pcc Subspace Type 5 Info EArmObjEtInfo, ///< 46 - Embedded Trace Extension/Module Info
EArmObjEtInfo, ///< 47 - Embedded Trace Extension/Module Info EArmObjPsdInfo, ///< 47 - P-State Dependency (PSD) Info
EArmObjPsdInfo, ///< 48 - P-State Dependency (PSD) Info
EArmObjMax EArmObjMax
} EARM_OBJECT_ID; } EARM_OBJECT_ID;
@ -92,18 +91,6 @@ typedef struct CmArmBootArchInfo {
UINT16 BootArchFlags; UINT16 BootArchFlags;
} CM_ARM_BOOT_ARCH_INFO; } 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 /** A structure that describes the
GIC CPU Interface for the Platform. GIC CPU Interface for the Platform.

View File

@ -25,7 +25,7 @@
Requirements: Requirements:
The following Configuration Manager Object(s) are required by The following Configuration Manager Object(s) are required by
this Generator: this Generator:
- EArmObjPowerManagementProfileInfo - EArchCommonObjPowerManagementProfileInfo
- EArmObjBootArchInfo - EArmObjBootArchInfo
- EArmObjHypervisorVendorIdentity (OPTIONAL) - EArmObjHypervisorVendorIdentity (OPTIONAL)
*/ */
@ -202,9 +202,9 @@ EFI_ACPI_6_5_FIXED_ACPI_DESCRIPTION_TABLE AcpiFadt = {
Management Profile Information from the Configuration Manager. Management Profile Information from the Configuration Manager.
*/ */
GET_OBJECT_LIST ( GET_OBJECT_LIST (
EObjNameSpaceArm, EObjNameSpaceArchCommon,
EArmObjPowerManagementProfileInfo, EArchCommonObjPowerManagementProfileInfo,
CM_ARM_POWER_MANAGEMENT_PROFILE_INFO CM_ARCH_COMMON_POWER_MANAGEMENT_PROFILE_INFO
); );
/** This macro expands to a function that retrieves the Boot /** This macro expands to a function that retrieves the Boot
@ -253,13 +253,13 @@ FadtAddPmProfileInfo (
IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST CfgMgrProtocol IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST CfgMgrProtocol
) )
{ {
EFI_STATUS Status; EFI_STATUS Status;
CM_ARM_POWER_MANAGEMENT_PROFILE_INFO *PmProfile; CM_ARCH_COMMON_POWER_MANAGEMENT_PROFILE_INFO *PmProfile;
ASSERT (CfgMgrProtocol != NULL); ASSERT (CfgMgrProtocol != NULL);
// Get the Power Management Profile from the Platform Configuration Manager // Get the Power Management Profile from the Platform Configuration Manager
Status = GetEArmObjPowerManagementProfileInfo ( Status = GetEArchCommonObjPowerManagementProfileInfo (
CfgMgrProtocol, CfgMgrProtocol,
CM_NULL_TOKEN, CM_NULL_TOKEN,
&PmProfile, &PmProfile,

View File

@ -145,53 +145,52 @@ CONST
CM_OBJECT_TOKEN_FIXER TokenFixer[EArmObjMax] = { CM_OBJECT_TOKEN_FIXER TokenFixer[EArmObjMax] = {
NULL, ///< 0 - Reserved NULL, ///< 0 - Reserved
NULL, ///< 1 - Boot Architecture Info NULL, ///< 1 - Boot Architecture Info
NULL, ///< 2 - Power Management Profile Info NULL, ///< 2 - GIC CPU Interface Info
NULL, ///< 3 - GIC CPU Interface Info NULL, ///< 3 - GIC Distributor Info
NULL, ///< 4 - GIC Distributor Info NULL, ///< 4 - GIC MSI Frame Info
NULL, ///< 5 - GIC MSI Frame Info NULL, ///< 5 - GIC Redistributor Info
NULL, ///< 6 - GIC Redistributor Info NULL, ///< 6 - GIC ITS Info
NULL, ///< 7 - GIC ITS Info NULL, ///< 7 - Serial Console Port Info
NULL, ///< 8 - Serial Console Port Info NULL, ///< 8 - Serial Debug Port Info
NULL, ///< 9 - Serial Debug Port Info NULL, ///< 9 - Generic Timer Info
NULL, ///< 10 - Generic Timer Info NULL, ///< 10 - Platform GT Block Info
NULL, ///< 11 - Platform GT Block Info NULL, ///< 11 - Generic Timer Block Frame Info
NULL, ///< 12 - Generic Timer Block Frame Info NULL, ///< 12 - Platform Generic Watchdog
NULL, ///< 13 - Platform Generic Watchdog NULL, ///< 13 - PCI Configuration Space Info
NULL, ///< 14 - PCI Configuration Space Info NULL, ///< 14 - Hypervisor Vendor Id
NULL, ///< 15 - Hypervisor Vendor Id NULL, ///< 15 - Fixed feature flags for FADT
NULL, ///< 16 - Fixed feature flags for FADT TokenFixerItsGroup, ///< 16 - ITS Group
TokenFixerItsGroup, ///< 17 - ITS Group TokenFixerNamedComponentNode, ///< 17 - Named Component
TokenFixerNamedComponentNode, ///< 18 - Named Component TokenFixerRootComplexNode, ///< 18 - Root Complex
TokenFixerRootComplexNode, ///< 19 - Root Complex TokenFixerNotImplemented, ///< 19 - SMMUv1 or SMMUv2
TokenFixerNotImplemented, ///< 20 - SMMUv1 or SMMUv2 TokenFixerSmmuV3Node, ///< 20 - SMMUv3
TokenFixerSmmuV3Node, ///< 21 - SMMUv3 TokenFixerNotImplemented, ///< 21 - PMCG
TokenFixerNotImplemented, ///< 22 - PMCG NULL, ///< 22 - GIC ITS Identifier Array
NULL, ///< 23 - GIC ITS Identifier Array NULL, ///< 23 - ID Mapping Array
NULL, ///< 24 - ID Mapping Array NULL, ///< 24 - SMMU Interrupt Array
NULL, ///< 25 - SMMU Interrupt Array TokenFixerNotImplemented, ///< 25 - Processor Hierarchy Info
TokenFixerNotImplemented, ///< 26 - Processor Hierarchy Info TokenFixerNotImplemented, ///< 26 - Cache Info
TokenFixerNotImplemented, ///< 27 - Cache Info NULL, ///< 27 - CM Object Reference
NULL, ///< 28 - CM Object Reference NULL, ///< 28 - Memory Affinity Info
NULL, ///< 29 - Memory Affinity Info NULL, ///< 29 - Device Handle Acpi
NULL, ///< 30 - Device Handle Acpi NULL, ///< 30 - Device Handle Pci
NULL, ///< 31 - Device Handle Pci NULL, ///< 31 - Generic Initiator Affinity
NULL, ///< 32 - Generic Initiator Affinity NULL, ///< 32 - Generic Serial Port Info
NULL, ///< 33 - Generic Serial Port Info NULL, ///< 33 - CMN-600 Info
NULL, ///< 34 - CMN-600 Info NULL, ///< 34 - Lpi Info
NULL, ///< 35 - Lpi Info NULL, ///< 35 - Pci Address Map Info
NULL, ///< 36 - Pci Address Map Info NULL, ///< 36 - Pci Interrupt Map Info
NULL, ///< 37 - Pci Interrupt Map Info NULL, ///< 37 - Reserved Memory Range Node
NULL, ///< 38 - Reserved Memory Range Node NULL, ///< 38 - Memory Range Descriptor
NULL, ///< 39 - Memory Range Descriptor NULL, ///< 39 - Continuous Performance Control Info
NULL, ///< 40 - Continuous Performance Control Info NULL, ///< 40 - Pcc Subspace Type 0 Info
NULL, ///< 41 - Pcc Subspace Type 0 Info NULL, ///< 41 - Pcc Subspace Type 2 Info
NULL, ///< 42 - Pcc Subspace Type 2 Info NULL, ///< 42 - Pcc Subspace Type 2 Info
NULL, ///< 43 - Pcc Subspace Type 2 Info NULL, ///< 43 - Pcc Subspace Type 3 Info
NULL, ///< 44 - Pcc Subspace Type 3 Info NULL, ///< 44 - Pcc Subspace Type 4 Info
NULL, ///< 45 - Pcc Subspace Type 4 Info NULL, ///< 45 - Pcc Subspace Type 5 Info
NULL, ///< 46 - Pcc Subspace Type 5 Info NULL, ///< 46 - Embedded Trace Extension/Module Info
NULL, ///< 47 - Embedded Trace Extension/Module Info NULL ///< 47 - P-State Dependency (PSD) Info
NULL ///< 48 - P-State Dependency (PSD) Info
}; };
/** CmObj token fixer. /** CmObj token fixer.

View File

@ -57,9 +57,9 @@ STATIC CONST CM_OBJ_PARSER CmArmBootArchInfoParser[] = {
{ "BootArchFlags", 2, "0x%x", NULL } { "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 } { "PowerManagementProfile", 1, "0x%x", NULL }
}; };
@ -671,6 +671,7 @@ STATIC CONST CM_OBJ_PARSER CmArmPsdInfoParser[] = {
*/ */
STATIC CONST CM_OBJ_PARSER_ARRAY ArchCommonNamespaceObjectParser[] = { STATIC CONST CM_OBJ_PARSER_ARRAY ArchCommonNamespaceObjectParser[] = {
CM_PARSER_ADD_OBJECT_RESERVED (EArchCommonObjReserved), CM_PARSER_ADD_OBJECT_RESERVED (EArchCommonObjReserved),
CM_PARSER_ADD_OBJECT (EArchCommonObjPowerManagementProfileInfo,CmArchCommonPowerManagementProfileInfoParser),
CM_PARSER_ADD_OBJECT_RESERVED (EArchCommonObjMax) CM_PARSER_ADD_OBJECT_RESERVED (EArchCommonObjMax)
}; };
@ -679,7 +680,6 @@ STATIC CONST CM_OBJ_PARSER_ARRAY ArchCommonNamespaceObjectParser[] = {
STATIC CONST CM_OBJ_PARSER_ARRAY ArmNamespaceObjectParser[] = { STATIC CONST CM_OBJ_PARSER_ARRAY ArmNamespaceObjectParser[] = {
CM_PARSER_ADD_OBJECT_RESERVED (EArmObjReserved), CM_PARSER_ADD_OBJECT_RESERVED (EArmObjReserved),
CM_PARSER_ADD_OBJECT (EArmObjBootArchInfo, CmArmBootArchInfoParser), CM_PARSER_ADD_OBJECT (EArmObjBootArchInfo, CmArmBootArchInfoParser),
CM_PARSER_ADD_OBJECT (EArmObjPowerManagementProfileInfo, CmArmPowerManagementProfileInfoParser),
CM_PARSER_ADD_OBJECT (EArmObjGicCInfo, CmArmGicCInfoParser), CM_PARSER_ADD_OBJECT (EArmObjGicCInfo, CmArmGicCInfoParser),
CM_PARSER_ADD_OBJECT (EArmObjGicDInfo, CmArmGicDInfoParser), CM_PARSER_ADD_OBJECT (EArmObjGicDInfo, CmArmGicDInfoParser),
CM_PARSER_ADD_OBJECT (EArmObjGicMsiFrameInfo, CmArmGicMsiFrameInfoParser), CM_PARSER_ADD_OBJECT (EArmObjGicMsiFrameInfo, CmArmGicMsiFrameInfoParser),

View File

@ -442,53 +442,52 @@ The CM_OBJECT_ID type is used to identify the Configuration Manager
| ---: | :-------------------------- | :--- | | ---: | :-------------------------- | :--- |
| 0 | Reserved | | | 0 | Reserved | |
| 1 | Boot Architecture Info | | | 1 | Boot Architecture Info | |
| 2 | Power Management Profile Info | Move to Arch Common NS | | 2 | GICC Info | |
| 3 | GICC Info | | | 3 | GICD Info | |
| 4 | GICD Info | | | 4 | GIC MSI Frame Info | |
| 5 | GIC MSI Frame Info | | | 5 | GIC Redistributor Info | |
| 6 | GIC Redistributor Info | | | 6 | GIC ITS Info | |
| 7 | GIC ITS Info | | | 7 | Serial Console Port Info | Move to Arch Common NS |
| 8 | Serial Console Port Info | Move to Arch Common NS | | 8 | Serial Debug Port Info | Move to Arch Common NS |
| 9 | Serial Debug Port Info | Move to Arch Common NS | | 9 | Generic Timer Info | |
| 10 | Generic Timer Info | | | 10 | Platform GT Block Info | |
| 11 | Platform GT Block Info | | | 11 | Generic Timer Block Frame Info | |
| 12 | Generic Timer Block Frame Info | | | 12 | Platform Generic Watchdog | |
| 13 | Platform Generic Watchdog | | | 13 | PCI Configuration Space Info | Move to Arch Common NS |
| 14 | PCI Configuration Space Info | Move to Arch Common NS | | 14 | Hypervisor Vendor Id | Move to Arch Common NS |
| 15 | Hypervisor Vendor Id | Move to Arch Common NS | | 15 | Fixed feature flags for FADT | Move to Arch Common NS |
| 16 | Fixed feature flags for FADT | Move to Arch Common NS | | 16 | ITS Group | |
| 17 | ITS Group | | | 17 | Named Component | |
| 18 | Named Component | | | 18 | Root Complex | |
| 19 | Root Complex | | | 19 | SMMUv1 or SMMUv2 | |
| 20 | SMMUv1 or SMMUv2 | | | 20 | SMMUv3 | |
| 21 | SMMUv3 | | | 21 | PMCG | |
| 22 | PMCG | | | 22 | GIC ITS Identifier Array | |
| 23 | GIC ITS Identifier Array | | | 23 | ID Mapping Array | |
| 24 | ID Mapping Array | | | 24 | SMMU Interrupt Array | |
| 25 | SMMU Interrupt Array | | | 25 | Processor Hierarchy Info | Move to Arch Common NS |
| 26 | Processor Hierarchy Info | Move to Arch Common NS | | 26 | Cache Info | Move to Arch Common NS |
| 27 | Cache Info | Move to Arch Common NS | | 27 | CM Object Reference | Move to Arch Common NS |
| 28 | CM Object Reference | Move to Arch Common NS | | 28 | Memory Affinity Info | Move to Arch Common NS |
| 29 | Memory Affinity Info | Move to Arch Common NS | | 29 | Device Handle Acpi | Move to Arch Common NS |
| 30 | Device Handle Acpi | Move to Arch Common NS | | 30 | Device Handle PCI | Move to Arch Common NS |
| 31 | Device Handle PCI | Move to Arch Common NS | | 31 | Generic Initiator Affinity Info | Move to Arch Common NS |
| 32 | Generic Initiator Affinity Info | Move to Arch Common NS | | 32 | Serial Port Info | Move to Arch Common NS |
| 33 | Serial Port Info | Move to Arch Common NS | | 33 | CMN 600 Info | |
| 34 | CMN 600 Info | | | 34 | Low Power Idle State Info | Move to Arch Common NS |
| 35 | Low Power Idle State Info | Move to Arch Common NS | | 35 | PCI Address Map Info | Move to Arch Common NS |
| 36 | PCI Address Map Info | Move to Arch Common NS | | 36 | PCI Interrupt Map Info | Move to Arch Common NS |
| 37 | PCI Interrupt Map Info | Move to Arch Common NS | | 37 | Reserved Memory Range Node | |
| 38 | Reserved Memory Range Node | | | 38 | Memory Range Descriptor | |
| 39 | Memory Range Descriptor | | | 39 | Continuous Performance Control Info | Move to Arch Common NS |
| 40 | Continuous Performance Control Info | Move to Arch Common NS | | 40 | Pcc Subspace Type 0 Info | Move to Arch Common NS |
| 41 | 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 1 Info | Move to Arch Common NS | | 42 | Pcc Subspace Type 2 Info | Move to Arch Common NS |
| 43 | 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 3 Info | Move to Arch Common NS | | 44 | Pcc Subspace Type 4 Info | Move to Arch Common NS |
| 45 | Pcc Subspace Type 4 Info | Move to Arch Common NS | | 45 | Pcc Subspace Type 5 Info | Move to Arch Common NS |
| 46 | Pcc Subspace Type 5 Info | Move to Arch Common NS | | 46 | Embedded Trace Extension/Module Info | |
| 47 | Embedded Trace Extension/Module Info | | | 47 | P-State Dependency (PSD) Info | Move to Arch Common NS |
| 48 | P-State Dependency (PSD) Info | Move to Arch Common NS |
| `*` | All other values are reserved. | | | `*` | All other values are reserved. | |
#### Object ID's in the Arch Common Namespace: #### 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 | | ID | Description | Comments |
| ---: | :-------------------------- | :--- | | ---: | :-------------------------- | :--- |
| 0 | Reserved | | | 0 | Reserved | |
| 1 | Power Management Profile Info | |
| `*` | All other values are reserved. | | | `*` | All other values are reserved. | |