diff --git a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
index ca02970d7a..8c00bdac20 100644
--- a/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
+++ b/DynamicTablesPkg/Include/ArmNameSpaceObjects.h
@@ -1,6 +1,6 @@
/** @file
- Copyright (c) 2017 - 2022, Arm Limited. All rights reserved.
+ Copyright (c) 2017 - 2023, Arm Limited. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
@@ -71,6 +71,7 @@ typedef enum ArmObjectID {
EArmObjPccSubspaceType3Info, ///< 46 - Pcc Subspace Type 3 Info
EArmObjPccSubspaceType4Info, ///< 47 - Pcc Subspace Type 4 Info
EArmObjPccSubspaceType5Info, ///< 48 - Pcc Subspace Type 5 Info
+ EArmObjEtInfo, ///< 49 - Embedded Trace Extension/Module Info
EArmObjMax
} EARM_OBJECT_ID;
@@ -210,6 +211,12 @@ typedef struct CmArmGicCInfo {
generating MADT revision 5 or lower.
*/
UINT16 TrbeInterrupt;
+
+ /** Optional field: Reference Token for the Embedded Trace device info for
+ this processing element.
+ i.e. a token referencing a CM_ARM_ET_INFO object.
+ */
+ CM_OBJECT_TOKEN EtToken;
} CM_ARM_GICC_INFO;
/** A structure that describes the
@@ -1304,6 +1311,22 @@ typedef struct CmArmPccSubspaceType5Info {
PCC_MAILBOX_REGISTER_INFO ErrorStatusReg;
} CM_ARM_PCC_SUBSPACE_TYPE5_INFO;
+/** An enum describing the Arm Embedded Trace device type.
+*/
+typedef enum ArmEtType {
+ ArmEtTypeEtm, ///< Embedded Trace module.
+ ArmEtTypeEte, ///< Embedded Trace Extension.
+ ArmEtTypeMax
+} ARM_ET_TYPE;
+
+/** A structure that describes the Embedded Trace Extension/Module.
+
+ ID: EArmObjEtInfo
+*/
+typedef struct CmArmEtInfo {
+ ARM_ET_TYPE EtType;
+} CM_ARM_ET_INFO;
+
#pragma pack()
#endif // ARM_NAMESPACE_OBJECTS_H_