Commit Graph

321 Commits

Author SHA1 Message Date
Weiyi Feng
d56e241228 config_tools: add cpu_affinity cmdline at scenario set "SCHED_NOOP"
add cpu_affinity cmdline at scenario set "SCHED_NOOP"

Tracked-On: #6961
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2021-12-23 16:40:42 +08:00
Yang,Yu-chu
29bc085db9 config-tools: remove unused python scripts under scenario_config
Remove following scripts and calling thread:
 - misc/config_tools/scenario_config/ivshmem_cfg_h.py
 - misc/config_tools/scenario_config/pci_dev_c.py
 - misc/config_tools/scenario_config/pt_intx_c.py
 - misc/config_tools/scenario_config/vm_configurations_c.py
 - misc/config_tools/scenario_config/vm_configurations_h.py

Tracked-On: #6962
Signed-off-by: Yang,Yu-chu <yu-chu.yang@intel.com>
Reviewed-by: Junjie Mao <junjie.mao@intel.com>
Acked-by: Anthony Xu <anthony.xu@intel.com>
2021-12-16 10:07:12 +08:00
Yang,Yu-chu
ae998f157e config-tools: generate ACFG_MAX_PCI_BUS_NUM based on board.xml
Extract the max pci bus number from board information and generate the
common configuration macro ACFG_MAX_PCI_BUS_NUM automatically.

Tracked-On: #6942
Signed-off-by: Yang,Yu-chu <yu-chu.yang@intel.com>
2021-12-13 11:06:10 +08:00
Yifan Liu
5c9456462b hv && config-tool: Add compilation option to disable all interrupts in HV
This patch adds an option CONFIG_KEEP_IRQ_DISABLED to hv (default n) and
config-tool so that when this option is 'y', all interrupts in hv root
mode will be permanently disabled.

With this option to be 'y', all interrupts received in root mode will be
handled in external interrupt vmexit after next VM entry. The postpone
latency is negligible. This new configuration is a requirement from x86
TEE's secure/non-secure interrupt flow support. Many race conditions can be
avoided when keeping IRQ off.

v5:
Rename CONFIG_ACRN_KEEP_IRQ_DISABLED to CONFIG_KEEP_IRQ_DISABLED

v4:
Change CPU_IRQ_ENABLE/DISABLE to
CPU_IRQ_ENABLE_ON_CONFIG/DISABLE_ON_CONFIG and guard them using
CONFIG_ACRN_KEEP_IRQ_DISABLED

v3:
CONFIG_ACRN_DISABLE_INTERRUPT -> CONFIG_ACRN_KEEP_IRQ_DISABLED
Add more comment in commit message

Tracked-On: #6571
Signed-off-by: Yifan Liu <yifan1.liu@intel.com>
Reviewed-by: Wang, Yu1 <yu1.wang@intel.com>
Acked-by: Anthony Xu <anthony.xu@intel.com>
2021-12-10 09:50:17 +08:00
Kunhui-Li
0a5663c442 config_tools: rename sdc.xml to shared.xml on qemu platform
rename sdc.xml to shared.xml on qemu platform

Tracked-On: #6315
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-12-08 14:04:37 +08:00
Kunhui-Li
821c450520 config_tools:doc: sync with release_2.7 for XSD files
update "bootargs" documentation to keep with release_2.7 branch
in VMtype.xsd.

Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-12-06 17:39:49 -08:00
Kunhui-Li
de5abd5265 config_tools: remove CONFIG_LOG_DESTINATION
1. remove LOG_DESTINATION in the related python code, schema and
all existing scenario XML files.
2. for MEM_LOGLEVEL, NPK_LOGLEVEL and CONSOLE_LOGLEVEL,
update the loglevel range to [0, 5] from [0, 6].

Tracked-On: #6934
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
Acked-by: Anthony Xu <anthony.xu@intel.com>
2021-12-06 14:24:40 +08:00
Kunhui-Li
11fb6341be config_tools: remove LOG_BUF_SIZE
remove LOG_BUF_SIZE in the related python code, schema and
all existing scenario XML files.

Tracked-On: #6690
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
Acked-by: Anthony Xu <anthony.xu@intel.com>
2021-12-01 08:53:33 +08:00
Shiqing Gao
71da1bed9b config_tools: check VM number before filling with dynamic configured VM
check VM number before filling with dynamic configured VM

Tracked-On: #6907
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2021-12-01 08:44:33 +08:00
Mingqiang Chi
74acdcf6e1 misc: remove DM_OWNED_GUEST_FLAG_MASK
remove this MACRO since it has moved to vm_config.h

