acrn-hypervisor/misc/config_tools/board_inspector
Junjie Mao 89d54aa5d1 config_tools: board_inspector: record all details from RTCT in board XML
Today users still need to manually copy the RTCT binary file when they want
to passthrough software SRAM to a pre-launched RTVM, which is far from
being user friendly.

To get rid of that step, this patch extracts all information from the RTCT
table and format them in the board XML which is the only file users need to
copy from their target platform to build the hypervisor. The patch that
immediately follows will then use such information to generate vRTCT for
the pre-launched VM.

A side effect of this change is that more ranges, which represents those
reported by RTCT such as the CRL binary or the error log area, will be
added to the `memory` section of the board XML. The `id` attributes of
those range will be used to identify what that range is for. As a result,
getting RAM of the physical platform from the board XML requires additional
conditions on the `id` attributes to avoid counting non-RAM regions
unintendedly.

Tracked-On: #7947
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
2022-08-05 07:36:40 +08:00
..
acpiparser config_tools: board_inspector: refactor ACPI RTCT parser 2022-08-05 07:36:40 +08:00
cpuparser Update copyright year range in code headers 2022-07-15 11:48:35 +08:00
extractors config_tools: board_inspector: record all details from RTCT in board XML 2022-08-05 07:36:40 +08:00
inspectorlib Update copyright year range in code headers 2022-07-15 11:48:35 +08:00
legacy config_tools: board_inspector: record all details from RTCT in board XML 2022-08-05 07:36:40 +08:00
memmapparser Update copyright year range in code headers 2022-07-15 11:48:35 +08:00
pcieparser Update copyright year range in code headers 2022-07-15 11:48:35 +08:00
schema config_tools: add BIOS invalid setting check 2022-03-30 09:43:31 +08:00
smbiosparser Update copyright year range in code headers 2022-07-15 11:48:35 +08:00
board_inspector.py config-tools: hide the 'update-pciids: download failed' message 2022-07-17 16:30:53 +08:00
README config-tools: remove 'nomwait' from board_inspector's requirement 2022-04-30 17:06:23 +08:00

board_parser.py will collect all board related info and then generate a board info file for acrn-config host tool usage.

usage: python3 board_inspector.py <board_name> [--out board_info_file]

board_name : the name of board that run ACRN hypervisor, like apl-up2/nuc7i7dnb. It will be used as name of the board configurations folder which created by acrn-config host tool.
board_info_file : (optional) the name of board info file. if it is not specified, a name of <board_name>.xml will be generated under the current working directory by default.

Please run this script under native Linux environment with root privilege.

OS requirement:
	Release:	Ubuntu 18.04+
	Tools:		cpuid, rdmsr, lspci, lxml, dmidecode (optional)
	kernel cmdline: "iomem=relaxed intel_idle.max_cstate=0 intel_pstate=disable" or
			"idle=nomwait iomem=relaxed intel_idle.max_cstate=0 intel_pstate=disable" for Apollo Lake