mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-11-24 18:05:22 +00:00
Preparing for hybrid mode:
- create vE820 for pre-launched VMs and do other init code when the
vm_config->type is PRE_LAUNCHED_VM.
- create ve820.c for each board because without wrapping by
CONFIG_PARTITION_MODE, ve820_entry[] needs to be visible even when
compiling target boards that haven't enabled pre-launched VMs.
- remove create_prelaunched_vm_e820() from vm.c and implement board
specific function for each $(CONFIG_BOARD)/ve820.c. The reasons being:
- don't need to define ve820_entry[32] for those boards that don't
support pre-launched VMs.
- more importantly, this makes it much easier to create different per-VM
vE820 when it's needed.
Tracked-On: #2291
Signed-off-by: Zide Chen <zide.chen@intel.com>
26 lines
482 B
C
26 lines
482 B
C
/*
|
|
* Copyright (C) 2019 Intel Corporation. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
#ifndef BOARD_H
|
|
#define BOARD_H
|
|
|
|
#include <types.h>
|
|
|
|
/* forward declarations */
|
|
struct acrn_vm;
|
|
|
|
struct platform_clos_info {
|
|
uint32_t clos_mask;
|
|
uint32_t msr_index;
|
|
};
|
|
|
|
extern struct platform_clos_info platform_clos_array[];
|
|
extern uint16_t platform_clos_num;
|
|
|
|
/* board specific functions */
|
|
void create_prelaunched_vm_e820(struct acrn_vm *vm);
|
|
|
|
#endif /* BOARD_H */
|