diff --git a/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h b/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h index 58a137e905..6de57dbbf2 100644 --- a/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h +++ b/DynamicTablesPkg/Include/ArchCommonNameSpaceObjects.h @@ -45,6 +45,7 @@ typedef enum ArchCommonObjectID { EArchCommonObjPccSubspaceType3Info, ///< 22 - Pcc Subspace Type 3 Info EArchCommonObjPccSubspaceType4Info, ///< 23 - Pcc Subspace Type 4 Info EArchCommonObjPccSubspaceType5Info, ///< 24 - Pcc Subspace Type 5 Info + EArchCommonObjPsdInfo, ///< 25 - P-State Dependency (PSD) Info EArchCommonObjMax } EARCH_COMMON_OBJECT_ID; @@ -642,6 +643,15 @@ typedef struct CmArchCommonPccSubspaceType5Info { PCC_MAILBOX_REGISTER_INFO ErrorStatusReg; } CM_ARCH_COMMON_PCC_SUBSPACE_TYPE5_INFO; +/** A structure that describes a + P-State Dependency (PSD) Info. + + Cf. ACPI 6.5, s8.4.5.5 _PSD (P-State Dependency). + + ID: EArchCommonObjPsdInfo +*/ +typedef AML_PSD_INFO CM_ARCH_COMMON_PSD_INFO; + #pragma pack() #endif // ARCH_COMMON_NAMESPACE_OBJECTS_H_ diff --git a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h index 724e614bb6..958c3dc93c 100644 --- a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h +++ b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h @@ -52,7 +52,6 @@ typedef enum ArmObjectID { EArmObjRmr, ///< 21 - Reserved Memory Range Node EArmObjMemoryRangeDescriptor, ///< 22 - Memory Range Descriptor EArmObjEtInfo, ///< 23 - Embedded Trace Extension/Module Info - EArmObjPsdInfo, ///< 24 - P-State Dependency (PSD) Info EArmObjMax } EARM_OBJECT_ID; @@ -188,7 +187,7 @@ typedef struct CmArmGicCInfo { CM_OBJECT_TOKEN EtToken; /** Optional field: Reference Token for the Psd info of this processor. - i.e. a token referencing a CM_ARM_PSD_INFO object. + i.e. a token referencing a CM_ARCH_COMMON_PSD_INFO object. */ CM_OBJECT_TOKEN PsdToken; } CM_ARM_GICC_INFO; @@ -724,15 +723,6 @@ typedef struct CmArmEtInfo { ARM_ET_TYPE EtType; } CM_ARM_ET_INFO; -/** A structure that describes a - P-State Dependency (PSD) Info. - - Cf. ACPI 6.5, s8.4.5.5 _PSD (P-State Dependency). - - ID: EArmObjPsdInfo -*/ -typedef AML_PSD_INFO CM_ARM_PSD_INFO; - #pragma pack() #endif // ARM_NAMESPACE_OBJECTS_H_ diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtCpuTopologyLibArm/SsdtCpuTopologyGenerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtCpuTopologyLibArm/SsdtCpuTopologyGenerator.c index 8c9d1258b2..2deaa4640c 100644 --- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtCpuTopologyLibArm/SsdtCpuTopologyGenerator.c +++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtCpuTopologyLibArm/SsdtCpuTopologyGenerator.c @@ -42,7 +42,7 @@ Requirements: - EArchCommonObjCmRef (OPTIONAL) - EArchCommonObjLpiInfo (OPTIONAL) - GetEArmObjEtInfo (OPTIONAL) - - EArmObjPsdInfo (OPTIONAL) + - EArchCommonObjPsdInfo (OPTIONAL) */ /** This macro expands to a function that retrieves the GIC @@ -109,9 +109,9 @@ GET_OBJECT_LIST ( information from the Configuration Manager. */ GET_OBJECT_LIST ( - EObjNameSpaceArm, - EArmObjPsdInfo, - CM_ARM_PSD_INFO + EObjNameSpaceArchCommon, + EArchCommonObjPsdInfo, + CM_ARCH_COMMON_PSD_INFO ); /** Initialize the TokenTable. @@ -313,10 +313,10 @@ CreateAmlPsdNode ( IN AML_OBJECT_NODE_HANDLE *Node ) { - EFI_STATUS Status; - CM_ARM_PSD_INFO *PsdInfo; + EFI_STATUS Status; + CM_ARCH_COMMON_PSD_INFO *PsdInfo; - Status = GetEArmObjPsdInfo ( + Status = GetEArchCommonObjPsdInfo ( CfgMgrProtocol, GicCInfo->PsdToken, &PsdInfo, diff --git a/DynamicTablesPkg/Library/Common/DynamicPlatRepoLib/CmObjectTokenFixer.c b/DynamicTablesPkg/Library/Common/DynamicPlatRepoLib/CmObjectTokenFixer.c index 05fbdadf15..5325b20743 100644 --- a/DynamicTablesPkg/Library/Common/DynamicPlatRepoLib/CmObjectTokenFixer.c +++ b/DynamicTablesPkg/Library/Common/DynamicPlatRepoLib/CmObjectTokenFixer.c @@ -166,8 +166,7 @@ CM_OBJECT_TOKEN_FIXER TokenFixer[EArmObjMax] = { NULL, ///< 20 - CMN-600 Info NULL, ///< 21 - Reserved Memory Range Node NULL, ///< 22 - Memory Range Descriptor - NULL, ///< 23 - Embedded Trace Extension/Module Info - NULL ///< 24 - P-State Dependency (PSD) Info + NULL ///< 23 - Embedded Trace Extension/Module Info }; /** CmObj token fixer. diff --git a/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c b/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c index da7901a2c4..e726b2c616 100644 --- a/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c +++ b/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c @@ -658,9 +658,9 @@ STATIC CONST CM_OBJ_PARSER CmArmEtInfo[] = { { "EtType", sizeof (ARM_ET_TYPE), "0x%x", NULL } }; -/** A parser for EArmObjPsdInfo. +/** A parser for EArchCommonObjPsdInfo. */ -STATIC CONST CM_OBJ_PARSER CmArmPsdInfoParser[] = { +STATIC CONST CM_OBJ_PARSER CmArchCommonPsdInfoParser[] = { { "Revision", 1, "0x%x", NULL }, { "DomainId", 4, "0x%x", NULL }, { "CoordType", 4, "0x%x", NULL }, @@ -695,6 +695,7 @@ STATIC CONST CM_OBJ_PARSER_ARRAY ArchCommonNamespaceObjectParser[] = { 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_RESERVED (EArchCommonObjMax) }; @@ -725,7 +726,6 @@ STATIC CONST CM_OBJ_PARSER_ARRAY ArmNamespaceObjectParser[] = { CM_PARSER_ADD_OBJECT (EArmObjRmr, CmArmRmrInfoParser), CM_PARSER_ADD_OBJECT (EArmObjMemoryRangeDescriptor, CmArmMemoryRangeDescriptorInfoParser), CM_PARSER_ADD_OBJECT (EArmObjEtInfo, CmArmEtInfo), - CM_PARSER_ADD_OBJECT (EArmObjPsdInfo, CmArmPsdInfoParser), CM_PARSER_ADD_OBJECT_RESERVED (EArmObjMax) }; diff --git a/DynamicTablesPkg/Readme.md b/DynamicTablesPkg/Readme.md index d4c95a3c42..7790b14636 100644 --- a/DynamicTablesPkg/Readme.md +++ b/DynamicTablesPkg/Readme.md @@ -464,7 +464,6 @@ The CM_OBJECT_ID type is used to identify the Configuration Manager | 21 | Reserved Memory Range Node | | | 22 | Memory Range Descriptor | | | 23 | Embedded Trace Extension/Module Info | | -| 24 | P-State Dependency (PSD) Info | Move to Arch Common NS | | `*` | All other values are reserved. | | #### Object ID's in the Arch Common Namespace: @@ -496,5 +495,6 @@ The CM_OBJECT_ID type is used to identify the Configuration Manager | 22 | Pcc Subspace Type 3 Info | | | 23 | Pcc Subspace Type 4 Info | | | 24 | Pcc Subspace Type 5 Info | | +| 25 | P-State Dependency (PSD) Info | | | `*` | All other values are reserved. | |