acrn-hypervisor/misc/config_tools
Wu Zhou 41b2d6baee config-tools: generate CPU frequency limits
This patch is to generates frequency limits for each CPU, as a set of
data structure in hypervisor .c code.

With the frequency limits data, the hypervisor performance manager does
not have to deal with the CPU/board info. It just choose the
highest/lowest/guaranteed performance level and performance/nominal
p-state, and use them to construct HWP_REQUEST/PERF_CTL reg value.

How are frequency limits decided:
  - For CPUs in standard VMs, frequency limits are just decided by
    CPU/board info.
  - For CPUs assigned to RTVMs, we want certainty in latency, so just
    set its frequency to nominal/guaranteed by letting highest=lowest.
  - In some cases, CPUs are sharing frequency on hardware level
    (e.g. ADL e-cores in group of 4). This is described as _PSD in ACPI
    spec, or 'frequency domain' in Linux cpufreq driver. Thoese CPUs'
    frequency are linked together. If one of them are running RTVM,
    all other CPUs in the domain should be set to the same frequency.

Tracked-On: #8168
Signed-off-by: Wu Zhou <wu.zhou@intel.com>
Reviewed-by: Junjie Mao <junjie.mao@intel.com>
2022-10-08 11:13:21 +08:00
..
acpi_gen config_tools: acpi_gen: generate vRTCT instead of copying a physical one 2022-08-05 07:36:40 +08:00
acpi_template/template Update copyright year range in code headers 2022-07-15 11:48:35 +08:00
board_config config-tools: generate CPU frequency limits 2022-10-08 11:13:21 +08:00
board_inspector config-tools: extract CPU frequency info in board_inspector 2022-10-08 11:13:21 +08:00
configurator config-tools: check if the cpu_affinity is null 2022-10-08 10:31:11 +08:00
data Add configuration files for ASRock system, with Intel(R) 12th Gen Core(TM)CPU(formerly known as Alder Lake) and 32G memory. 2022-09-19 21:48:17 +08:00
hv_config Update copyright year range in code headers 2022-07-15 11:48:35 +08:00
launch_config config_tool: modify the launchscript template 2022-08-30 11:24:04 +08:00
library config-tools: generate CPU frequency limits 2022-10-08 11:13:21 +08:00
scenario_config config_tools: handle multiple xs:documentation properly 2022-09-21 15:15:38 +08:00
schema config-tools: add CPU performance policy option 2022-10-08 11:13:21 +08:00
service_vm_config Update copyright year range in code headers 2022-07-15 11:48:35 +08:00
static_allocators config-tools: generate CPU frequency limits 2022-10-08 11:13:21 +08:00
xforms misc: add config for P2SB 2022-08-31 10:43:33 +08:00
build.cmd config_tools: fix Windows config_tools package build script 2022-05-22 20:10:24 +08:00
LICENSE config_tools: packaging config tool scripts for easier import 2022-03-18 08:49:06 +08:00
MANIFEST.in config_tools: change JSON Schema source file 2022-05-13 11:13:42 +08:00
pyproject.toml config_tools: packaging config tool scripts for easier import 2022-03-18 08:49:06 +08:00
README.md config_tools: packaging config tool scripts for easier import 2022-03-18 08:49:06 +08:00
requirements.txt config-tools: modified requirements.txt and update GSG 2022-08-26 16:56:16 +08:00
setup.cfg config_tools: change JSON Schema source file 2022-05-13 11:13:42 +08:00

Supporting libraries of ACRN configuration toolset

This package contains the libraries supporting ACRN configuration toolset, including:

  • The manipulators and validators of scenario schemas or XMLs
  • The generator of guest ACPI tables

The main objective of this package is to ease the import of the supporting libraries in the ACRN configurator which uses a Python interpreter built in WebAssembly (WASM). This package is thus NOT intended to be used by users; invoke the Python scripts directly if needed.