dev-manual, ref-manual: Systemd-boot: Update documents for new EFI bootloader

Fixes [YOCTO #9707]

* Replaced gummiboot with systemd-boot in the dev-manual
* Replaced the gummiboot class with a new systemd-boot class
* Replaced the appropriate gummiboot variables in the glossary
  with new variables SYSTEMD_BOOT_CFG, SYSTEMD_BOOT_ENTRIES,
  and SYSTEMD_BOOT_TIMEOUT.

(From yocto-docs rev: 778b620e65cc68531b3c41aeb8f27f2a07eb0d00)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Scott Rifenbark 2016-08-22 14:55:05 -07:00 committed by Richard Purdie
parent ac0fa7a296
commit 9ba4fc087e
3 changed files with 138 additions and 131 deletions

View File

@ -8777,19 +8777,19 @@
within a separately started QEMU or any
other virtual machine manager.
</para></listitem>
<listitem><para><emphasis>"GummibootTarget":</emphasis>
Choose "GummibootTarget" if your hardware is
<listitem><para><emphasis>"Systemd-bootTarget":</emphasis>
Choose "Systemd-bootTarget" if your hardware is
an EFI-based machine with
<filename>gummiboot</filename> as bootloader and
<filename>systemd-boot</filename> as bootloader and
<filename>core-image-testmaster</filename>
(or something similar) is installed.
Also, your hardware under test must be in a
DHCP-enabled network that gives it the same IP
address for each reboot.</para>
<para>If you choose "GummibootTarget", there are
<para>If you choose "Systemd-bootTarget", there are
additional requirements and considerations.
See the
"<link linkend='selecting-gummiboottarget'>Selecting GummibootTarget</link>"
"<link linkend='selecting-systemd-boottarget'>Selecting Systemd-bootTarget</link>"
section, which follows, for more information.
</para></listitem>
<listitem><para><emphasis>"BeagleBoneTarget":</emphasis>
@ -8835,12 +8835,12 @@
</para>
</section>
<section id='selecting-gummiboottarget'>
<title>Selecting GummibootTarget</title>
<section id='selecting-systemd-boottarget'>
<title>Selecting Systemd-bootTarget</title>
<para>
If you did not set <filename>TEST_TARGET</filename> to
"GummibootTarget", then you do not need any information
"Systemd-bootTarget", then you do not need any information
in this section.
You can skip down to the
"<link linkend='qemu-image-running-tests'>Running Tests</link>"
@ -8849,14 +8849,14 @@
<para>
If you did set <filename>TEST_TARGET</filename> to
"GummibootTarget", you also need to perform a one-time
"Systemd-bootTarget", you also need to perform a one-time
setup of your master image by doing the following:
<orderedlist>
<listitem><para><emphasis>Set <filename>EFI_PROVIDER</filename>:</emphasis>
Be sure that <filename>EFI_PROVIDER</filename>
is as follows:
<literallayout class='monospaced'>
EFI_PROVIDER = "gummiboot"
EFI_PROVIDER = "systemd-boot"
</literallayout>
</para></listitem>
<listitem><para><emphasis>Build the master image:</emphasis>
@ -8920,7 +8920,7 @@
<para>
The final thing you need to do when setting
<filename>TEST_TARGET</filename> to "GummibootTarget" is
<filename>TEST_TARGET</filename> to "Systemd-bootTarget" is
to set up the test image:
<orderedlist>
<listitem><para><emphasis>Set up your <filename>local.conf</filename> file:</emphasis>
@ -8929,7 +8929,7 @@
<literallayout class='monospaced'>
IMAGE_FSTYPES += "tar.gz"
INHERIT += "testimage"
TEST_TARGET = "GummibootTarget"
TEST_TARGET = "Systemd-bootTarget"
TEST_TARGET_IP = "192.168.2.3"
</literallayout>
</para></listitem>
@ -9325,7 +9325,7 @@
The target controller object used to deploy
and start an image on a particular target
(e.g. QemuTarget, SimpleRemote, and
GummibootTarget).
Systemd-bootTarget).
Tests usually use the following:
<itemizedlist>
<listitem><para><emphasis><filename>ip</filename>:</emphasis>

View File

