summaryrefslogtreecommitdiff
path: root/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c
diff options
context:
space:
mode:
authorAbdul Lateef Attar <AbdulLateef.Attar@amd.com>2025-06-11 13:34:44 +0300
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2025-06-19 20:43:41 +0300
commitf93da0727748fa2102e17e85bb43a28ff9007fe5 (patch)
treeddc0f99e5c577e5f3286d871d75e0d31ccd3a27d /DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c
parente4e29690f11f492ef929916dd1fa862f5ac25e2d (diff)
downloadedk2-f93da0727748fa2102e17e85bb43a28ff9007fe5.tar.xz
DynamicTablesPkg: Enhance SPCR support for interrupt and terminal types
Introduce optional configuration objects to specify interrupt and terminal types. When the platform supplies this information, the SPCR table is updated to reflect the provided values. If the interrupt type is 8259, the corresponding IRQ number is set in the SPCR table. Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
Diffstat (limited to 'DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c')
-rw-r--r--DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c b/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c
index c61caf80bd..a0f00ce2fa 100644
--- a/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c
+++ b/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c
@@ -874,6 +874,13 @@ STATIC CONST CM_OBJ_PARSER CmArchCommonMemoryCacheInfo[] = {
{ "CacheAttributes", 4, "0x%x", NULL,},
};
+/** A parser for EArchCommonObjSpcrInfo.
+*/
+STATIC CONST CM_OBJ_PARSER CmArchCommonObjSpcrInfoParser[] = {
+ { "InterruptType", 1, "0x%x", NULL },
+ { "TerminalType", 1, "0x%x", NULL }
+};
+
/** A parser for Arch Common namespace objects.
*/
STATIC CONST CM_OBJ_PARSER_ARRAY ArchCommonNamespaceObjectParser[] = {
@@ -922,6 +929,7 @@ STATIC CONST CM_OBJ_PARSER_ARRAY ArchCommonNamespaceObjectParser[] = {
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_RESERVED (EArchCommonObjMax)
};