diff --git a/misc/acrn-config/library/common.py b/misc/acrn-config/library/common.py
index 5acd680ac..765e7c3ee 100644
--- a/misc/acrn-config/library/common.py
+++ b/misc/acrn-config/library/common.py
@@ -267,7 +267,6 @@ def get_vm_num(config_file):
if item.tag == "vm":
vm_count += 1
VM_COUNT = vm_count
- return vm_count
# TODO: This will be abandonment in future
@@ -382,7 +381,7 @@ def get_sub_value(tmp, tag_str, vm_id):
tmp.tag[vm_id] = tmp.multi.vir_network
-def get_leaf_tag_map(config_file, branch_tag, tag_str):
+def get_leaf_tag_map(config_file, branch_tag, tag_str=''):
"""
This is get tag value by tag_str from config file
:param config_file: it is a file what contains information for script to read from
diff --git a/misc/acrn-config/library/scenario_cfg_lib.py b/misc/acrn-config/library/scenario_cfg_lib.py
index 06dc85cf7..9b334c7d7 100644
--- a/misc/acrn-config/library/scenario_cfg_lib.py
+++ b/misc/acrn-config/library/scenario_cfg_lib.py
@@ -6,10 +6,7 @@
import common
import board_cfg_lib
-SOURCE_ROOT_DIR = common.SOURCE_ROOT_DIR
HEADER_LICENSE = common.open_license()
-BOARD_INFO_FILE = "board_info.txt"
-SCENARIO_INFO_FILE = ""
LOAD_ORDER_TYPE = ['PRE_LAUNCHED_VM', 'SOS_VM', 'POST_LAUNCHED_VM']
START_HPA_LIST = ['0', '0x100000000', '0x120000000']
@@ -39,7 +36,6 @@ COMMUNICATE_VM_ID = []
ERR_LIST = {}
-VM_COUNT = 0
DEFAULT_VM_COUNT = {
'sdc':2,
'sdc2':4,
@@ -49,152 +45,10 @@ DEFAULT_VM_COUNT = {
}
KATA_VM_COUNT = 0
-LEGACY_TTYS = {
- 'ttyS0':'0x3F8',
- 'ttyS1':'0x2F8',
- 'ttyS2':'0x3E8',
- 'ttyS3':'0x2E8',
-}
-
-def prepare():
- """ Check environment """
- return common.prepare()
-
-
-def print_yel(msg, warn=False):
- """
- Print the message with color of yellow
- :param msg: the stings which will be output to STDOUT
- :param warn: the condition if needs to be output the color of yellow with 'Warning'
- """
- common.print_yel(msg, warn)
-
-
-def print_red(msg, err=False):
- """
- Print the message with color of red
- :param msg: the stings which will be output to STDOUT
- :param err: the condition if needs to be output the color of red with 'Error'
- """
- common.print_red(msg, err)
-
-
-def usage(file_name):
- """ This is usage for how to use this tool """
- common.usage(file_name)
-
-
-def get_param(args):
- """
- Get the script parameters from command line
- :param args: this the command line of string for the script without script name
- """
- return common.get_param(args)
-
-
-def get_scenario_name():
- """
- Get board name from scenario.xml at fist line
- :param scenario_file: it is a file what contains scenario information for script to read from
- """
- return common.get_scenario_name()
-
-
-def is_config_file_match():
-
- return common.is_config_file_match()
-
-
-def get_info(board_info, msg_s, msg_e):
- """
- Get information which specify by argument
- :param board_info: it is a file what contains board information for script to read from
- :param msg_s: it is a pattern of key stings what start to match from board information
- :param msg_e: it is a pattern of key stings what end to match from board information
- """
- info_lines = board_cfg_lib.get_info(board_info, msg_s, msg_e)
- return info_lines
-
-
-def get_processor_info(board_info):
- """
- Get cpu core list
- :param board_info: it is a file what contains board information for script to read from
- :return: cpu processor which one cpu has
- """
- processor_list = []
- tmp_list = []
- processor_info = board_cfg_lib.get_info(board_info, "", "")
-
- if not processor_info:
- key = "vm:id=0,vcpu_affinity"
- ERR_LIST[key] = "CPU core is not exists"
- return processor_list
-
- for processor_line in processor_info:
- if not processor_line:
- break
-
- processor_list = processor_line.strip().split(',')
- for processor in processor_list:
- tmp_list.append(processor.strip())
- break
-
- return tmp_list
-
-
-def get_rootdev_info(board_info):
- """
- Get root devices from board info
- :param board_info: it is a file what contains board information for script to read from
- :return: root devices list
- """
- rootdev_list = []
- rootdev_info = board_cfg_lib.get_info(board_info, "", "")
-
- # none 'BLOCK_DEVICE_INFO' tag
- if rootdev_info == None:
- return rootdev_list
-
- for rootdev_line in rootdev_info:
- if not rootdev_line:
- break
-
- if not board_cfg_lib.handle_root_dev(rootdev_line):
- continue
-
- root_dev = rootdev_line.strip().split(':')[0]
- rootdev_list.append(root_dev)
-
- return rootdev_list
-
-
-def get_ttys_info(board_info):
- """
- Get ttySn from board info
- :param board_info: it is a file what contains board information for script to read from
- :return: serial console list
- """
- ttys_list = []
- ttys_info = board_cfg_lib.get_info(board_info, "", "")
-
- for ttys_line in ttys_info:
- if not ttys_line:
- break
-
- ttys_dev = ttys_line.split()[0].split(':')[1]
- ttysn = ttys_dev.split('/')[-1]
- # currently SOS console can only support legacy serial port
- if ttysn not in list(LEGACY_TTYS.keys()):
- continue
- ttys_list.append(ttys_dev)
-
- return ttys_list
-
def get_board_private_info(config_file):
- (err_dic, scenario_name) = get_scenario_name()
+ (err_dic, scenario_name) = common.get_scenario_name()
if scenario_name == "logical_partition":
branch_tag = "os_config"
@@ -204,7 +58,7 @@ def get_board_private_info(config_file):
private_info = {}
dev_private_tags = ['rootfs', 'console']
for tag_str in dev_private_tags:
- dev_setting = get_sub_leaf_tag(config_file, branch_tag, tag_str)
+ dev_setting = common.get_sub_leaf_tag(config_file, branch_tag, tag_str)
if not dev_setting and tag_str == "console":
continue
@@ -215,33 +69,13 @@ def get_board_private_info(config_file):
def check_board_private_info():
- (err_dic, private_info) = get_board_private_info(SCENARIO_INFO_FILE)
+ (err_dic, private_info) = get_board_private_info(common.SCENARIO_INFO_FILE)
if not private_info['rootfs'] and err_dic:
ERR_LIST['vm:id=0,boot_private,rootfs'] = "The board have to chose one rootfs partition"
ERR_LIST.update(err_dic)
-def get_vm_num(config_file):
- """
- This is get vm count
- :param config_file: it is a file what contains vm information for script to read from
- :return: number of vm
- """
- return common.get_vm_num(config_file)
-
-
-def get_sub_leaf_tag(config_file, branch_tag, tag_str=''):
- """
- This is get tag value by tag_str from config file
- :param config_file: it is a file what contains information for script to read from
- :param branch_tag: it is key of patter to config file branch tag item
- :param tag_str: it is key of pattern to config file leaf tag item
- :return: value of tag_str item
- """
- return common.get_sub_leaf_tag(config_file, branch_tag, tag_str)
-
-
def get_order_type_by_vmid(idx):
"""
Get load order by vm id
@@ -249,7 +83,7 @@ def get_order_type_by_vmid(idx):
:param idx: index of vm id
:return: load order type of index to vmid
"""
- (err_dic, order_type) = common.get_load_order_by_vmid(SCENARIO_INFO_FILE, VM_COUNT, idx)
+ (err_dic, order_type) = common.get_load_order_by_vmid(common.SCENARIO_INFO_FILE, common.VM_COUNT, idx)
if err_dic:
ERR_LIST.update(err_dic)
@@ -375,17 +209,6 @@ def uuid_format_check(uuid_dic, item):
ERR_LIST[key] = "VM uuid format unknown"
-def get_leaf_tag_map(info_file, prime_item, item=''):
- """
- :param info_file: some configurations in the info file
- :param prime_item: the prime item in xml file
- :param item: the item in xml file
- :return: dictionary which item value could be indexed by vmid
- """
- vmid_item_dic = common.get_leaf_tag_map(info_file, prime_item, item)
- return vmid_item_dic
-
-
def cpus_per_vm_check(id_cpus_per_vm_dic, item):
"""
Check cpu number of per vm
@@ -618,7 +441,7 @@ def get_vuart1_vmid(vm_vuart1):
:return: dictionary of vmid:vuart1
"""
vm_id_dic = {}
- for i in range(VM_COUNT):
+ for i in range(common.VM_COUNT):
for key in vm_vuart1[i].keys():
if key == "target_vm_id":
vm_id_dic[i] = vm_vuart1[i][key]
@@ -685,21 +508,10 @@ def clos_assignment(clos_per_vm, index):
vm_clos_bmp['clos_map'] = clos_str
return vm_clos_bmp
-def get_vuart_info_id(config_file, idx):
- """
- Get vuart information by vuart id indexx
- :param config_file: it is a file what contains information for script to read from
- :param idx: vuart index in range: [0,1]
- :return: dictionary which stored the vuart-id
- """
- tmp_tag = board_cfg_lib.get_vuart_info_id(config_file, idx)
- return tmp_tag
-
def avl_vuart_ui_select(scenario_info):
- vm_num = get_vm_num(scenario_info)
tmp_vuart = {}
- for vm_i in range(vm_num):
+ for vm_i in range(common.VM_COUNT):
vm_type = get_order_type_by_vmid(vm_i)
if vm_type == "SOS_VM":
@@ -718,14 +530,9 @@ def avl_vuart_ui_select(scenario_info):
def get_first_post_vm():
- for i in range(VM_COUNT):
- (err_dic, vm_type) = common.get_load_order_by_vmid(SCENARIO_INFO_FILE, VM_COUNT, i)
+ for i in range(common.VM_COUNT):
+ (err_dic, vm_type) = common.get_load_order_by_vmid(common.SCENARIO_INFO_FILE, common.VM_COUNT, i)
if vm_type == "POST_LAUNCHED_VM":
break
return (err_dic, i)
-
-
-def mkdir(path):
-
- common.mkdir(path)
diff --git a/misc/acrn-config/scenario_config/pci_dev_c.py b/misc/acrn-config/scenario_config/pci_dev_c.py
index a204d010b..280d71662 100644
--- a/misc/acrn-config/scenario_config/pci_dev_c.py
+++ b/misc/acrn-config/scenario_config/pci_dev_c.py
@@ -3,7 +3,9 @@
# SPDX-License-Identifier: BSD-3-Clause
#
+import common
import scenario_cfg_lib
+
PCI_DEV_TYPE = ['PCI_DEV_TYPE_HVEMUL', 'PCI_DEV_TYPE_PTDEV']
@@ -27,7 +29,7 @@ def generate_file(config):
print(" * The memory range of vBAR should exactly match with the e820 layout of VM.",
file=config)
print(" */", file=config)
- for i in range(scenario_cfg_lib.VM_COUNT):
+ for i in range(common.VM_COUNT):
print("", file=config)
print("struct acrn_vm_pci_dev_config " +
"vm{}_pci_devs[VM{}_CONFIG_PCI_DEV_NUM] = {{".format(i, i), file=config)
diff --git a/misc/acrn-config/scenario_config/scenario_cfg_gen.py b/misc/acrn-config/scenario_config/scenario_cfg_gen.py
index d8f5cd9da..4cfb56f4b 100755
--- a/misc/acrn-config/scenario_config/scenario_cfg_gen.py
+++ b/misc/acrn-config/scenario_config/scenario_cfg_gen.py
@@ -8,14 +8,15 @@ import sys
import copy
sys.path.append(os.path.join(os.path.dirname(os.path.abspath(__file__)), '..', 'library'))
from scenario_item import HwInfo, VmInfo
+import board_cfg_lib
import scenario_cfg_lib
import vm_configurations_c
import vm_configurations_h
import pci_dev_c
import common
-ACRN_PATH = scenario_cfg_lib.SOURCE_ROOT_DIR
-ACRN_CONFIG_TARGET = ACRN_PATH + 'hypervisor/scenarios/'
+ACRN_PATH = common.SOURCE_ROOT_DIR
+ACRN_CONFIG_DEF = ACRN_PATH + 'hypervisor/scenarios/'
GEN_FILE = ["vm_configurations.h", "vm_configurations.c", "pci_dev.c"]
@@ -30,9 +31,7 @@ def get_scenario_item_values(board_info, scenario_info):
# get vm count
common.BOARD_INFO_FILE = board_info
common.SCENARIO_INFO_FILE = scenario_info
- scenario_cfg_lib.SCENARIO_INFO_FILE = scenario_info
- scenario_cfg_lib.BOARD_INFO_FILE = board_info
- scenario_cfg_lib.VM_COUNT = scenario_cfg_lib.get_vm_num(scenario_info)
+ common.get_vm_num(scenario_info)
# pre scenario
guest_flags = copy.deepcopy(scenario_cfg_lib.GUEST_FLAG)
@@ -45,11 +44,11 @@ def get_scenario_item_values(board_info, scenario_info):
scenario_item_values.update(scenario_cfg_lib.avl_vuart_ui_select(scenario_info))
# pre board_private
- scenario_item_values["vm,board_private,rootfs"] = scenario_cfg_lib.get_rootdev_info(board_info)
- scenario_item_values["vm,board_private,console"] = scenario_cfg_lib.get_ttys_info(board_info)
+ scenario_item_values["vm,board_private,rootfs"] = board_cfg_lib.get_rootfs(board_info)
+ scenario_item_values["vm,board_private,console"] = board_cfg_lib.get_ttys_info(board_info)
# os config
- scenario_item_values["vm,os_config,rootfs"] = scenario_cfg_lib.get_rootdev_info(board_info)
+ scenario_item_values["vm,os_config,rootfs"] = board_cfg_lib.get_rootfs(board_info)
return scenario_item_values
@@ -64,8 +63,6 @@ def validate_scenario_setting(board_info, scenario_info):
scenario_cfg_lib.ERR_LIST = {}
common.BOARD_INFO_FILE = board_info
common.SCENARIO_INFO_FILE = scenario_info
- scenario_cfg_lib.BOARD_INFO_FILE = board_info
- scenario_cfg_lib.SCENARIO_INFO_FILE = scenario_info
vm_info = VmInfo(board_info, scenario_info)
@@ -81,39 +78,39 @@ def main(args):
This is main function to start generate source code related with board
:param args: it is a command line args for the script
"""
- global ACRN_CONFIG_TARGET
err_dic = {}
- (err_dic, board_info_file, scenario_info_file, output_folder) = scenario_cfg_lib.get_param(args)
+ (err_dic, board_info_file, scenario_info_file, output_folder) = common.get_param(args)
if err_dic:
return err_dic
if output_folder:
- ACRN_CONFIG_TARGET = os.path.abspath(output_folder) + '/'
+ common.ACRN_CONFIG_TARGET = os.path.abspath(output_folder) + '/'
# check env
- err_dic = scenario_cfg_lib.prepare()
+ err_dic = common.prepare()
if err_dic:
return err_dic
common.BOARD_INFO_FILE = board_info_file
common.SCENARIO_INFO_FILE = scenario_info_file
- scenario_cfg_lib.BOARD_INFO_FILE = board_info_file
- scenario_cfg_lib.SCENARIO_INFO_FILE = scenario_info_file
# get scenario name
- (err_dic, scenario) = scenario_cfg_lib.get_scenario_name()
+ (err_dic, scenario) = common.get_scenario_name()
if err_dic:
return err_dic
# check if this is the scenario config which matched board info
- (err_dic, status) = scenario_cfg_lib.is_config_file_match()
+ (err_dic, status) = common.is_config_file_match()
if not status:
err_dic['scenario config: Not match'] = "The board xml and scenario xml should be matched!"
return err_dic
- scenario_dir = ACRN_CONFIG_TARGET + scenario + '/'
- scenario_cfg_lib.mkdir(scenario_dir)
+ if common.ACRN_CONFIG_TARGET:
+ scenario_dir = common.ACRN_CONFIG_TARGET + scenario + '/'
+ else:
+ scenario_dir = ACRN_CONFIG_DEF + scenario + '/'
+ common.mkdir(scenario_dir)
vm_config_h = scenario_dir + GEN_FILE[0]
vm_config_c = scenario_dir + GEN_FILE[1]
@@ -123,12 +120,12 @@ def main(args):
get_scenario_item_values(board_info_file, scenario_info_file)
(err_dic, vm_info) = validate_scenario_setting(board_info_file, scenario_info_file)
if err_dic:
- scenario_cfg_lib.print_red("Validate the scenario item failue", err=True)
+ common.print_red("Validate the scenario item failue", err=True)
return err_dic
# get kata vm count
if scenario != "logical_partition":
- scenario_cfg_lib.KATA_VM_COUNT = scenario_cfg_lib.VM_COUNT - scenario_cfg_lib.DEFAULT_VM_COUNT[scenario]
+ scenario_cfg_lib.KATA_VM_COUNT = common.VM_COUNT - scenario_cfg_lib.DEFAULT_VM_COUNT[scenario]
if scenario_cfg_lib.KATA_VM_COUNT > 1:
err_dic['scenario config: kata vm count err'] = "Only one kata vm is supported!"
return err_dic
@@ -160,7 +157,7 @@ def ui_entry_api(board_info, scenario_info):
arg_list = ['board_cfg_gen.py', '--board', board_info, '--scenario', scenario_info]
- err_dic = scenario_cfg_lib.prepare()
+ err_dic = common.prepare()
if err_dic:
return err_dic
@@ -175,5 +172,5 @@ if __name__ == '__main__':
err_dic = main(ARGS)
if err_dic:
for err_k, err_v in err_dic.items():
- scenario_cfg_lib.print_red("{}: {}".format(err_k, err_v), err=True)
+ common.print_red("{}: {}".format(err_k, err_v), err=True)
diff --git a/misc/acrn-config/scenario_config/scenario_item.py b/misc/acrn-config/scenario_config/scenario_item.py
index c35d019a7..7c73c7d37 100644
--- a/misc/acrn-config/scenario_config/scenario_item.py
+++ b/misc/acrn-config/scenario_config/scenario_item.py
@@ -3,8 +3,9 @@
# SPDX-License-Identifier: BSD-3-Clause
#
-import scenario_cfg_lib
+import common
import board_cfg_lib
+import scenario_cfg_lib
class HwInfo:
@@ -22,7 +23,7 @@ class HwInfo:
Get cpu core list
:return: cpu processor which one cpu has
"""
- self.processor_val = scenario_cfg_lib.get_processor_info(self.board_info)
+ self.processor_val = board_cfg_lib.get_processor_info()
return self.processor_val
def get_rootdev_val(self):
@@ -30,7 +31,7 @@ class HwInfo:
Get root devices from board info
:return: root devices list
"""
- self.root_dev_val = scenario_cfg_lib.get_rootdev_info(self.board_info)
+ self.root_dev_val = common.get_rootfs(self.board_info)
return self.root_dev_val
def get_ttys_val(self):
@@ -38,7 +39,7 @@ class HwInfo:
Get ttySn from board info
:return: serial console list
"""
- self.ttys_val = scenario_cfg_lib.get_ttys_info(self.board_info)
+ self.ttys_val = board_cfg_lib.get_ttys_info(self.board_info)
return self.ttys_val
def get_clos_val(self):
@@ -87,24 +88,24 @@ class CfgOsKern:
Get all items which belong to this class
:return: None
"""
- self.kern_name = scenario_cfg_lib.get_leaf_tag_map(self.scenario_info, "os_config", "name")
- self.kern_type = scenario_cfg_lib.get_leaf_tag_map(
+ self.kern_name = common.get_leaf_tag_map(self.scenario_info, "os_config", "name")
+ self.kern_type = common.get_leaf_tag_map(
self.scenario_info, "os_config", "kern_type")
- self.kern_mod = scenario_cfg_lib.get_leaf_tag_map(
+ self.kern_mod = common.get_leaf_tag_map(
self.scenario_info, "os_config", "kern_mod")
- self.kern_args = scenario_cfg_lib.get_leaf_tag_map(
+ self.kern_args = common.get_leaf_tag_map(
self.scenario_info, "os_config", "bootargs")
- self.kern_console = scenario_cfg_lib.get_leaf_tag_map(
+ self.kern_console = common.get_leaf_tag_map(
self.scenario_info, "os_config", "console")
- self.kern_load_addr = scenario_cfg_lib.get_leaf_tag_map(
+ self.kern_load_addr = common.get_leaf_tag_map(
self.scenario_info, "os_config", "kern_load_addr")
- self.kern_entry_addr = scenario_cfg_lib.get_leaf_tag_map(
+ self.kern_entry_addr = common.get_leaf_tag_map(
self.scenario_info, "os_config", "kern_entry_addr")
- self.kern_root_dev = scenario_cfg_lib.get_leaf_tag_map(
+ self.kern_root_dev = common.get_leaf_tag_map(
self.scenario_info, "os_config", "rootfs")
- self.ramdisk_mod = scenario_cfg_lib.get_leaf_tag_map(
+ self.ramdisk_mod = common.get_leaf_tag_map(
self.scenario_info, "os_config", "ramdisk_mod")
- self.kern_args_append = scenario_cfg_lib.get_leaf_tag_map(
+ self.kern_args_append = common.get_leaf_tag_map(
self.scenario_info, "boot_private", "bootargs")
def check_item(self):
@@ -171,8 +172,8 @@ class VuartInfo:
Get all items which belong to this class
:return: None
"""
- self.v0_vuart = scenario_cfg_lib.get_vuart_info_id(self.scenario_info, 0)
- self.v1_vuart = scenario_cfg_lib.get_vuart_info_id(self.scenario_info, 1)
+ self.v0_vuart = board_cfg_lib.get_vuart_info_id(self.scenario_info, 0)
+ self.v1_vuart = board_cfg_lib.get_vuart_info_id(self.scenario_info, 1)
scenario_cfg_lib.check_board_private_info()
@@ -191,13 +192,13 @@ class MemInfo:
Get all items which belong to this class
:return: None
"""
- self.mem_start_hpa = scenario_cfg_lib.get_leaf_tag_map(
+ self.mem_start_hpa = common.get_leaf_tag_map(
self.scenario_info, "memory", "start_hpa")
- self.mem_size = scenario_cfg_lib.get_leaf_tag_map(
+ self.mem_size = common.get_leaf_tag_map(
self.scenario_info, "memory", "size")
- self.mem_start_hpa2 = scenario_cfg_lib.get_leaf_tag_map(
+ self.mem_start_hpa2 = common.get_leaf_tag_map(
self.scenario_info, "memory", "start_hpa2")
- self.mem_size_hpa2 = scenario_cfg_lib.get_leaf_tag_map(
+ self.mem_size_hpa2 = common.get_leaf_tag_map(
self.scenario_info, "memory", "size_hpa2")
def check_item(self):
@@ -224,14 +225,15 @@ class CfgPci:
Get pci device number items
:return: None
"""
- self.pci_dev_num = scenario_cfg_lib.get_leaf_tag_map(self.scenario_info, "pci_dev_num")
+ self.pci_dev_num = common.get_leaf_tag_map(self.scenario_info, "pci_dev_num")
def get_pci_devs(self):
"""
Get pci devices items
:return: None
"""
- self.pci_devs = scenario_cfg_lib.get_leaf_tag_map(self.scenario_info, "pci_devs")
+ self.pci_devs = common.get_leaf_tag_map(self.scenario_info, "pci_devs")
+
def get_info(self):
"""
@@ -257,8 +259,8 @@ class EpcSection:
self.scenario_info = scenario_info
def get_info(self):
- self.base = scenario_cfg_lib.get_leaf_tag_map(self.scenario_info, "epc_section", "base")
- self.size = scenario_cfg_lib.get_leaf_tag_map(self.scenario_info, "epc_section", "size")
+ self.base = common.get_leaf_tag_map(self.scenario_info, "epc_section", "base")
+ self.size = common.get_leaf_tag_map(self.scenario_info, "epc_section", "size")
class LoadOrderNum:
@@ -286,7 +288,7 @@ class VmInfo:
def __init__(self, board_file, scenario_file):
self.board_info = board_file
self.scenario_info = scenario_file
- scenario_cfg_lib.VM_COUNT = scenario_cfg_lib.get_vm_num(self.scenario_info)
+ common.get_vm_num(self.scenario_info)
self.epc_section = EpcSection(self.scenario_info)
self.mem_info = MemInfo(self.scenario_info)
@@ -300,17 +302,17 @@ class VmInfo:
Get all items which belong to this class
:return: None
"""
- self.name = scenario_cfg_lib.get_leaf_tag_map(self.scenario_info, "name")
- self.load_order = scenario_cfg_lib.get_leaf_tag_map(self.scenario_info, "load_order")
- self.uuid = scenario_cfg_lib.get_leaf_tag_map(self.scenario_info, "uuid")
- self.guest_flag_idx = scenario_cfg_lib.get_sub_leaf_tag(
+ self.name = common.get_leaf_tag_map(self.scenario_info, "name")
+ self.load_order = common.get_leaf_tag_map(self.scenario_info, "load_order")
+ self.uuid = common.get_leaf_tag_map(self.scenario_info, "uuid")
+ self.guest_flag_idx = common.get_sub_leaf_tag(
self.scenario_info, "guest_flags", "guest_flag")
- self.cpus_per_vm = scenario_cfg_lib.get_leaf_tag_map(
+ self.cpus_per_vm = common.get_leaf_tag_map(
self.scenario_info, "vcpu_affinity", "pcpu_id")
- self.clos_per_vm = scenario_cfg_lib.get_leaf_tag_map(
+ self.clos_per_vm = common.get_leaf_tag_map(
self.scenario_info, "clos", "vcpu_clos")
- self.severity = scenario_cfg_lib.get_leaf_tag_map(self.scenario_info, "severity")
+ self.severity = common.get_leaf_tag_map(self.scenario_info, "severity")
self.epc_section.get_info()
self.mem_info.get_info()
self.os_cfg.get_info()
diff --git a/misc/acrn-config/scenario_config/vm_configurations_c.py b/misc/acrn-config/scenario_config/vm_configurations_c.py
index f202cb5d7..00260ad69 100644
--- a/misc/acrn-config/scenario_config/vm_configurations_c.py
+++ b/misc/acrn-config/scenario_config/vm_configurations_c.py
@@ -4,9 +4,9 @@
#
import sys
-import scenario_cfg_lib
-import board_cfg_lib
import common
+import board_cfg_lib
+import scenario_cfg_lib
C_HEADER = scenario_cfg_lib.HEADER_LICENSE + r"""
#include
@@ -75,7 +75,7 @@ def vuart0_output(i, vm_type, vm_info, config):
def vuart_map_enable(vm_info):
map_dic = {}
- for i in range(scenario_cfg_lib.VM_COUNT):
+ for i in range(common.VM_COUNT):
base_i = vm_info.vuart.v1_vuart[i]['base']
src_t_vm_i = vm_info.vuart.v1_vuart[i]['target_vm_id']
src_t_vuart_i = vm_info.vuart.v1_vuart[i]['target_uart_id']
@@ -196,7 +196,7 @@ def clos_output(vm_info, i, config):
:param config: it is the pointer which file write to
:return: None
"""
- (rdt_res, rdt_res_clos_max, _) = board_cfg_lib.clos_info_parser(scenario_cfg_lib.BOARD_INFO_FILE)
+ (rdt_res, rdt_res_clos_max, _) = board_cfg_lib.clos_info_parser(common.BOARD_INFO_FILE)
if len(rdt_res_clos_max) != 0:
common_clos_max = min(rdt_res_clos_max)
else:
@@ -468,13 +468,13 @@ def gen_logical_partition_source(vm_info, config):
"""
err_dic = {}
gen_source_header(config)
- for i in range(scenario_cfg_lib.VM_COUNT):
+ for i in range(common.VM_COUNT):
print("extern struct acrn_vm_pci_dev_config " +
"vm{0}_pci_devs[VM{1}_CONFIG_PCI_DEV_NUM];".format(i, i), file=config)
print("", file=config)
print("struct acrn_vm_config vm_configs[CONFIG_MAX_VM_NUM] = {", file=config)
- for i in range(scenario_cfg_lib.VM_COUNT):
+ for i in range(common.VM_COUNT):
uuid = uuid2str(vm_info.uuid[i])
print("\t{{\t/* VM{0} */".format(i), file=config)
print("\t\t.load_order = {0},".format(vm_info.load_order[i]), file=config)
@@ -533,7 +533,7 @@ def gen_industry_source(vm_info, config):
err_dic = {}
gen_source_header(config)
print("struct acrn_vm_config vm_configs[CONFIG_MAX_VM_NUM] = {", file=config)
- for i in range(scenario_cfg_lib.VM_COUNT):
+ for i in range(common.VM_COUNT):
uuid = uuid2str(vm_info.uuid[i])
print("\t{", file=config)
print("\t\t.load_order = {0},".format(vm_info.load_order[i]), file=config)
@@ -604,7 +604,7 @@ def gen_hybrid_source(vm_info, config):
gen_source_header(config)
print("struct acrn_vm_config vm_configs[CONFIG_MAX_VM_NUM] = {", file=config)
- for i in range(scenario_cfg_lib.VM_COUNT):
+ for i in range(common.VM_COUNT):
uuid = uuid2str(vm_info.uuid[i])
print("\t{{\t/* VM{0} */".format(i), file=config)
print("\t\t.load_order = {0},".format(vm_info.load_order[i]), file=config)
diff --git a/misc/acrn-config/scenario_config/vm_configurations_h.py b/misc/acrn-config/scenario_config/vm_configurations_h.py
index 73ccf10bf..7e0da6b96 100644
--- a/misc/acrn-config/scenario_config/vm_configurations_h.py
+++ b/misc/acrn-config/scenario_config/vm_configurations_h.py
@@ -3,6 +3,7 @@
# SPDX-License-Identifier: BSD-3-Clause
#
+import common
import scenario_cfg_lib
import board_cfg_lib
@@ -43,7 +44,7 @@ def clos_config_output(vm_info, i, config):
:param i: the index of vm id
:param config: file pointor to store the information
"""
- (rdt_res, rdt_res_clos_max, _) = board_cfg_lib.clos_info_parser(scenario_cfg_lib.BOARD_INFO_FILE)
+ (rdt_res, rdt_res_clos_max, _) = board_cfg_lib.clos_info_parser(common.BOARD_INFO_FILE)
if len(rdt_res_clos_max) != 0:
common_clos_max = min(rdt_res_clos_max)
else:
@@ -128,7 +129,7 @@ def gen_sdc2_header(vm_info, config):
print("\t\t\t\t\tSOS_BOOTARGS_DIFF", file=config)
print("", file=config)
- for i in range(scenario_cfg_lib.VM_COUNT):
+ for i in range(common.VM_COUNT):
cpu_affinity_output(vm_info, i, config)
clos_config_output(vm_info, i, config)
print("", file=config)
@@ -164,7 +165,6 @@ def gen_logical_partition_header(vm_info, config):
:param config: it is the pointer which file write to
:return: None
"""
- scenario_cfg_lib.vms_count = scenario_cfg_lib.VM_COUNT
gen_common_header(config)
# map all the needed pci sub class
print("#include ", file=config)
@@ -176,7 +176,7 @@ def gen_logical_partition_header(vm_info, config):
logic_max_vm_num(vm_info, config)
- for i in range(scenario_cfg_lib.VM_COUNT):
+ for i in range(common.VM_COUNT):
cpu_bits = vm_info.get_cpu_bitmap(i)
cpu_affinity_output(vm_info, i, config)
@@ -247,7 +247,7 @@ def gen_industry_header(vm_info, config):
print("\t\t\t\t\tSOS_CONSOLE\t\\", file=config)
print("\t\t\t\t\tSOS_BOOTARGS_DIFF", file=config)
print("", file=config)
- for i in range(scenario_cfg_lib.VM_COUNT):
+ for i in range(common.VM_COUNT):
cpu_affinity_output(vm_info, i, config)
clos_config_output(vm_info, i, config)
print("", file=config)
@@ -272,7 +272,7 @@ def gen_hybrid_header(vm_info, config):
print("", file=config)
scenario_vm_num(vm_info.load_order_cnt, config)
print("", file=config)
- for i in range(scenario_cfg_lib.VM_COUNT):
+ for i in range(common.VM_COUNT):
cpu_affinity_output(vm_info, i, config)
clos_config_output(vm_info, i, config)