acrn-hypervisor/hypervisor
Junjie Mao 1f305beba9 config_tools: add a script that focuses on XML validation
Today the XML validation logic is embedded in scenario_cfg_gen.py which is
highly entangled with the Python-internal representation of
configurations. Such representation is used by the current configurator,
but will soon be obsolete when the new configurator is introduced.

In order to avoid unnecessary work on this internal representation when we
refine the schema of scenario XML files, this patch separates the
validation logic into a new script which can either be used from the
command line or imported in other Python-based applications. At build time
this script will be used instead to validate the XML files given by users.

This change makes it easier to refine the current configuration items for
better developer experience.

Migration of existing checks in scenario_cfg_gen.py to XML schema will be
done by a following series.

v2 -> v3:
 * Keep Invoking asl_gen.py to generate vACPI tables for pre-launched VMs.

v1 -> v2:
 * Remove "all rights reserved" from the license header
 * Upgrade the severity of the message indicating lack of xmlschema as
   error according to our latest definitions of log severities, as
   validation violations could indicate build time or boot time failures.

Tracked-On: #6690
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
2022-01-26 14:19:01 +08:00
..
acpi_parser hv: rename CONFIG_GPU_SBDF to CONFIG_IGD_SBDF 2021-11-28 14:23:29 +08:00
arch/x86 hv: fix bug when set MSR_IA32_COPY_PLATFORM_TO_LOCAL before setting MSR_IA32_COPY_LOCAL_TO_PLATFORM 2022-01-21 14:35:59 +08:00
boot HV: prepare adaptable guest EFI mmap buffer 2021-11-08 09:49:24 +08:00
bsp/ld HV: fix MISRA violation of _ld_ram_xxx 2021-11-26 16:45:17 +08:00
common hv && config-tool: Add compilation option to disable all interrupts in HV 2021-12-10 09:50:17 +08:00
debug hv: remove CONFIG_LOG_DESTINATION 2021-12-06 14:24:40 +08:00
dm hv: rename CONFIG_GPU_SBDF to CONFIG_IGD_SBDF 2021-11-28 14:23:29 +08:00
hw hv: Add checks in pci_enumerate_ext_cap to guard against malformed lists 2021-12-09 10:47:16 +08:00
include hv: fix violations of coding guideline C-FN-16 2022-01-13 08:29:02 +08:00
lib HV: treewide: fix violations of coding guideline C-TY-12 2021-11-04 18:15:47 +08:00
quirks hv: Avoid using SMBIOS major version 2021-09-08 15:22:12 +08:00
release hv: remove CONFIG_LOG_DESTINATION 2021-12-06 14:24:40 +08:00
scripts config_tools: add a script that focuses on XML validation 2022-01-26 14:19:01 +08:00
MAINTAINERS update home page information 2018-05-15 17:19:39 +08:00
Makefile hv: tee: add TEE VM memmap support 2021-11-17 15:25:14 +08:00
README.rst doc: fix utf-8 punctuation, branding, spelling 2019-03-14 09:13:58 -07:00

README.rst

ACRN Hypervisor
###############

The open source `Project ACRN`_ defines a device hypervisor reference stack and
an architecture for running multiple software subsystems, managed securely, on
a consolidated system by means of a virtual machine manager. It also defines a
reference framework implementation for virtual device emulation, called the
"ACRN Device Model".

The ACRN Hypervisor is a Type 1 reference hypervisor stack, running directly on
the bare-metal hardware, and is suitable for a variety of IoT and embedded
device solutions. The ACRN hypervisor addresses the gap that currently exists
between datacenter hypervisors, and hard partitioning hypervisors. The ACRN
hypervisor architecture partitions the system into different functional
domains, with carefully selected guest OS sharing optimizations for IoT and
embedded devices.

You can find out more about Project ACRN on the `Project ACRN documentation`_
website.

.. _`Project ACRN`: https://projectacrn.org
.. _`ACRN Hypervisor`: https://github.com/projectacrn/acrn-hypervisor
.. _`Project ACRN documentation`: https://projectacrn.github.io/