@ -1099,36 +1099,6 @@
</para>
</section>
<section id='ref-classes-gummiboot'>
<title><filename>gummiboot.bbclass</filename></title>
<para>
The <filename>gummiboot</filename> class provides functions specific
to the gummiboot bootloader for building bootable images.
This is an internal class and is not intended to be
used directly.
Set the
<link linkend='var-EFI_PROVIDER'><filename>EFI_PROVIDER</filename></link>
variable to "gummiboot" to use this class.
</para>
<para>
For information on more variables used and supported in this class,
see the
<link linkend='var-GUMMIBOOT_CFG'><filename>GUMMIBOOT_CFG</filename></link>,
<link linkend='var-GUMMIBOOT_ENTRIES'><filename>GUMMIBOOT_ENTRIES</filename></link>,
and
<link linkend='var-GUMMIBOOT_TIMEOUT'><filename>GUMMIBOOT_TIMEOUT</filename></link>
variables.
</para>
<para>
You can also see the
<ulink url='http://freedesktop.org/wiki/Software/gummiboot/'>Gummiboot documentation</ulink>
for more information.
</para>
</section>
<section id='ref-classes-gzipnative'>
<title><filename>gzipnative.bbclass</filename></title>
@ -3315,6 +3285,43 @@
</para>
</section>
<section id='ref-classes-systemd-boot'>
<title><filename>systemd-boot.bbclass</filename></title>
<para>
The <filename>systemd-boot</filename> class provides functions specific
to the systemd-boot bootloader for building bootable images.
This is an internal class and is not intended to be used directly.
<note>
The <filename>systemd-boot</filename> class is a result from
merging the <filename>gummiboot</filename> class used in previous
Yocto Project releases with the <filename>systemd</filename>
project.
</note>
Set the
<link linkend='var-EFI_PROVIDER'><filename>EFI_PROVIDER</filename></link>
variable to "systemd-boot" to use this class.
Doing so creates a standalone EFI bootloader that is not dependent
on systemd.
</para>
<para>
For information on more variables used and supported in this class,
see the
<link linkend='var-SYSTEMD_BOOT_CFG'><filename>SYSTEMD_BOOT_CFG</filename></link>,
<link linkend='var-SYSTEMD_BOOT_ENTRIES'><filename>SYSTEMD_BOOT_ENTRIES</filename></link>,
and
<link linkend='var-SYSTEMD_BOOT_TIMEOUT'><filename>SYSTEMD_BOOT_TIMEOUT</filename></link>
variables.
</para>
<para>
You can also see the
<ulink url='https://www.freedesktop.org/wiki/Software/systemd/'>Systemd documentation</ulink>
for more information.
</para>
</section>
<section id='ref-classes-terminal'>
<title><filename>terminal.bbclass</filename></title>

View File

