diff --git a/misc/config_tools/acpi_gen/asl_gen.py b/misc/config_tools/acpi_gen/asl_gen.py index bd41b239f..3b5343db8 100644 --- a/misc/config_tools/acpi_gen/asl_gen.py +++ b/misc/config_tools/acpi_gen/asl_gen.py @@ -737,12 +737,7 @@ def gen_dsdt(board_etree, scenario_etree, allocation_etree, vm_id, dest_path): builder.build_value(0)))) objects.add_object("\\", s5_object) - rtvm = False - for guest_flag in scenario_etree.xpath(f"//vm[@id='{vm_id}']/guest_flags/guest_flag/text()"): - if guest_flag == 'GUEST_FLAG_LAPIC_PASSTHROUGH': - rtvm = True - break - + rtvm = bool(scenario_etree.xpath(f"//vm[@id='{vm_id}']//lapic_passthrough[text()='y']")) # RTVM cannot set IRQ because no INTR is sent with LAPIC PT if rtvm is False: objects.add_object("\\_SB_", pnp_uart("UAR0", 0, "COM1", 0x3f8, 4)) diff --git a/misc/config_tools/schema/VMtypes.xsd b/misc/config_tools/schema/VMtypes.xsd index 2e6bd5366..2d76c43e0 100644 --- a/misc/config_tools/schema/VMtypes.xsd +++ b/misc/config_tools/schema/VMtypes.xsd @@ -37,54 +37,6 @@ - - - -- ``0``, ``0UL``, or an empty string means no guest flags are enabled. -- ``GUEST_FLAG_SECURE_WORLD_ENABLED`` specify that the secure world is - enabled -- ``GUEST_FLAG_LAPIC_PASSTHROUGH`` specify that LAPIC is passed through -- ``GUEST_FLAG_IO_COMPLETION_POLLING`` specify that the hypervisor needs - IO polling to completion -- ``GUEST_FLAG_HIDE_MTRR`` specify that MTRR is hidden from the VM -- ``GUEST_FLAG_RT`` specify that the VM is an RT-VM (real-time) -- ``GUEST_FLAG_NVMX_ENABLED`` specify that the VM supports nested virtualization -- ``GUEST_FLAG_SECURITY_VM`` specify that the VM needs to do security-vm related -- ``GUEST_FLAG_VCAT_ENABLED`` specify that the VM supports CAT virtualization - fixup (TPM2 passthrough and SMBIOS passthrough) - - - - - - - - - - - - - - - - - - - - - - - Select all applicable flags for the VM. - - - - - - If the GUEST_FLAG_NVMX_ENABLED is set, GUEST_FLAG_LAPIC_PASSTHROUGH must be set as well. - - - - @@ -100,11 +52,11 @@ to. - By default (``GUEST_FLAG_VCAT_ENABLED`` is not specified): + By default (``virtual_cat_support`` is not specified): vcpu_clos is per-CPU and it configures each CPU in VMs to a desired CLOS ID in the ``VM`` section of the scenario file. Follow :ref:`rdt_detection_capabilities` to identify the maximum supported CLOS ID that can be used. -If ``GUEST_FLAG_VCAT_ENABLED`` is specified: +If ``virtual_cat_support`` is specified: vcpu_clos is not per-CPU anymore, just a list of physical CLOSIDs (minimum 2) that are assigned to VMs for vCAT use. Each vcpu_clos will be mapped to a virtual CLOSID, the first vcpu_clos is mapped to virtual CLOSID 0 and the second is mapped to virtual CLOSID 1, etc. diff --git a/misc/config_tools/schema/config.xsd b/misc/config_tools/schema/config.xsd index 3a58e7fde..0556711e6 100644 --- a/misc/config_tools/schema/config.xsd +++ b/misc/config_tools/schema/config.xsd @@ -119,11 +119,6 @@ support RDT or CDP, setting this option to ``y`` is ignored. Enable Hyper-V. - - - Enable nested virtualization. - - Specify if the IOMMU enforces snoop behavior @@ -159,7 +154,6 @@ Machine Check Error on Page Size Change. - @@ -329,9 +323,39 @@ hypervisor console ``vm_list`` command. - - - Select all applicable flags for the VM. + + + Specify LAPIC to passthrough. + + + + + Specify Polling mode for IO Completion. + + + + + Specify nested virtualization support for KVM. + + + + + Specify virtual CAT support for VM. + + + + + Specify secure world support for trustry OS. + + + + + Specify MTRR capability to hide for VM. + + + + + Specify TPM2 FIXUP for VM. @@ -417,9 +441,9 @@ its ``id`` attribute. When it is enabled, specify which target VM's vUART the cu - + - Service VM cannot use LAPIC passthrough unless GUEST_FLAG_NVMX_ENABLED is set. + Service VM cannot use LAPIC passthrough unless nested_virtualization_support is set. @@ -446,12 +470,6 @@ to launch post-launched User VMs. - - - Per VM GUEST_FLAG_NVMX_ENABLED can be set only if CONFIG_NVMX_ENABLED is set. - - - @@ -460,17 +478,17 @@ to launch post-launched User VMs. - 0) then //RDT_ENABLED = 'y' and //VCAT_ENABLED = 'y' else true()"> - Per VM GUEST_FLAG_VCAT_ENABLED can be set only when RDT_ENABLED is 'y' and VCAT_ENABLED is 'y'. + Per VM virtual_cat_support can be set only when RDT_ENABLED is 'y' and VCAT_ENABLED is 'y'. For a vCAT VM, vcpu_clos cannot be set to CLOSID 0, CLOSID 0 is reserved to be used by hypervisor @@ -490,7 +508,7 @@ to launch post-launched User VMs. - + + + + + + + - + # CONFIG_ diff --git a/misc/config_tools/xforms/config_common.xsl b/misc/config_tools/xforms/config_common.xsl index b89d9d6ec..df5ae9fd8 100644 --- a/misc/config_tools/xforms/config_common.xsl +++ b/misc/config_tools/xforms/config_common.xsl @@ -116,8 +116,9 @@ - + + diff --git a/misc/config_tools/xforms/vm_configurations.c.xsl b/misc/config_tools/xforms/vm_configurations.c.xsl index a6c642788..9d27617c1 100644 --- a/misc/config_tools/xforms/vm_configurations.c.xsl +++ b/misc/config_tools/xforms/vm_configurations.c.xsl @@ -91,7 +91,7 @@ - + @@ -156,17 +156,9 @@ - - - - - - - - - - - + + + @@ -175,7 +167,7 @@ - +