diff --git a/misc/config_tools/schema/VMtypes.xsd b/misc/config_tools/schema/VMtypes.xsd index 9d2716662..f1e031972 100644 --- a/misc/config_tools/schema/VMtypes.xsd +++ b/misc/config_tools/schema/VMtypes.xsd @@ -5,7 +5,15 @@ - Description missing. + Current supported VM types are: + +- ``SAFETY_VM`` pre-launched Safety VM +- ``PRE_STD_VM`` pre-launched Standard VM +- ``PRE_RT_VM`` pre-launched real-time capable VM +- ``SOS_VM`` pre-launched Service VM +- ``POST_STD_VM`` post-launched Standard VM +- ``POST_RT_VM`` post-launched real-time capable VM +- ``KATA_VM`` post-launched Kata Container VM @@ -20,7 +28,15 @@ - Description missing. + +- 0, 0UL and empty string means there is no guest flag is enabled. +- ``GUEST_FLAG_SECURE_WORLD_ENABLED`` specify whether the secure world is + enabled +- ``GUEST_FLAG_LAPIC_PASSTHROUGH`` specify whether LAPIC is passed through +- ``GUEST_FLAG_IO_COMPLETION_POLLING`` specify whether the hypervisor needs + IO polling to completion +- ``GUEST_FLAG_HIDE_MTRR`` specify whether to hide MTRR from the VM +- ``GUEST_FLAG_RT`` specify whether the VM is RT-VM (real-time) @@ -38,7 +54,7 @@ - Description missing. + Select all applicable flags for the VM. @@ -48,7 +64,7 @@ - Description missing. + A pCPU that this VM's vCPU is allowed to pin to. @@ -58,7 +74,9 @@ - Description missing. + Configure 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. @@ -71,12 +89,12 @@ - Description missing. + SGX EPC section base, must be page aligned. - Description missing. + SGX EPC section size in Bytes, must be page aligned. @@ -86,12 +104,12 @@ - Description missing. + The start physical address in host for the VM. - Description missing. + The memory size in bytes for the VM. @@ -123,17 +141,20 @@ characters long. - Description missing. + Specify the kernel image type so that the hypervisor can load it correctly. +Currently supports ``KERNEL_BZIMAGE`` and ``KERNEL_ZEPHYR``. - Description missing. + The tag for the kernel image that acts as a multiboot module; it must +exactly match the module tag in the GRUB multiboot cmdline. - Description missing. + The tag for the ramdisk image, which acts as a multiboot module; it +must exactly match the module tag in the GRUB multiboot cmdline. @@ -143,12 +164,12 @@ characters long. - Description missing. + The loading address in host memory for the VM kernel. - Description missing. + The entry address in host memory for the VM kernel. @@ -156,7 +177,8 @@ characters long. - Description missing. + Specify the kernel image type so that the hypervisor can load it correctly. +Currently supports ``KERNEL_BZIMAGE`` and ``KERNEL_ZEPHYR``. @@ -212,27 +234,29 @@ characters long. - Description missing. + vUART (aka COM) type; currently only supports the legacy PIO mode. - Description missing. + vUART (A.K.A COM) enabling switch. Enable by exposing its COM_BASE +(SOS_COM_BASE for Service VM); disable by returning INVALID_COM_BASE. - Description missing. + vCOM IRQ. - Description missing. + COM2 is used for VM communications. When it is enabled, specify which +target VM the current VM connects to. - Description missing. + Target vUART ID to which the vCOM2 connects. @@ -241,7 +265,8 @@ characters long. - Description missing. + PCI based vUART enabling switch. Enable by specifying PCI_VUART; +disable by returning INVALID_PCI_BASE. @@ -253,7 +278,8 @@ characters long. - Description missing. + Console vUART (A.K.A PCI based vUART) enabling switch. + Enable by specifying PCI_VUART; disable by returning INVALID_PCI_BASE. @@ -264,17 +290,18 @@ characters long. - Description missing. + Communication vUART (A.K.A PCI based vUART) enabling switch. +Enable by specifying PCI_VUART; disable by returning INVALID_PCI_BASE. - Description missing. + specify which target VM the current VM connects to. - Description missing. + Target vUART ID to which the ``communication_vuart`` connects. @@ -285,12 +312,12 @@ characters long. - Description missing. + TPM2 device to passthrough. - Description missing. + Exposing the P2SB (Primary-to-Sideband) bridge to the pre-launched VM. @@ -300,7 +327,7 @@ characters long. - Description missing. + A passthrough pci device. @@ -310,12 +337,12 @@ characters long. - Description missing. + rootfs for the Linux kernel. - Description missing. + Specify kernel boot arguments for Service OS. diff --git a/misc/config_tools/schema/config.xsd b/misc/config_tools/schema/config.xsd index 9c653857d..bfb136007 100644 --- a/misc/config_tools/schema/config.xsd +++ b/misc/config_tools/schema/config.xsd @@ -27,11 +27,9 @@ are **not** available: Specify the host serial device used for hypervisor debugging. -This option is only valid if the Service VM :ref:`vm.legacy_vuart` is -enabled. Leave :option:`hv.DEBUG_OPTIONS.SERIAL_CONSOLE` empty if the -Service VM :ref:`vm.console_vuart` is enabled. Uses -:option:`vm.board_private.bootargs` for the :ref:`vm.console_vuart` -configuration. +This option is only valid if the Service VM 'legacy_vuart` is +enabled. Leave this filed empty if the Service VM's 'console_vuart` is enabled. Uses +`bootargs` for `console_vuart` configuration. @@ -107,8 +105,8 @@ boot option. Enable the Intel Resource Director Technology (RDT) -allocation feature. If the board hardware does not support -RDT, setting this option to ``y`` is ignored. +allocation feature and Code and Data Prioritization (CDP). If the board hardware does not +support RDT or CDP, setting this option to ``y`` is ignored. @@ -145,7 +143,7 @@ Machine Check Error on Page Size Change. - Description missing + Pseudo SRAM configuration. @@ -224,7 +222,7 @@ maximum supported resource. - Description missing. + >Maximum number of KATA VM. @@ -289,7 +287,7 @@ Leave blank if not sure.Integer from 1 to 2048. - Description missing + UEFI OS loader name. @@ -343,42 +341,65 @@ Refer SDM 17.19.2 for details, and use with caution. - Description missing + Specify SGX Enclave Page Cache section base and size in byte. It must be page aligned. - Description missing + Specify memory information for hypervisor, Service OS and User OS: + +- ``STACK_SIZE``: Capacity of one stack, in bytes. +- ``HV_RAM_SIZE``: Size of the RAM region used by the hypervisor. +- ``HV_RAM_STAR``: 2M-aligned Start physical address of the RAM region used by the hypervisor. +- ``LOW_RAM_SIZE``: Size of the low RAM region. +- ``SOS_RAM_SIZE``: Size of the Service OS (SOS) RAM. +- ``PLATFORM_RAM_SIZE``: Size of the physical platform RAM. - Description missing + General information for host kernel, boot argument and memory, +the following elements are configured in this section: + +- ``name``: Specify the OS name of VM; currently, it is not referenced by the hypervisor code. +- ``kern_type``: Specify the kernel image type so that the hypervisor can load it correctly. + Currently supports ``KERNEL_BZIMAGE`` and ``KERNEL_ZEPHYR``. +- ``kern_mod``: The tag for the kernel image that acts as a multiboot module; it must + exactly match the module tag in the GRUB multiboot cmdline. +- ``ramdisk_mod``: The tag for the ramdisk image, which acts as a multiboot module; it + must exactly match the module tag in the GRUB multiboot cmdline. +- ``bootargs``: For internal use only and is not configurable. Specify the kernel boot arguments + in ``bootargs`` under the parent of ``board_private``. +- ``kern_load_addr``: The loading address in host memory for the VM kernel. +- ``kern_entry_addr``: The entry address in host memory for the VM kernel. - Description missing + Specify the vUART (aka COM) with the vUART ID by its ``id`` attribute. +Refer to :ref:`vuart_config` for detailed vUART settings. - Description missing + Specify the console vUART (aka PCI based vUART) with the vUART ID by +its ``id`` attribute. - Description missing + Specify the communication vUART (aka PCI based vUART) with the vUART ID by +its ``id`` attribute. When it is enabled, specify which target VM's vuart the current VM connects to. - Description missing + MMIO resources to passthrough. - Description missing + PCI devices number of the VM. diff --git a/misc/config_tools/schema/types.xsd b/misc/config_tools/schema/types.xsd index 56a3d5394..70bd547df 100644 --- a/misc/config_tools/schema/types.xsd +++ b/misc/config_tools/schema/types.xsd @@ -100,10 +100,10 @@ recorded. - ``SCHED_NOOP``: The NOOP (No-Operation) scheduler means there is a strict 1 to 1 mapping between vCPUs and pCPUs. - ``SCHED_IORR``: The IORR (IO sensitive Round Robin) scheduler supports - multipule vCPUs running on on one pCPU, scheduled by + multiple vCPUs running on one pCPU, scheduled by a IO sensitive round robin policy. -- ``SCHED_BVT``: The BVT (Borrowed Virtual time) scheduler is a virtual time based - scheduling algorithm, it dispatchs the runnable thread with the +- ``SCHED_BVT``: The BVT (Borrowed Virtual Time) scheduler is a virtual time based + scheduling algorithm, it dispatches the runnable thread with the earliest effective virtual time. *TODO: BVT scheduler will be built on top of a prioritized scheduling mechanism, i.e. higher priority threads get scheduled first, and same priority tasks are scheduled per BVT.* @@ -172,22 +172,27 @@ size, and VM IDs that may communicate using this shared region: - Description missing. + Enable the Intel Resource Director Technology (RDT) +allocation feature. If the board hardware does not support +RDT, setting this option to ``y`` is ignored. - Description missing. + Specify whether to enable Code and Data Prioritization (CDP). +CDP is an extension of CAT. Set to 'y' to enable the feature or 'n' to disable it. +The 'y' will be ignored when hardware does not support CDP. - Description missing. + Specify the cache capacity bitmask for the CLOS; only continuous '1' bits +are allowed. The value will be ignored when hardware does not support RDT. - Description missing. + Memory Bandwidth Allocation delay value. @@ -195,7 +200,11 @@ size, and VM IDs that may communicate using this shared region: - + + + Enable PTCM (Platform Tuning Configuration Manager). + +