1d195d509SSascha Wildner.\" Copyright (c) 2014 The FreeBSD Foundation 2d195d509SSascha Wildner.\" All rights reserved. 3d195d509SSascha Wildner.\" 4d195d509SSascha Wildner.\" Redistribution and use in source and binary forms, with or without 5d195d509SSascha Wildner.\" modification, are permitted provided that the following conditions 6d195d509SSascha Wildner.\" are met: 7d195d509SSascha Wildner.\" 1. Redistributions of source code must retain the above copyright 8d195d509SSascha Wildner.\" notice, this list of conditions and the following disclaimer. 9d195d509SSascha Wildner.\" 2. Redistributions in binary form must reproduce the above copyright 10d195d509SSascha Wildner.\" notice, this list of conditions and the following disclaimer in the 11d195d509SSascha Wildner.\" documentation and/or other materials provided with the distribution. 12d195d509SSascha Wildner.\" 13d195d509SSascha Wildner.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND 14d195d509SSascha Wildner.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15d195d509SSascha Wildner.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16d195d509SSascha Wildner.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE 17d195d509SSascha Wildner.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18d195d509SSascha Wildner.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19d195d509SSascha Wildner.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20d195d509SSascha Wildner.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21d195d509SSascha Wildner.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22d195d509SSascha Wildner.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23d195d509SSascha Wildner.\" SUCH DAMAGE. 24d195d509SSascha Wildner.\" 25d195d509SSascha Wildner.\" $FreeBSD: head/share/man/man8/uefi.8 295522 2016-02-11 14:45:18Z emaste $ 26d195d509SSascha Wildner.\" 27*abf903a5SSascha Wildner.Dd June 13, 2020 28d195d509SSascha Wildner.Dt UEFI 8 29d195d509SSascha Wildner.Os 30d195d509SSascha Wildner.Sh NAME 31d195d509SSascha Wildner.Nm UEFI 32d195d509SSascha Wildner.Nd Unified Extensible Firmware Interface bootstrapping procedures 33d195d509SSascha Wildner.Sh DESCRIPTION 34d195d509SSascha WildnerThe 35d195d509SSascha Wildner.Nm 36d195d509SSascha WildnerUnified Extensible Firmware Interface provides boot- and run-time services 37d195d509SSascha Wildnerto operating systems. 38d195d509SSascha Wildner.Nm 39d195d509SSascha Wildneris a replacement for the legacy BIOS on the i386 and amd64 CPU architectures, 40d195d509SSascha Wildnerand is also used on arm64 and ia64. 41d195d509SSascha Wildner.Pp 42d195d509SSascha WildnerThe 43d195d509SSascha Wildner.Nm 44d195d509SSascha Wildnerboot process loads system bootstrap code located in an EFI System Partition 45d195d509SSascha Wildner(ESP). 46d195d509SSascha WildnerThe ESP is a GPT or MBR partition with a specific identifier that contains an 47d195d509SSascha Wildner.Xr msdos 5 48d195d509SSascha WildnerFAT file system with a specified file hierarchy. 49d195d509SSascha Wildner.Bl -column -offset indent ".Sy Partition Scheme" ".Sy ESP Identifier" 50d195d509SSascha Wildner.It Sy "Partition Scheme" Ta Sy "ESP Identifier" 51d195d509SSascha Wildner.It GPT Ta C12A7328-F81F-11D2-BA4B-00A0C93EC93B 52d195d509SSascha Wildner.It MBR Ta 0xEF 53d195d509SSascha Wildner.El 54d195d509SSascha Wildner.Pp 55d195d509SSascha WildnerThe 56d195d509SSascha Wildner.Nm 57d195d509SSascha Wildnerboot process proceeds as follows: 58d195d509SSascha Wildner.Bl -enum -offset indent -compact 59d195d509SSascha Wildner.It 60d195d509SSascha Wildner.Nm 61d195d509SSascha Wildnerfirmware runs at power up and searches for an OS loader in the EFI system 62d195d509SSascha Wildnerpartition. 63d195d509SSascha WildnerThe path to the loader may be set by an EFI environment variable. 64d195d509SSascha WildnerIf not set, the default is 65d195d509SSascha Wildner.Pa /EFI/BOOT/BOOTX64.EFI . 66d195d509SSascha WildnerThe default 67d195d509SSascha Wildner.Nm 68d195d509SSascha Wildnerboot configuration for 69d195d509SSascha Wildner.Dx 70d195d509SSascha Wildnerinstalls 71d195d509SSascha Wildner.Pa boot1.efi 72d195d509SSascha Wildneras 73d195d509SSascha Wildner.Pa /EFI/BOOT/BOOTX64.EFI . 74d195d509SSascha Wildner.It 75d195d509SSascha Wildner.Pa boot1.efi 76d195d509SSascha Wildnerreads boot configuration from 77d195d509SSascha Wildner.Pa /boot.config 78d195d509SSascha Wildneror 79d195d509SSascha Wildner.Pa /boot/config . 80d195d509SSascha WildnerUnlike other first-stage boot loaders, 81d195d509SSascha Wildner.Pa boot1.efi 82d195d509SSascha Wildnerpasses the configuration to the next stage boot loader and does not 83d195d509SSascha Wildneritself act on the contents of the file. 84d195d509SSascha Wildner.It 85d195d509SSascha Wildner.Pa boot1.efi 86d195d509SSascha Wildnersearches partitions of type 87d195d509SSascha Wildner.Sq DragonFly UFS1 88d195d509SSascha Wildnerand the first 89d195d509SSascha Wildner.Xr disklabel64 5 90d195d509SSascha Wildnerpartition in GPT partitions of type 91d195d509SSascha Wildner.Sq DragonFly Label64 92d195d509SSascha Wildnerfor 93d195d509SSascha Wildner.Pa loader.efi . 94d195d509SSascha WildnerThe search begins with partitions on the device from which 95d195d509SSascha Wildner.Pa boot1.efi 96d195d509SSascha Wildnerwas loaded, and continues with other available partitions. 97d195d509SSascha Wildner.\"If both 98d195d509SSascha Wildner.\".Li DragonFly UFS1 99d195d509SSascha Wildner.\"and 100d195d509SSascha Wildner.\".Li DragonFly Label64 101d195d509SSascha Wildner.\"partitions exist on the same device 102d195d509SSascha Wildner.\"... 103d195d509SSascha Wildner.Pa boot1.efi 104d195d509SSascha Wildnerthen loads and executes 105d195d509SSascha Wildner.Pa loader.efi . 106d195d509SSascha Wildner.It 107d195d509SSascha Wildner.Pa loader.efi 108d195d509SSascha Wildnerloads and boots the kernel, as described in 109d195d509SSascha Wildner.Xr loader 8 . 110d195d509SSascha Wildner.El 111d195d509SSascha Wildner.Sh FILES 112d195d509SSascha Wildner.Bl -tag -width /boot/loader -compact 113d195d509SSascha Wildner.It Pa /boot/boot1.efi 114d195d509SSascha WildnerFirst stage 115d195d509SSascha Wildner.Nm 116d195d509SSascha Wildnerbootstrap 117d195d509SSascha Wildner.It Pa /boot/loader.efi 118d195d509SSascha WildnerFinal stage bootstrap 119d195d509SSascha Wildner.It Pa /boot/kernel/kernel 120d195d509SSascha Wildnerdefault kernel 121d195d509SSascha Wildner.It Pa /boot/kernel.old/kernel 122d195d509SSascha Wildnertypical non-default kernel (optional) 123d195d509SSascha Wildner.El 124d195d509SSascha Wildner.Sh SEE ALSO 125d195d509SSascha Wildner.\".Xr boot.config 5 , 1262bd356f2SSascha Wildner.Xr efivar 3 , 127d195d509SSascha Wildner.Xr disklabel64 5 , 128d195d509SSascha Wildner.Xr msdos 5 , 129d195d509SSascha Wildner.Xr boot 8 , 130*abf903a5SSascha Wildner.Xr efibootmgr 8 , 131d9c051c1SSascha Wildner.Xr efidp 8 , 1322bd356f2SSascha Wildner.Xr efisetup 8 , 1332bd356f2SSascha Wildner.Xr efivar 8 , 134d195d509SSascha Wildner.Xr uefisign 8 135d195d509SSascha Wildner.Sh HISTORY 136d195d509SSascha Wildner.Nm 137d195d509SSascha Wildnerboot support first appeared in 138d195d509SSascha Wildner.Fx 10.1 139d195d509SSascha Wildnerand was brought into 14058a32472SSascha Wildner.Dx 4.5 . 141d195d509SSascha Wildner.Sh AUTHORS 142d195d509SSascha Wildner.An -nosplit 143d195d509SSascha Wildner.Nm 144d195d509SSascha Wildnerboot support was developed by 145d195d509SSascha Wildner.An Benno Rice Aq Mt benno@FreeBSD.org , 146d195d509SSascha Wildner.An \&Ed Maste Aq Mt emaste@FreeBSD.org , 147d195d509SSascha Wildnerand 148d195d509SSascha Wildner.An Nathan Whitehorn Aq Mt nwhitehorn@FreeBSD.org . 149d195d509SSascha WildnerThe 150d195d509SSascha Wildner.Fx 151d195d509SSascha WildnerFoundation sponsored portions of the work. 152d195d509SSascha Wildner.Sh CAVEATS 153d195d509SSascha WildnerEFI environment variables are not supported by 154d195d509SSascha Wildner.Xr loader 8 155d195d509SSascha Wildneror the kernel. 156