Changeset View
Changeset View
Standalone View
Standalone View
head/stand/efi/loader/bootinfo.c
Show First 20 Lines • Show All 50 Lines • ▼ Show 20 Lines | |||||
#endif | #endif | ||||
#include "framebuffer.h" | #include "framebuffer.h" | ||||
#if defined(LOADER_FDT_SUPPORT) | #if defined(LOADER_FDT_SUPPORT) | ||||
#include <fdt_platform.h> | #include <fdt_platform.h> | ||||
#endif | #endif | ||||
#ifdef LOADER_GELI_SUPPORT | |||||
#include "geliboot.h" | |||||
#endif | |||||
int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp); | int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp); | ||||
extern EFI_SYSTEM_TABLE *ST; | extern EFI_SYSTEM_TABLE *ST; | ||||
static int | static int | ||||
bi_getboothowto(char *kargs) | bi_getboothowto(char *kargs) | ||||
{ | { | ||||
const char *sw; | const char *sw; | ||||
▲ Show 20 Lines • Show All 380 Lines • ▼ Show 20 Lines | #if defined(LOADER_FDT_SUPPORT) | ||||
if (dtb_size) | if (dtb_size) | ||||
file_addmetadata(kfp, MODINFOMD_DTBP, sizeof dtbp, &dtbp); | file_addmetadata(kfp, MODINFOMD_DTBP, sizeof dtbp, &dtbp); | ||||
else | else | ||||
printf("WARNING! Trying to fire up the kernel, but no " | printf("WARNING! Trying to fire up the kernel, but no " | ||||
"device tree blob found!\n"); | "device tree blob found!\n"); | ||||
#endif | #endif | ||||
file_addmetadata(kfp, MODINFOMD_KERNEND, sizeof kernend, &kernend); | file_addmetadata(kfp, MODINFOMD_KERNEND, sizeof kernend, &kernend); | ||||
file_addmetadata(kfp, MODINFOMD_FW_HANDLE, sizeof ST, &ST); | file_addmetadata(kfp, MODINFOMD_FW_HANDLE, sizeof ST, &ST); | ||||
#ifdef LOADER_GELI_SUPPORT | |||||
geli_export_key_metadata(kfp); | |||||
#endif | |||||
bi_load_efi_data(kfp); | bi_load_efi_data(kfp); | ||||
/* Figure out the size and location of the metadata. */ | /* Figure out the size and location of the metadata. */ | ||||
*modulep = addr; | *modulep = addr; | ||||
size = bi_copymodules(0); | size = bi_copymodules(0); | ||||
kernend = roundup(addr + size, PAGE_SIZE); | kernend = roundup(addr + size, PAGE_SIZE); | ||||
*kernendp = kernend; | *kernendp = kernend; | ||||
Show All 25 Lines |