Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
UEFI(8)			FreeBSD	System Manager's Manual		       UEFI(8)

     UEFI -- Unified Extensible	Firmware Interface bootstrapping procedures

     The UEFI Unified Extensible Firmware Interface provides boot- and run-
     time services to operating	systems.  UEFI is a replacement	for the	legacy
     BIOS on the i386 and amd64	CPU architectures, and is also used on arm,
     arm64 and ia64.

     The UEFI specification is the successor to	the Extensible Firmware	Inter-
     face (EFI)	specification.	The terms are often used interchangeably.

     The UEFI boot process loads system	bootstrap code located in an EFI Sys-
     tem Partition (ESP).  The ESP is a	GPT or MBR partition with a specific
     identifier	that contains an msdosfs(5) FAT	file system with a specified
     file hierarchy.

	   Partition Scheme    ESP Identifier
	   GPT		       C12A7328-F81F-11D2-BA4B-00A0C93EC93B
	   MBR		       0xEF

     The UEFI boot process proceeds as follows:
	   1.	UEFI firmware runs at power up and searches for	an OS loader
		in the EFI system partition.  The path to the loader may be
		set by an EFI environment variable.  If	not set, an architec-
		ture-specific default is used.

		      Architecture    Default Path
		      amd64	      /EFI/BOOT/BOOTX64.EFI
		      arm64	      /EFI/BOOT/BOOTAA64.EFI

		The default UEFI boot configuration for	FreeBSD	installs
		boot1.efi in the default path.
	   2.	boot1.efi reads	boot configuration from	/boot.config or
		/boot/config.  Unlike other first-stage	boot loaders,
		boot1.efi passes the configuration to the next stage boot
		loader and does	not itself act on the contents of the file.
	   3.	boot1.efi searches partitions of type freebsd-ufs and
		freebsd-zfs for	loader.efi.  The search	begins with partitions
		on the device from which boot1.efi was loaded, and continues
		with other available partitions.  If both freebsd-ufs and
		freebsd-zfs partitions exist on	the same device	the
		freebsd-zfs partition is preferred.  boot1.efi then loads and
		executes loader.efi.
	   4.	loader.efi loads and boots the kernel, as described in

     The vt(4) system console is automatically selected	when booting via UEFI.

		   First stage UEFI bootstrap
		   msdosfs(5) FAT file system image containing boot1.efi for
		   use by bsdinstall(8)	and the	bootcode argument to gpart(8).
		   Final stage bootstrap
		   default kernel
		   typical non-default kernel (optional)

     vt(4), boot.config(5), msdosfs(5),	boot(8), efibootmgr(8),	efidp(8),
     efivar(8),	gpart(8), uefisign(8)

     EFI boot support for the ia64 architecture	first appeared in FreeBSD 5.0.
     UEFI boot support for amd64 first appeared	in FreeBSD 10.1	and for	arm64
     in	FreeBSD	11.0.

     EFI environment variables are not supported by loader(8) or the kernel.

FreeBSD	13.0		       January 25, 2018			  FreeBSD 13.0


Want to link to this manual page? Use this URL:

home | help