From 31efa2b522a3a30768b92c62b775782b47eacc73 Mon Sep 17 00:00:00 2001 From: "Yan, Like" Date: Sun, 5 May 2019 10:11:35 +0800 Subject: [PATCH] hv: add one more guest VM to the industry scenario This commmit added one more guest VM to the industry scenario, to be aligned with the HLD for the industry usage. With this commit, 4 VMs could be launched at maximum: 1 SOS VM and 3 post-launced VM. Tracked-On: #3039 Signed-off-by: Yan, Like --- hypervisor/arch/x86/Kconfig | 4 ++-- .../scenarios/industry/vm_configurations.c | 21 ++++++++++++++++--- .../scenarios/industry/vm_configurations.h | 2 +- 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/hypervisor/arch/x86/Kconfig b/hypervisor/arch/x86/Kconfig index 1b8a4cda1..03eb9a62c 100644 --- a/hypervisor/arch/x86/Kconfig +++ b/hypervisor/arch/x86/Kconfig @@ -18,8 +18,8 @@ config LOGICAL_PARTITION config INDUSTRY bool "Industry VMs" help - This scenario is a typical scenario for industry usage with 3 VMs: - one pre-launched SOS VM, one post-launched Normal VM for HMI and one + This scenario is a typical scenario for industry usage with 4 VMs: + one pre-launched SOS VM, one post-launched Standard VM for HMI, one or two post-launched RT VM for real-time control. endchoice diff --git a/hypervisor/scenarios/industry/vm_configurations.c b/hypervisor/scenarios/industry/vm_configurations.c index cac365419..1249cd126 100644 --- a/hypervisor/scenarios/industry/vm_configurations.c +++ b/hypervisor/scenarios/industry/vm_configurations.c @@ -11,7 +11,7 @@ struct acrn_vm_config vm_configs[CONFIG_MAX_VM_NUM] = { { - .type = SOS_VM, + .load_order = SOS_VM, .name = "ACRN SOS VM", .uuid = {0xdbU, 0xbbU, 0xd4U, 0x34U, 0x7aU, 0x57U, 0x42U, 0x16U, \ 0xa1U, 0x2cU, 0x22U, 0x01U, 0xf1U, 0xabU, 0x02U, 0x40U}, @@ -36,7 +36,7 @@ struct acrn_vm_config vm_configs[CONFIG_MAX_VM_NUM] = { } }, { - .type = POST_LAUNCHED_VM, + .load_order = POST_LAUNCHED_VM, .uuid = {0xd2U, 0x79U, 0x54U, 0x38U, 0x25U, 0xd6U, 0x11U, 0xe8U, \ 0x86U, 0x4eU, 0xcbU, 0x7aU, 0x18U, 0xb3U, 0x46U, 0x43U}, /* d2795438-25d6-11e8-864e-cb7a18b34643 */ @@ -51,7 +51,7 @@ struct acrn_vm_config vm_configs[CONFIG_MAX_VM_NUM] = { }, { - .type = POST_LAUNCHED_VM, + .load_order = POST_LAUNCHED_VM, .uuid = {0x49U, 0x5aU, 0xe2U, 0xe5U, 0x26U, 0x03U, 0x4dU, 0x64U, \ 0xafU, 0x76U, 0xd4U, 0xbcU, 0x5aU, 0x8eU, 0xc0U, 0xe5U}, /* 495ae2e5-2603-4d64-af76-d4bc5a8ec0e5 */ @@ -64,5 +64,20 @@ struct acrn_vm_config vm_configs[CONFIG_MAX_VM_NUM] = { .addr.port_base = INVALID_COM_BASE, } + }, + { + .load_order = POST_LAUNCHED_VM, + .uuid = {0x38U, 0x15U, 0x88U, 0x21U, 0x52U, 0x08U, 0x40U, 0x05U, \ + 0xb7U, 0x2aU, 0x8aU, 0x60U, 0x9eU, 0x41U, 0x90U, 0xd0U}, + /* 38158821-5208-4005-b72a-8a609e4190d0 */ + .vuart[0] = { + .type = VUART_LEGACY_PIO, + .addr.port_base = INVALID_COM_BASE, + }, + .vuart[1] = { + .type = VUART_LEGACY_PIO, + .addr.port_base = INVALID_COM_BASE, + } + } }; diff --git a/hypervisor/scenarios/industry/vm_configurations.h b/hypervisor/scenarios/industry/vm_configurations.h index 1a495f2c9..b56b96626 100644 --- a/hypervisor/scenarios/industry/vm_configurations.h +++ b/hypervisor/scenarios/industry/vm_configurations.h @@ -7,7 +7,7 @@ #ifndef VM_CONFIGURATIONS_H #define VM_CONFIGURATIONS_H -#define CONFIG_MAX_VM_NUM 3U +#define CONFIG_MAX_VM_NUM 4U /* Bits mask of guest flags that can be programmed by device model. Other bits are set by hypervisor only */ #define DM_OWNED_GUEST_FLAG_MASK (GUEST_FLAG_SECURE_WORLD_ENABLED | GUEST_FLAG_LAPIC_PASSTHROUGH | \