@ -3532,13 +3532,13 @@
<link linkend='var-IMAGE_FSTYPES'><filename>IMAGE_FSTYPES</filename></link>),
the <filename>EFI_PROVIDER</filename> variable specifies
the EFI bootloader to use.
The default is "grub-efi", but "gummiboot" can be used
The default is "grub-efi", but "systemd-boot" can be used
instead.
</para>
<para>
See the
<link linkend='ref-classes-gummiboot'><filename>gummiboot</filename></link>
<link linkend='ref-classes-systemd-boot'><filename>systemd-boot</filename></link>
class for more information.
</para>
</glossdef>
@ -4674,92 +4674,6 @@
</glossdef>
</glossentry>
<glossentry id='var-GUMMIBOOT_CFG'><glossterm>GUMMIBOOT_CFG</glossterm>
<info>
GUMMIBOOT_CFG[doc] = "When EFI_PROVIDER is set to "gummiboot", the GUMMIBOOT_CFG variable specifies the configuration file that should be used."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
When
<link linkend='var-EFI_PROVIDER'><filename>EFI_PROVIDER</filename></link>
is set to "gummiboot", the
<filename>GUMMIBOOT_CFG</filename> variable specifies the
configuration file that should be used.
By default, the
<link linkend='ref-classes-gummiboot'><filename>gummiboot</filename></link>
class sets the <filename>GUMMIBOOT_CFG</filename> as
follows:
<literallayout class='monospaced'>
GUMMIBOOT_CFG ?= "${<link linkend='var-S'>S</link>}/loader.conf"
</literallayout>
</para>
<para>
For information on Gummiboot, see the
<ulink url='http://freedesktop.org/wiki/Software/gummiboot/'>Gummiboot documentation</ulink>.
</para>
</glossdef>
</glossentry>
<glossentry id='var-GUMMIBOOT_ENTRIES'><glossterm>GUMMIBOOT_ENTRIES</glossterm>
<info>
GUMMIBOOT_ENTRIES[doc] = "When EFI_PROVIDER is set to "gummiboot", the GUMMIBOOT_ENTRIES variable specifies a list of entry files (*.conf) to be installed containing one boot entry per file."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
When
<link linkend='var-EFI_PROVIDER'><filename>EFI_PROVIDER</filename></link>
is set to "gummiboot", the
<filename>GUMMIBOOT_ENTRIES</filename> variable specifies
a list of entry files
(<filename>*.conf</filename>) to be installed
containing one boot entry per file.
By default, the
<link linkend='ref-classes-gummiboot'><filename>gummiboot</filename></link>
class sets the <filename>GUMMIBOOT_ENTRIES</filename> as
follows:
<literallayout class='monospaced'>
GUMMIBOOT_ENTRIES ?= ""
</literallayout>
</para>
<para>
For information on Gummiboot, see the
<ulink url='http://freedesktop.org/wiki/Software/gummiboot/'>Gummiboot documentation</ulink>.
</para>
</glossdef>
</glossentry>
<glossentry id='var-GUMMIBOOT_TIMEOUT'><glossterm>GUMMIBOOT_TIMEOUT</glossterm>
<info>
GUMMIBOOT_TIMEOUT[doc] = "When EFI_PROVIDER is set to "gummiboot", the GUMMIBOOT_TIMEOUT variable specifies the boot menu timeout in seconds."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
When
<link linkend='var-EFI_PROVIDER'><filename>EFI_PROVIDER</filename></link>
is set to "gummiboot", the
<filename>GUMMIBOOT_TIMEOUT</filename> variable specifies
the boot menu timeout in seconds.
By default, the
<link linkend='ref-classes-gummiboot'><filename>gummiboot</filename></link>
class sets the <filename>GUMMIBOOT_TIMEOUT</filename> as
follows:
<literallayout class='monospaced'>
GUMMIBOOT_TIMEOUT ?= "10"
</literallayout>
</para>
<para>
For information on Gummiboot, see the
<ulink url='http://freedesktop.org/wiki/Software/gummiboot/'>Gummiboot documentation</ulink>.
</para>
</glossdef>
</glossentry>
</glossdiv>
<glossdiv id='var-glossary-h'><title>H</title>
@ -12938,6 +12852,92 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
</glossdef>
</glossentry>
<glossentry id='var-SYSTEMD_BOOT_CFG'><glossterm>SYSTEMD_BOOT_CFG</glossterm>
<info>
SYSTEMD_BOOT_CFG[doc] = "When EFI_PROVIDER is set to "systemd-boot", the SYSTEMD_BOOT_CFG variable specifies the configuration file that should be used."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
When
<link linkend='var-EFI_PROVIDER'><filename>EFI_PROVIDER</filename></link>
is set to "systemd-boot", the
<filename>SYSTEMD_BOOT_CFG</filename> variable specifies the
configuration file that should be used.
By default, the
<link linkend='ref-classes-systemd-boot'><filename>systemd-boot</filename></link>
class sets the <filename>SYSTEMD_BOOT_CFG</filename> as
follows:
<literallayout class='monospaced'>
SYSTEMD_BOOT_CFG ?= "${<link linkend='var-S'>S</link>}/loader.conf"
</literallayout>
</para>
<para>
For information on Systemd-boot, see the
<ulink url='http://freedesktop.org/wiki/Software/systemd-boot/'>Systemd-boot documentation</ulink>.
</para>
</glossdef>
</glossentry>
<glossentry id='var-SYSTEMD_BOOT_ENTRIES'><glossterm>SYSTEMD_BOOT_ENTRIES</glossterm>
<info>
SYSTEMD_BOOT_ENTRIES[doc] = "When EFI_PROVIDER is set to "systemd-boot", the SYSTEMD_BOOT_ENTRIES variable specifies a list of entry files (*.conf) to be installed containing one boot entry per file."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
When
<link linkend='var-EFI_PROVIDER'><filename>EFI_PROVIDER</filename></link>
is set to "systemd-boot", the
<filename>SYSTEMD_BOOT_ENTRIES</filename> variable specifies
a list of entry files
(<filename>*.conf</filename>) to be installed
containing one boot entry per file.
By default, the
<link linkend='ref-classes-systemd-boot'><filename>systemd-boot</filename></link>
class sets the <filename>SYSTEMD_BOOT_ENTRIES</filename> as
follows:
<literallayout class='monospaced'>
SYSTEMD_BOOT_ENTRIES ?= ""
</literallayout>
</para>
<para>
For information on Systemd-boot, see the
<ulink url='http://freedesktop.org/wiki/Software/systemd-boot/'>Systemd-boot documentation</ulink>.
</para>
</glossdef>
</glossentry>
<glossentry id='var-SYSTEMD_BOOT_TIMEOUT'><glossterm>SYSTEMD_BOOT_TIMEOUT</glossterm>
<info>
SYSTEMD_BOOT_TIMEOUT[doc] = "When EFI_PROVIDER is set to "systemd-boot", the SYSTEMD_BOOT_TIMEOUT variable specifies the boot menu timeout in seconds."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
When
<link linkend='var-EFI_PROVIDER'><filename>EFI_PROVIDER</filename></link>
is set to "systemd-boot", the
<filename>SYSTEMD_BOOT_TIMEOUT</filename> variable specifies
the boot menu timeout in seconds.
By default, the
<link linkend='ref-classes-systemd-boot'><filename>systemd-boot</filename></link>
class sets the <filename>SYSTEMD_BOOT_TIMEOUT</filename> as
follows:
<literallayout class='monospaced'>
SYSTEMD_BOOT_TIMEOUT ?= "10"
</literallayout>
</para>
<para>
For information on Systemd-boot, see the
<ulink url='http://freedesktop.org/wiki/Software/systemd-boot/'>Systemd-boot documentation</ulink>.
</para>
</glossdef>
</glossentry>
<glossentry id='var-SYSTEMD_PACKAGES'><glossterm>SYSTEMD_PACKAGES</glossterm>
<info>
SYSTEMD_PACKAGES[doc] = "For recipes that inherit the systemd class, this variable locates the systemd unit files when they are not found in the main recipe's package."