diff options
| author | Pierre Gondois <pierre.gondois@arm.com> | 2026-06-08 10:36:38 +0200 |
|---|---|---|
| committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2026-06-29 07:45:14 +0000 |
| commit | c70de6b4ed9c4525781ba5ba0fee94c237712e54 (patch) | |
| tree | 482e834a8ec704015e6c22e2c1e1464c62aa2df8 | |
| parent | 3ca262e05ca5e0b2674f12e9d73046b26011c40f (diff) | |
| download | edk2-c70de6b4ed9c4525781ba5ba0fee94c237712e54.tar.gz edk2-c70de6b4ed9c4525781ba5ba0fee94c237712e54.zip | |
DynamicTablesPkg/CmObjParser: Use common interrupt parser
CmArmDmc620PmuRegInfoParser only parses the interrupt field
without parsing the interrupt flags. Fix it.
Also make CmArmCmn600InfoParser use the common interrupt
parser instead of separately printing the interrupt number
and flag.
Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
| -rw-r--r-- | DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c | 36 |
1 files changed, 21 insertions, 15 deletions
diff --git a/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c b/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c index 92f9a0c110..dd97db16f8 100644 --- a/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c +++ b/DynamicTablesPkg/Library/Common/TableHelperLib/ConfigurationManagerObjectParser.c @@ -417,26 +417,32 @@ STATIC CONST CM_OBJ_PARSER CmArmDmc620PmuSocketInfoParser[] = { /** A parser for EArmObjDmc620PmuRegInfo.
*/
STATIC CONST CM_OBJ_PARSER CmArmDmc620PmuRegInfoParser[] = {
- { "BaseAddress", 8, "0x%llx", NULL },
- { "Length", 8, "0x%llx", NULL },
- { "PmuIntr", 4, "0x%x", NULL },
+ { "BaseAddress", 8, "0x%llx", NULL },
+ { "Length", 8, "0x%llx", NULL },
+ { "PmuIntr", sizeof (CM_ARCH_COMMON_GENERIC_INTERRUPT),
+ NULL, NULL, CmArchCommonGenericInterruptParser,
+ ARRAY_SIZE (CmArchCommonGenericInterruptParser) },
};
/** A parser for EArmObjCmn600Info.
*/
STATIC CONST CM_OBJ_PARSER CmArmCmn600InfoParser[] = {
- { "PeriphBaseAddress", 8, "0x%llx", NULL },
- { "PeriphBaseAddressLength", 8, "0x%llx", NULL },
- { "RootNodeBaseAddress", 8, "0x%llx", NULL },
- { "DtcCount", 1, "0x%x", NULL },
- { "DtcInterrupt[0]", 4, "0x%x", NULL },
- { "DtcFlags[0]", 4, "0x%x", NULL },
- { "DtcInterrupt[1]", 4, "0x%x", NULL },
- { "DtcFlags[1]", 4, "0x%x", NULL },
- { "DtcInterrupt[2]", 4, "0x%x", NULL },
- { "DtcFlags[2]", 4, "0x%x", NULL },
- { "DtcInterrupt[3]", 4, "0x%x", NULL },
- { "DtcFlags[3]", 4, "0x%x", NULL }
+ { "PeriphBaseAddress", 8, "0x%llx", NULL },
+ { "PeriphBaseAddressLength", 8, "0x%llx", NULL },
+ { "RootNodeBaseAddress", 8, "0x%llx", NULL },
+ { "DtcCount", 1, "0x%x", NULL },
+ { "DtcIntr[0]", sizeof (CM_ARCH_COMMON_GENERIC_INTERRUPT),
+ NULL, NULL, CmArchCommonGenericInterruptParser,
+ ARRAY_SIZE (CmArchCommonGenericInterruptParser) },
+ { "DtcIntr[1]", sizeof (CM_ARCH_COMMON_GENERIC_INTERRUPT),
+ NULL, NULL, CmArchCommonGenericInterruptParser,
+ ARRAY_SIZE (CmArchCommonGenericInterruptParser) },
+ { "DtcIntr[2]", sizeof (CM_ARCH_COMMON_GENERIC_INTERRUPT),
+ NULL, NULL, CmArchCommonGenericInterruptParser,
+ ARRAY_SIZE (CmArchCommonGenericInterruptParser) },
+ { "DtcIntr[3]", sizeof (CM_ARCH_COMMON_GENERIC_INTERRUPT),
+ NULL, NULL, CmArchCommonGenericInterruptParser,
+ ARRAY_SIZE (CmArchCommonGenericInterruptParser) },
};
/** A parser for the EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE structure.
|