Tracked-On: #6366
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
2021-11-28 14:35:25 +08:00
Kunhui-Li
07abcf9e77 config_tools: remove DM_OWNED_GUEST_FLAG_MASK
Because it is not configurable, config tool might not need to
define DM_OWNED_GUEST_FLAG_MASK. So we remove it in tool.

Tracked-On: #6366
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-28 14:35:25 +08:00
Kunhui-Li
bded332620 config_tools: remove GUEST_FLAG_SECURITY_VM in DM_OWNED_GUEST_FLAG_MASK
GUEST_FLAG_SECURITY_VM only for pre-launch vm, should not be
programmed by device model, so we remove it in DM_OWNED_GUEST_FLAG_MASK.

Tracked-On: #6366
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-28 14:35:25 +08:00
Yang,Yu-chu
30951f7a83 hv: rename CONFIG_GPU_SBDF to CONFIG_IGD_SBDF
The name CONFIG_IGD_SBDF indicates the bdf of an integrated GPU on platform.

Tracked-On: #6855
Signed-off-by: Yang,Yu-chu <yu-chu.yang@intel.com>
2021-11-28 14:23:29 +08:00
Yang,Yu-chu
68136b7f7a config-tools: get GPU_SBDF automatically
Get the integrated GPU bdf by looking for device from board.xml and extract the
BDF from device address.

Tracked-On: #6855
Signed-off-by: Yang,Yu-chu <yu-chu.yang@intel.com>
2021-11-28 14:23:29 +08:00
Weiyi Feng
93d4e92273 config_tool: load default cpu affinity config by vm_name
1. load default cpu affinity config from scenario file by vm_name.

Tracked-On: #6724
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2021-11-26 16:48:05 +08:00
Kunhui-Li
711619f92e config_tools: remove CONFIG_MAX_IR_ENTRIES
remove CONFIG_MAX_IR_ENTRIES the related python code, schema and
all existing scenario XML files since PR #6809 have changed it.

Tracked-On: #6745
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-25 13:37:22 +08:00
Kunhui-Li
11230765c1 config_tools: remove LOW_RAM_SIZE
remove LOW_RAM_SIZE in the related python code, schema and
all existing scenario XMLs because PR #6791 have removed it.

Tracked-On: #6805
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-24 20:54:57 +08:00
Jie Deng
c4d59c8f91 hv: tee: Support the concept of companion VM
Add a configuration to support companion VM.

Tracked-On: #6571
Signed-off-by: Jie Deng <jie.deng@intel.com>
Reviewed-by: Wang, Yu1 <yu1.wang@intel.com>
2021-11-17 15:25:14 +08:00
Jie Deng
71ae0fdabf hv: tee: add VM flags for x86_tee support
Add two VM flags for x86_tee. GUEST_FLAG_TEE for TEE VM,
GUEST_FLAG_REE for normal rich VM.

Tracked-On: #6571
Signed-off-by: Jie Deng <jie.deng@intel.com>
Reviewed-by: Wang, Yu1 <yu1.wang@intel.com>
2021-11-17 15:25:14 +08:00
Kunhui-Li
4ee4835d47 config_tools: update files under generic_code directory
update files under generic_code directory with the latest code.

Tracked-On: #6663
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-17 08:56:57 +08:00
Weiyi Feng
aed2187773 config_tools: filled vm to MAX_VM_NUM in vm_configurations.c
filled vm to MAX_VM_NUM in vm_configurations.c

Tracked-On: #6685
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2021-11-16 14:42:59 +08:00
Weiyi Feng
809449d672 config_tool: add GUEST_FLAG_STATIC_VM define in vm_configurations.c.xsl
1. add GUEST_FLAG_STATIC_VM define in vm_configurations.c.xsl.
2. add GUEST_FLAG_STATIC_VM in guest_flags.

Tracked-On: #6685
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2021-11-16 14:42:59 +08:00
Weiyi Feng
ae5cec9a98 config_tool: update scenario xml for MAX_VM_NUM field
update scenario xml for MAX_VM_NUM field

Tracked-On: #6685
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2021-11-16 14:42:59 +08:00
Weiyi Feng
ed5d28a840 config_tool: update scenario and launch xml for vm_name support
update scenario and launch xml for vm_name support

Tracked-On: #6685
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2021-11-16 14:42:59 +08:00
Weiyi Feng
c74ac12165 config_tool: reformat scenario and launch xml
reformat scenario and launch xml

Tracked-On: #6685
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2021-11-16 14:42:59 +08:00
Weiyi Feng
56a68d8106 config_tool: let common.MAX_VM_NUM controlled by scenario data
let common.MAX_VM_NUM controlled by scenario data

