xref: /freebsd/share/man/man8/uefi.8 (revision 4bf111c32ade47cffaf14cc6948459c6105acee2)
1*4bf111c3SEd Maste.\" Copyright (c) 2014 The FreeBSD Foundation
2*4bf111c3SEd Maste.\" All rights reserved.
3*4bf111c3SEd Maste.\"
4*4bf111c3SEd Maste.\" Redistribution and use in source and binary forms, with or without
5*4bf111c3SEd Maste.\" modification, are permitted provided that the following conditions
6*4bf111c3SEd Maste.\" are met:
7*4bf111c3SEd Maste.\" 1. Redistributions of source code must retain the above copyright
8*4bf111c3SEd Maste.\"    notice, this list of conditions and the following disclaimer.
9*4bf111c3SEd Maste.\" 2. Redistributions in binary form must reproduce the above copyright
10*4bf111c3SEd Maste.\"    notice, this list of conditions and the following disclaimer in the
11*4bf111c3SEd Maste.\"    documentation and/or other materials provided with the distribution.
12*4bf111c3SEd Maste.\"
13*4bf111c3SEd Maste.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
14*4bf111c3SEd Maste.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15*4bf111c3SEd Maste.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16*4bf111c3SEd Maste.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
17*4bf111c3SEd Maste.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18*4bf111c3SEd Maste.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19*4bf111c3SEd Maste.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20*4bf111c3SEd Maste.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21*4bf111c3SEd Maste.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22*4bf111c3SEd Maste.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23*4bf111c3SEd Maste.\" SUCH DAMAGE.
24*4bf111c3SEd Maste.\"
25*4bf111c3SEd Maste.\" $FreeBSD$
26*4bf111c3SEd Maste.\"
27*4bf111c3SEd Maste.Dd October 17, 2014
28*4bf111c3SEd Maste.Dt UEFI 8
29*4bf111c3SEd Maste.Os
30*4bf111c3SEd Maste.Sh NAME
31*4bf111c3SEd Maste.Nm UEFI
32*4bf111c3SEd Maste.Nd Unified Extensible Firmware Interface bootstrapping procedures
33*4bf111c3SEd Maste.Sh DESCRIPTION
34*4bf111c3SEd MasteThe
35*4bf111c3SEd Maste.Nm
36*4bf111c3SEd MasteUnified Extensible Firmware Interface provides boot- and run-time services
37*4bf111c3SEd Masteservices to operating systems.
38*4bf111c3SEd Maste.Nm
39*4bf111c3SEd Masteis a replacement for the legacy BIOS on the i386 and amd64 CPU architectures,
40*4bf111c3SEd Masteand is also used on arm64 and ia64.
41*4bf111c3SEd Maste.Pp
42*4bf111c3SEd MasteThe
43*4bf111c3SEd Maste.Nm
44*4bf111c3SEd Masteboot process loads system bootstrap code located in an EFI System Partition
45*4bf111c3SEd Maste(ESP).
46*4bf111c3SEd MasteThe ESP is a GPT or MBR parition with a specific identifier that contains an
47*4bf111c3SEd Maste.Xr msdosfs 5
48*4bf111c3SEd MasteFAT file system with a specified file hierarchy.
49*4bf111c3SEd Maste.Bl -column -offset indent ".Sy Partition Scheme" ".Sy ESP Identifier"
50*4bf111c3SEd Maste.It Sy "Partition Scheme" Ta Sy "ESP Identifier"
51*4bf111c3SEd Maste.It GPT Ta C12A7328-F81F-11D2-BA4B-00A0C93EC93B
52*4bf111c3SEd Maste.It MBR Ta 0xEF
53*4bf111c3SEd Maste.El
54*4bf111c3SEd Maste.Pp
55*4bf111c3SEd MasteThe
56*4bf111c3SEd Maste.Nm
57*4bf111c3SEd Masteboot process proceeds as follows:
58*4bf111c3SEd Maste.Bl -enum -offset indent -compact
59*4bf111c3SEd Maste.It
60*4bf111c3SEd Maste.Nm
61*4bf111c3SEd Mastefirmware runs at power up and searches for an OS loader in the EFI system
62*4bf111c3SEd Mastepartition.
63*4bf111c3SEd MasteThe path to the loader may be set by an EFI environment variable.
64*4bf111c3SEd MasteIf not set, the default is
65*4bf111c3SEd Maste.Pa /EFI/BOOT/BOOTX64.EFI .
66*4bf111c3SEd MasteThe default
67*4bf111c3SEd Maste.Nm
68*4bf111c3SEd Masteboot configuration for
69*4bf111c3SEd Maste.Fx
70*4bf111c3SEd Masteinstalls
71*4bf111c3SEd Maste.Pa boot1.efi
72*4bf111c3SEd Masteas
73*4bf111c3SEd Maste.Pa /EFI/BOOT/BOOTX64.EFI .
74*4bf111c3SEd Maste.It
75*4bf111c3SEd Maste.Pa boot1.efi
76*4bf111c3SEd Mastelocates the first partition with the type
77*4bf111c3SEd Maste.Li freebsd-ufs ,
78*4bf111c3SEd Masteand from it loads
79*4bf111c3SEd Maste.Pa loader.efi .
80*4bf111c3SEd Maste.It
81*4bf111c3SEd Maste.Pa loader.efi
82*4bf111c3SEd Masteloads and boots the kernel, as described in
83*4bf111c3SEd Maste.Xr loader 8 .
84*4bf111c3SEd Maste.El
85*4bf111c3SEd Maste.Pp
86*4bf111c3SEd MasteThe
87*4bf111c3SEd Maste.Xr vt 4
88*4bf111c3SEd Mastesystem console is automatically selected when booting via
89*4bf111c3SEd Maste.Nm .
90*4bf111c3SEd Maste.Sh FILES
91*4bf111c3SEd Maste.Bl -tag -width /boot/loader -compact
92*4bf111c3SEd Maste.It Pa /boot/boot1.efi
93*4bf111c3SEd MasteFirst stage
94*4bf111c3SEd Maste.Nm
95*4bf111c3SEd Mastebootstrap
96*4bf111c3SEd Maste.It Pa /boot/boot1.efifat
97*4bf111c3SEd Maste.Xr msdosfs 5
98*4bf111c3SEd MasteFAT file system image containing
99*4bf111c3SEd Maste.Pa boot1.efi
100*4bf111c3SEd Mastefor use by
101*4bf111c3SEd Maste.Xr bsdinstall 8
102*4bf111c3SEd Masteand the
103*4bf111c3SEd Maste.Ar bootcode
104*4bf111c3SEd Masteargument to
105*4bf111c3SEd Maste.Xr gpart 8 .
106*4bf111c3SEd Maste.It Pa /boot/loader.efi
107*4bf111c3SEd MasteFinal stage bootstrap
108*4bf111c3SEd Maste.It Pa /boot/kernel/kernel
109*4bf111c3SEd Mastedefault kernel
110*4bf111c3SEd Maste.It Pa /boot/kernel.old/kernel
111*4bf111c3SEd Mastetypical non-default kernel (optional)
112*4bf111c3SEd Maste.El
113*4bf111c3SEd Maste.Sh CAVEATS
114*4bf111c3SEd MasteEFI environment variables are not supported by
115*4bf111c3SEd Maste.Xr loader 8
116*4bf111c3SEd Masteor the kernel.
117*4bf111c3SEd Maste.Pp
118*4bf111c3SEd Maste.Pa boot1.efi
119*4bf111c3SEd Masteloads
120*4bf111c3SEd Maste.Pa loader.efi
121*4bf111c3SEd Mastefrom the first FreeBSD-UFS file system it locates, even if it is on a
122*4bf111c3SEd Mastedifferent disk.
123*4bf111c3SEd Maste.Pp
124*4bf111c3SEd Maste.Pa boot1.efi
125*4bf111c3SEd Mastecannot load
126*4bf111c3SEd Maste.Pa loader.efi
127*4bf111c3SEd Mastefrom a
128*4bf111c3SEd Maste.Xr ZFS 8
129*4bf111c3SEd Mastefile system.
130*4bf111c3SEd MasteAs a result,
131*4bf111c3SEd Maste.Nm
132*4bf111c3SEd Mastedoes not support a typical root file system on ZFS configuration.
133*4bf111c3SEd Maste.Sh SEE ALSO
134*4bf111c3SEd Maste.Xr vt 4 ,
135*4bf111c3SEd Maste.Xr msdosfs 5 ,
136*4bf111c3SEd Maste.Xr boot 8 ,
137*4bf111c3SEd Maste.Xr gpart 8
138*4bf111c3SEd Maste.Sh HISTORY
139*4bf111c3SEd Maste.Nm
140*4bf111c3SEd Masteboot support first appeared in
141*4bf111c3SEd Maste.Fx 10.1 .
142*4bf111c3SEd Maste.Sh AUTHORS
143*4bf111c3SEd Maste.An -nosplit
144*4bf111c3SEd Maste.Nm
145*4bf111c3SEd Masteboot support was developed by
146*4bf111c3SEd Maste.An Benno Rice Aq Mt benno@FreeBSD.org ,
147*4bf111c3SEd Maste.An Ed Maste Aq Mt emaste@FreeBSD.org ,
148*4bf111c3SEd Masteand
149*4bf111c3SEd Maste.An Nathan Whitehorn Aq Mt nwhitehorn@FreeBSD.org .
150*4bf111c3SEd MasteThe
151*4bf111c3SEd Maste.Fx
152*4bf111c3SEd MasteFoundation sponsored portions of the work.
153