HV: modularizatoin: refine efi_info struct usage in acrn boot info

This patch has below changes:
	1. rename mi_efi_info to uefi_info in struct acrn_boot_info;

	2. remove redundant "efi_" prefix for efi_info struct members;

	3. The efi_info structure in acrn_boot_info struct is defined as
	   same as Linux kernel so the native efi info from boot loader
	   is passed to SOS zeropage with memcpy() api directly. Now replace
	   memcpy() with detailed struct member assignment;

	4. add boot_from_uefi() api;

Tracked-On: #5661

Signed-off-by: Victor Sun <victor.sun@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
This commit is contained in:
Victor Sun
2021-06-08 16:23:08 +08:00
committed by wenlingz
parent 82a1d4406c
commit 4774c79da0
5 changed files with 34 additions and 23 deletions

View File

@@ -57,9 +57,14 @@ struct acrn_boot_info {
struct abi_mmap mmap_entry[MAX_MMAP_ENTRIES];
const void *mi_acpi_rsdp_va;
struct efi_info mi_efi_info;
struct efi_info uefi_info;
};
static inline bool boot_from_uefi(struct acrn_boot_info *abi)
{
return !((abi->uefi_info.systab == 0U) && (abi->uefi_info.systab_hi == 0U));
}
int32_t init_multiboot_info(uint32_t *registers);
void init_acrn_boot_info(uint32_t *registers);