Tracked-On: #6685
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2021-11-16 14:42:59 +08:00
Weiyi Feng
86f1477482 config_tool: add vm_name field for launch config
add vm_name field for launch config

Tracked-On: #6685
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2021-11-16 14:42:59 +08:00
Kunhui-Li
7bf25a9d0d config_tools: add assert to check if the scenario is valid
Add assert for below invalid scenario:

1. Two or more pre-launched RTVM
2. One pre-launched RTVM and one or more post-launched RTVM

Tracked-On: #6685
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-16 14:42:59 +08:00
Kunhui-Li
ccbf6d4603 config_tools: remove KATA and replace UUID with vmname to identify a vm
1. remove CONFIG_KATA_VM, CONFIG_MAX_KATA_VM_NUM and KATA_VM
related code.
2. remove KATA_VM in scenario xml files.
3. remove KATA vm type in UI.
4. remove UUID DB.
5. remove uuid in the launch script generation logic.
6. use vmname to identify a vm. (eg: <name>ACRN_SOS_VM</name>)
add the check logic to ensure vm name is a must-set item, not duplicated,
and the string length is [1-15] and the whitespace is not allowed.
7. enlarge the max VM num to 32.

Tracked-On: #6685
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-16 14:42:59 +08:00
Yang,Yu-chu
ba9f339f2e config-tools: refine acrn:get-common-clos-max
Rename function name to get-common-clos-count and refine the
calculation. Some platforms have odd clos counts. Using "floor" to get
integer numbers for macros.

Tracked-On: #6755
Signed-off-by: Yang,Yu-chu <yu-chu.yang@intel.com>
2021-11-15 13:40:19 +08:00
Weiyi-Feng
acc1c7fa0a config_tool: Update CPU affinity error message
Update CPU affinity error message

Co-authored-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
2021-11-15 09:07:58 +08:00
Weiyi-Feng
9dfd14e6ad config_tool: Update CPU affinity error message
Update CPU affinity error message

Co-authored-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
2021-11-15 09:07:58 +08:00
Weiyi Feng
1bbfbcc8b3 config_tool: add cpu affinity check
1. ensure cpu affinity in launch xml is subset of its scenario settings.
2. cpu_affinity is a must have parameter for acrn_dm, if the user did not provide cpu affinity in launch xml, load it from scenario settings.

Tracked-On: #6724
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2021-11-15 09:07:58 +08:00
Kunhui-Li
c3c8679afe config_tools: fix the duplicate PT_SLOT value issue in UI
when we add two or more virtio block devices and rename them for a VM
in launch xml files, then generate launch scripts through the UI.
After ensuring the devices names are different, we repeat these operations
continuously. Finally we will get the duplicate PT_SLOT value for
different virtio block devices in a launch script. This is wrong.

After user click the "Generate Launch Script" button to generate the
launch scripts every time, we will reset PT_SLOT variate to fix the issue.

Tracked-On: #6767

Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-15 09:02:55 +08:00
jackwhich
279f129f2d doc: Update nuc11 partitioned document and Scenario xml
Rename logical_partition to partitioned;
Use acrn hypervisor commit instead of tag v2.6;
Add partitioned.xml ramdisk parameter.

Tracked-On: #6709
Signed-off-by: zhongzhenx.liu <zhongzhenx.liu@intel.com>
2021-11-12 16:25:21 +08:00
Yang,Yu-chu
ccdbf49927 config-tools: enable hv features by default
Set hv features L1D_VMENTRY_ENABLED, MCE_ON_PSC_DISABLED and PTM
default value to 'y' in schema.

Tracked-On: #6793
Signed-off-by: Yang,Yu-chu <yu-chu.yang@intel.com>
2021-11-12 14:59:53 +08:00
Xiangyang Wu
511fd7b469 misc: config_tools: generate serial configuration file
Generate serial configuration file for service VM according
to scenario file and vUART ports base address allocated by
config tool.
Currently, some non-standard serial ports are emulated in
hypervisor and will be used to do communication between service
VM and user VM, so need to generate serial configuration file
to configure these serial ports for service VM.

v1-->v2:
	Fix some type issues
	Refine script code format

Tracked-On: #6652

Signed-off-by: Xiangyang Wu <xiangyang.wu@intel.com>
2021-11-08 13:15:38 +08:00
Zhou, Wu
48adda150c config-tools: move the pre RTVM's SSRAM base GPA
The pre-rtvm uses the RTCT tab to determine it's SSRAM address.
It was origionally duplicated from the host, and keeped its address
and layout.

To move the SSRAM area in ve820, we have to modify the guest's RTCT
tab first.

