Home | History | Annotate | Download | only in lib

Lines Matching defs:mbp

354 void multiboot2_header_dump(struct multiboot_package *mbp)
356 struct multiboot_package_priv *mpp = mbp->mbp_priv;
456 mbi_cmdline(struct multiboot_package *mbp, void *buf)
464 cmdlen = snprintf(NULL, SIZE_T_MAX, fmt, mbp->mbp_file, mbp->mbp_args)
472 mbp->mbp_file, mbp->mbp_args);
479 mbi_boot_loader_name(struct multiboot_package *mbp, void *buf)
504 mbi_modules(struct multiboot_package *mbp, void *buf)
539 mbi_basic_meminfo(struct multiboot_package *mbp, void *buf)
549 mbt->mem_lower = mbp->mbp_basemem;
550 mbt->mem_upper = mbp->mbp_extmem;
557 mbi_bootdev(struct multiboot_package *mbp, void *buf)
583 mbi_mmap(struct multiboot_package *mbp, void *buf)
650 mbi_vbe(struct multiboot_package *mbp, void *buf)
675 mbi_framebuffer(struct multiboot_package *mbp, void *buf)
761 mbi_acpi_old(struct multiboot_package *mbp, void *buf)
807 mbi_acpi_new(struct multiboot_package *mbp, void *buf)
852 mbi_apm(struct multiboot_package *mbp, void *buf)
879 mbi_smbios(struct multiboot_package *mbp, void *buf)
953 mbi_network(struct multiboot_package *mbp, void *buf)
975 mbi_elf_sections(struct multiboot_package *mbp, void *buf)
989 if (mbp->mbp_marks[MARK_SYM] == 0)
992 pvbcopy((void *)mbp->mbp_marks[MARK_SYM], &ehdr, sizeof(ehdr));
1027 char *shdr = (char *)mbp->mbp_marks[MARK_SYM] + shoff;
1042 (void *)mbp->mbp_marks[MARK_SYM]);
1050 mbi_end(struct multiboot_package *mbp, void *buf)
1064 mbi_load_base_addr(struct multiboot_package *mbp, void *buf)
1074 mbt->load_base_addr = mbp->mbp_marks[MARK_START];
1082 mbi_efi_bs(struct multiboot_package *mbp, void *buf)
1087 if (mbp->mbp_priv->mpp_efi_bs == NULL)
1103 mbi_efi_mmap(struct multiboot_package *mbp, void *buf)
1131 mbi_efi32_ih(struct multiboot_package *mbp, void *buf)
1147 mbi_efi32(struct multiboot_package *mbp, void *buf)
1165 mbi_efi64_ih(struct multiboot_package *mbp, void *buf)
1181 mbi_efi64(struct multiboot_package *mbp, void *buf)
1199 is_tag_required(struct multiboot_package *mbp, uint16_t tag)
1206 info_req = mbp->mbp_priv->mpp_info_req;
1229 mbi_dispatch(struct multiboot_package *mbp, uint16_t type,
1237 len = mbi_end(mbp, bp);
1240 len = mbi_cmdline(mbp, bp);
1243 len = mbi_boot_loader_name(mbp, bp);
1246 len = mbi_modules(mbp, bp);
1249 len = mbi_basic_meminfo(mbp, bp);
1252 len = mbi_bootdev(mbp, bp);
1255 len = mbi_mmap(mbp, bp);
1258 len = mbi_vbe(mbp, bp);
1261 len = mbi_framebuffer(mbp, bp);
1264 len = mbi_acpi_old(mbp, bp);
1267 len = mbi_acpi_new(mbp, bp);
1270 len = mbi_elf_sections(mbp, bp);
1273 len = mbi_apm(mbp, bp);
1276 len = mbi_smbios(mbp, bp);
1279 len = mbi_network(mbp, bp);
1283 len = mbi_efi_mmap(mbp, bp);
1286 len = mbi_efi_bs(mbp, bp);
1290 len = mbi_efi32_ih(mbp, bp);
1293 len = mbi_efi32(mbp, bp);
1297 len = mbi_efi64_ih(mbp, bp);
1300 len = mbi_efi64(mbp, bp);
1305 len = mbi_load_base_addr(mbp, bp);
1312 if (len == 0 && is_tag_required(mbp, type))
1320 exec_multiboot2(struct multiboot_package *mbp)
1324 struct multiboot_package_priv *mpp = mbp->mbp_priv;
1370 if (mbi_dispatch(mbp, tags[i], NULL, &len) != 0)
1380 if (mbi_dispatch(mbp, tags[i], mbi + alen, &alen) != 0)
1408 mbp->mbp_marks[MARK_ENTRY],
1409 mbp->mbp_marks[MARK_NSYM],
1410 mbp->mbp_marks[MARK_SYM],
1411 mbp->mbp_marks[MARK_END]);
1417 entry = mbp->mbp_marks[MARK_ENTRY];
1437 x86_trunc_page(mbp->mbp_basemem * 1024),
1444 cleanup_multiboot2(struct multiboot_package *mbp)
1446 if (mbp->mbp_header)
1447 dealloc(mbp->mbp_header, mbp->mbp_header->header_length);
1448 if (mbp->mbp_priv && mbp->mbp_priv->mpp_mbi)
1449 dealloc(mbp->mbp_priv->mpp_mbi, mbp->mbp_priv->mpp_mbi_len);
1450 if (mbp->mbp_priv)
1451 dealloc(mbp->mbp_priv, sizeof(*mbp->mbp_priv));
1453 dealloc(mbp, sizeof(*mbp));
1484 struct multiboot_package *mbp = NULL;
1510 mbp = alloc(sizeof(*mbp));
1511 mbp->mbp_version = 2;
1512 mbp->mbp_file = path;
1513 mbp->mbp_header = alloc(mbh_len);
1514 mbp->mbp_priv = alloc(sizeof(*mbp->mbp_priv));
1515 memset(mbp->mbp_priv, 0, sizeof (*mbp->mbp_priv));
1516 mbp->mbp_probe = *probe_multiboot2;
1517 mbp->mbp_exec = *exec_multiboot2;
1518 mbp->mbp_cleanup = *cleanup_multiboot2;
1523 if (mbp == NULL)
1528 mbp->mbp_cleanup(mbp);
1529 mbp = NULL;
1533 mbh = mbp->mbp_header;
1536 mbp->mbp_cleanup(mbp);
1537 mbp = NULL;
1547 mbp->mbp_priv->mpp_info_req = (void *)mbt;
1550 mbp->mbp_priv->mpp_address = (void *)mbt;
1553 mbp->mbp_priv->mpp_entry = (void *)mbt;
1556 mbp->mbp_priv->mpp_console = (void *)mbt;
1559 mbp->mbp_priv->mpp_framebuffer = (void *)mbt;
1562 mbp->mbp_priv->mpp_module_align = (void *)mbt;
1566 mbp->mbp_priv->mpp_efi_bs = (void *)mbt;
1569 mbp->mbp_priv->mpp_entry_elf32 = (void *)mbt;
1572 mbp->mbp_priv->mpp_entry_elf64 = (void *)mbt;
1576 mbp->mbp_priv->mpp_relocatable = (void *)mbt;
1585 multiboot2_header_dump(mbp);
1604 if (is_header_required((void *)mbp->mbp_priv->mpp_address)) {
1606 mbp->mbp_cleanup(mbp);
1607 mbp = NULL;
1618 mbp->mbp_priv->mpp_relocatable;
1623 if (is_header_required((void *)mbp->mbp_priv->mpp_relocatable)) {
1625 mbp->mbp_cleanup(mbp);
1626 mbp = NULL;
1635 return mbp;