Changeset View
Changeset View
Standalone View
Standalone View
sys/x86/xen/pv.c
Show First 20 Lines • Show All 359 Lines • ▼ Show 20 Lines | if (start_info->modlist_paddr != 0) { | ||||
boothowto = MD_FETCH(kmdp, MODINFOMD_HOWTO, int); | boothowto = MD_FETCH(kmdp, MODINFOMD_HOWTO, int); | ||||
envp = MD_FETCH(kmdp, MODINFOMD_ENVP, char *); | envp = MD_FETCH(kmdp, MODINFOMD_ENVP, char *); | ||||
if (envp != NULL) | if (envp != NULL) | ||||
envp += off; | envp += off; | ||||
xen_pvh_set_env(envp, reject_option); | xen_pvh_set_env(envp, reject_option); | ||||
if (MD_FETCH(kmdp, MODINFOMD_EFI_MAP, void *) != NULL) | if (MD_FETCH(kmdp, MODINFOMD_EFI_MAP, void *) != NULL) | ||||
strlcpy(bootmethod, "UEFI", sizeof(bootmethod)); | firmware_type = FW_UEFI; | ||||
else | else | ||||
strlcpy(bootmethod, "BIOS", sizeof(bootmethod)); | firmware_type = FW_BIOS; | ||||
} else { | } else { | ||||
/* Parse the extra boot information given by Xen */ | /* Parse the extra boot information given by Xen */ | ||||
if (start_info->cmdline_paddr != 0) | if (start_info->cmdline_paddr != 0) | ||||
boot_parse_cmdline_delim( | boot_parse_cmdline_delim( | ||||
(char *)(start_info->cmdline_paddr + KERNBASE), | (char *)(start_info->cmdline_paddr + KERNBASE), | ||||
","); | ","); | ||||
kmdp = NULL; | kmdp = NULL; | ||||
strlcpy(bootmethod, "XEN", sizeof(bootmethod)); | firmware_type = FW_XEN; | ||||
} | } | ||||
boothowto |= boot_env_to_howto(); | boothowto |= boot_env_to_howto(); | ||||
snprintf(acpi_rsdp, sizeof(acpi_rsdp), "%#" PRIx64, | snprintf(acpi_rsdp, sizeof(acpi_rsdp), "%#" PRIx64, | ||||
start_info->rsdp_paddr); | start_info->rsdp_paddr); | ||||
kern_setenv("acpi.rsdp", acpi_rsdp); | kern_setenv("acpi.rsdp", acpi_rsdp); | ||||
Show All 27 Lines |