From 443a030cf82deefa464b598c47eca23ce20dd2e3 Mon Sep 17 00:00:00 2001 From: Xin Zhang Date: Fri, 22 Sep 2023 16:17:23 +0800 Subject: [PATCH] Support ACPI MCFG multi tables boards for board_inspector Some motherboards exposes MCFG1/MCFG2 instead of one ACPI MCFG table, thus no /sys/firmware/acpi/tables/MCFG exists but MCFG1 and MCFG2. Read MCFG1 if MCFG doesn't exist. The same issue report/fix is at https://github.com/intel/pcm/issues/74. Tracked-On: #8514 Signed-off-by: Xin Zhang --- misc/config_tools/board_inspector/legacy/acpi.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/misc/config_tools/board_inspector/legacy/acpi.py b/misc/config_tools/board_inspector/legacy/acpi.py index b988a9e06..4a0f84244 100644 --- a/misc/config_tools/board_inspector/legacy/acpi.py +++ b/misc/config_tools/board_inspector/legacy/acpi.py @@ -576,6 +576,10 @@ def store_px_data(sysnode, config): def store_mmcfg_base_data(mmcfg_node, config): + # in case there're MCFG1/MCFG2 instead of MCFG + if not os.path.exists(mmcfg_node): + mmcfg_node += "1" + print("\t/* PCI mmcfg base of MCFG */", file=config) with open(mmcfg_node, 'rb') as mmcfg: mmcfg.read(MCFG_OFFSET)