This patch uses the board_inspector's RTCT module to parse the host's
RTCT tab, and calculate the offset, then modifies the SSRAM/bin enties,
and saves it to the new RTCT bin file.

Tracked-On: #6674

Signed-off-by: Zhou, Wu <wu.zhou@intel.com>
Reviewed-by: Junjie Mao <junjie.mao@intel.com>
2021-11-08 13:13:14 +08:00
Victor Sun
f8bb2064a4 config_tools: remove config of MAX_EFI_MMAP_ENTRIES
The config of MAX_EFI_MMAP_ENTRIES has been removed in hypervisor, so remove
this config in config_tools;

Tracked-On: #6442

Signed-off-by: Victor Sun <victor.sun@intel.com>
2021-11-08 09:49:24 +08:00
Kunhui-Li
dde617fa49 config_tools: fix UI issue don't expand the default value in xml file
when we click the "Import XML" button to import the scenario xml file, then
click the "Export XML" to export the xml files, we will find some errors because
UI don't show the default value set in schema.

As a workaround, we call default_populator.py in UI to expand the default value
in the scenario XML file to fix the issue.

Tracked-On: #6292
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-04 20:25:11 +08:00
Kunhui-Li
2f5db5f4ee Revert "misc: config_tools: add vuart for communication"
This reverts commit 9e2edd5192.
Because config UI don't support multi legacy vuart in current logic,
we need to revert the commit to unblock UI.

Tracked-On: #6652
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-04 10:20:16 +08:00
Kunhui-Li
c782795af8 config_tools: rename UOS to user vm in UI
since PRs #6760 and #6765 have landed,
we also need to rename "UOS" to "user vm" in UI.

Tracked-On: #6744
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-04 10:17:24 +08:00
Kunhui-Li
9306de95a7 config_tools: fix the duplicate PT_SLOT value issue
when we add two or more virtio block devices and rename them for a VM
in launch xml files, then generate launch scripts through the UI.
After ensuring the devices names are different, we repeat these operations
continuously. Finally we will get the duplicate PT_SLOT value 30 for
different virtio block devices in a launch script. This is wrong.

As a workaround, we reassign PT_SLOT variate to reset it after the launch
script is generated every time.

Tracked-On: #6767
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-04 09:43:00 +08:00
Kunhui-Li
2b7c46377c config_tools: rename uos to user_vm in config UI
since PRs #6760 and #6747 have renamed uos to user_vm,
we also need to rename it in config UI.

Tracked-On: #6744
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-03 12:05:16 +08:00
Liu Long
7f846b7ecf Rename the xml file and generate launch script from uos to user_vm.
Tracked-On: #6744
Signed-off-by: Liu Long long.liu@linux.intel.com

Signed-off-by: Liu Long <long.liu@linux.intel.com>
2021-11-03 12:02:30 +08:00
Kunhui-Li
3124097a78 config_tools: remove hvlog parameter and update HV_RAM_START default address
1. remove hvlog parameter in bootargs for all platforms.
2. update HV_RAM_START default address from 2MB to 4MB.
3. add the check that the HV_RAM_START value should be larger
than or equal to 2MB and 2MB aligned.

Tracked-On: #6663
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2021-11-03 10:28:40 +08:00
Yang,Yu-chu
1bc7f0f6a5 config-tools: refine MMIO32/64_START and MMIO32/64_END
Get the start and end address based on all pci bus memory resource.

Tracked-On: #6752
Signed-off-by: Yang,Yu-chu <yu-chu.yang@intel.com>
2021-11-03 09:28:23 +08:00
Xiangyang Wu
9e2edd5192 misc: config_tools: add vuart for communication
In this patch, add vuart configuration in scenario XML of
each board to support communication between service VM and
user VM since system shutdown feature need to send commands
through this vuart communication channel.

The follow changes are made in this patch:
- Add multi legacy vuart for service VM for communication
- Add one legacy vuart for user VM for communication
- Add 8250.nr_uarts parameter in command line of service OS

Tracked-On: #6652
Signed-off-by: Xiangyang Wu <xiangyang.wu@intel.com>
2021-11-03 09:13:41 +08:00
Weiyi Feng
648b880f89 config_tools: Update launch xml for Sriov/GPU passthrough support
1. Update launch xml for Sriov/GPU passthrough support

Tracked-On: #6290
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2021-11-02 18:30:54 +08:00
Weiyi Feng
20f1dfd9c3 config_tools: Update GPU passthrough support
1. Remove gvt_args field.
2. Add passthrough GPU devices support.
3. Add sriov device support.

Tracked-On: #6290
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2021-11-02 18:30:54 +08:00