Lines Matching refs:abi
16 static void mb2_mmap_to_abi(struct acrn_boot_info *abi, const struct multiboot2_tag_mmap *mb2_tag_m… in mb2_mmap_to_abi() argument
22 abi->mmap_entries = (mb2_tag_mmap->size - 16U) / sizeof(struct multiboot2_mmap_entry); in mb2_mmap_to_abi()
23 if (abi->mmap_entries > MAX_MMAP_ENTRIES) { in mb2_mmap_to_abi()
24 abi->mmap_entries = MAX_MMAP_ENTRIES; in mb2_mmap_to_abi()
27 for (i = 0U; i < abi->mmap_entries; i++) { in mb2_mmap_to_abi()
28 abi->mmap_entry[i].baseaddr = (mb2_mmap + i)->addr; in mb2_mmap_to_abi()
29 abi->mmap_entry[i].length = (mb2_mmap + i)->len; in mb2_mmap_to_abi()
30 abi->mmap_entry[i].type = (mb2_mmap + i)->type; in mb2_mmap_to_abi()
37 static void mb2_mods_to_abi(struct acrn_boot_info *abi, in mb2_mods_to_abi() argument
40 abi->mods[mbi_mod_idx].start = hpa2hva_early((uint64_t)mb2_tag_mods->mod_start); in mb2_mods_to_abi()
42 abi->mods[mbi_mod_idx].size = mb2_tag_mods->mod_end - mb2_tag_mods->mod_start; in mb2_mods_to_abi()
45 (void)strncpy_s((void *)(abi->mods[mbi_mod_idx].string), MAX_MOD_STRING_SIZE, in mb2_mods_to_abi()
53 static void mb2_efi64_to_abi(struct acrn_boot_info *abi, const struct multiboot2_tag_efi64 *mb2_tag… in mb2_efi64_to_abi() argument
55 abi->uefi_info.systab = (uint32_t)(uint64_t)mb2_tag_efi64->pointer; in mb2_efi64_to_abi()
56 abi->uefi_info.systab_hi = (uint32_t)((uint64_t)mb2_tag_efi64->pointer >> 32U); in mb2_efi64_to_abi()
62 static void mb2_efimmap_to_abi(struct acrn_boot_info *abi, in mb2_efimmap_to_abi() argument
65 abi->uefi_info.memdesc_size = mb2_tag_efimmap->descr_size; in mb2_efimmap_to_abi()
66 abi->uefi_info.memdesc_version = mb2_tag_efimmap->descr_vers; in mb2_efimmap_to_abi()
67 abi->uefi_info.memmap = (uint32_t)(uint64_t)mb2_tag_efimmap->efi_mmap; in mb2_efimmap_to_abi()
68 abi->uefi_info.memmap_size = mb2_tag_efimmap->size - 16U; in mb2_efimmap_to_abi()
70 abi->uefi_info.memmap_hi = (uint32_t)(((uint64_t)mb2_tag_efimmap->efi_mmap) >> 32U); in mb2_efimmap_to_abi()
76 int32_t multiboot2_to_acrn_bi(struct acrn_boot_info *abi, void *mb2_info) in multiboot2_to_acrn_bi() argument
92 (void)strncpy_s((void *)(abi->cmdline), MAX_BOOTARGS_SIZE, str, in multiboot2_to_acrn_bi()
96 mb2_mmap_to_abi(abi, (const struct multiboot2_tag_mmap *)mb2_tag); in multiboot2_to_acrn_bi()
100 mb2_mods_to_abi(abi, mod_idx, (const struct multiboot2_tag_module *)mb2_tag); in multiboot2_to_acrn_bi()
106 (void)strncpy_s((void *)(abi->loader_name), MAX_LOADER_NAME_SIZE, str, in multiboot2_to_acrn_bi()
110 abi->acpi_rsdp_va = ((struct multiboot2_tag_new_acpi *)mb2_tag)->rsdp; in multiboot2_to_acrn_bi()
113 mb2_efi64_to_abi(abi, (const struct multiboot2_tag_efi64 *)mb2_tag); in multiboot2_to_acrn_bi()
116 mb2_efimmap_to_abi(abi, (const struct multiboot2_tag_efi_mmap *)mb2_tag); in multiboot2_to_acrn_bi()
139 abi->mods_count = mod_idx; in multiboot2_to_acrn_bi()