summaryrefslogtreecommitdiff
path: root/poky/documentation/ref-manual/classes.rst
diff options
context:
space:
mode:
Diffstat (limited to 'poky/documentation/ref-manual/classes.rst')
-rw-r--r--poky/documentation/ref-manual/classes.rst50
1 files changed, 36 insertions, 14 deletions
diff --git a/poky/documentation/ref-manual/classes.rst b/poky/documentation/ref-manual/classes.rst
index 5a30ce379b..be112e0faf 100644
--- a/poky/documentation/ref-manual/classes.rst
+++ b/poky/documentation/ref-manual/classes.rst
@@ -278,7 +278,7 @@ The ``ccache`` class enables the C/C++ Compiler Cache for the build.
This class is used to give a minor performance boost during the build.
However, using the class can lead to unexpected side-effects. Thus, it
is recommended that you do not use this class. See
-http://ccache.samba.org/ for information on the C/C++ Compiler
+https://ccache.samba.org/ for information on the C/C++ Compiler
Cache.
.. _ref-classes-chrpath:
@@ -931,7 +931,7 @@ For information on customizing images, see the
in the Yocto Project Development Tasks Manual. For information on how
images are created, see the
":ref:`overview-manual/concepts:images`" section in the
-Yocto Project Overview and Concpets Manual.
+Yocto Project Overview and Concepts Manual.
.. _ref-classes-image-buildinfo:
@@ -1374,39 +1374,61 @@ generation.
``kernel-fitimage.bbclass``
===========================
-The ``kernel-fitimage`` class provides support to pack a kernel Image,
-device trees and a RAM disk into a single FIT image. In theory, a FIT
-image can support any number of kernels, RAM disks and device-trees.
+The ``kernel-fitimage`` class provides support to pack a kernel image,
+device trees, a U-boot script, a Initramfs bundle and a RAM disk
+into a single FIT image. In theory, a FIT image can support any number
+of kernels, U-boot scripts, Initramfs bundles, RAM disks and device-trees.
However, ``kernel-fitimage`` currently only supports
-limited usescases: just one kernel image, an optional RAM disk, and
-any number of device tree.
+limited usescases: just one kernel image, an optional U-boot script,
+an optional Initramfs bundle, an optional RAM disk, and any number of
+device tree.
To create a FIT image, it is required that :term:`KERNEL_CLASSES`
-is set to "kernel-fitimage" and :term:`KERNEL_IMAGETYPE`
+is set to include "kernel-fitimage" and :term:`KERNEL_IMAGETYPE`
is set to "fitImage".
-The options for the device tree compiler passed to mkimage -D feature
+The options for the device tree compiler passed to ``mkimage -D``
when creating the FIT image are specified using the
:term:`UBOOT_MKIMAGE_DTCOPTS` variable.
Only a single kernel can be added to the FIT image created by
``kernel-fitimage`` and the kernel image in FIT is mandatory. The
-address where the kernel image is to be loaded by U-boot is
+address where the kernel image is to be loaded by U-Boot is
specified by :term:`UBOOT_LOADADDRESS` and the entrypoint by
:term:`UBOOT_ENTRYPOINT`.
Multiple device trees can be added to the FIT image created by
``kernel-fitimage`` and the device tree is optional.
-The address where the device tree is to be loaded by U-boot is
+The address where the device tree is to be loaded by U-Boot is
specified by :term:`UBOOT_DTBO_LOADADDRESS` for device tree overlays
and by :term:`UBOOT_DTB_LOADADDRESS` for device tree binaries.
Only a single RAM disk can be added to the FIT image created by
``kernel-fitimage`` and the RAM disk in FIT is optional.
-The address where the RAM disk image is to be loaded by U-boot
+The address where the RAM disk image is to be loaded by U-Boot
is specified by :term:`UBOOT_RD_LOADADDRESS` and the entrypoint by
:term:`UBOOT_RD_ENTRYPOINT`. The ramdisk is added to FIT image when
-:term:`INITRAMFS_IMAGE` is specified.
+:term:`INITRAMFS_IMAGE` is specified and that :term:`INITRAMFS_IMAGE_BUNDLE`
+is set to 0.
+
+Only a single Initramfs bundle can be added to the FIT image created by
+``kernel-fitimage`` and the Initramfs bundle in FIT is optional.
+In case of Initramfs, the kernel is configured to be bundled with the rootfs
+in the same binary (example: zImage-initramfs-:term:`MACHINE`.bin).
+When the kernel is copied to RAM and executed, it unpacks the Initramfs rootfs.
+The Initramfs bundle can be enabled when :term:`INITRAMFS_IMAGE`
+is specified and that :term:`INITRAMFS_IMAGE_BUNDLE` is set to 1.
+The address where the Initramfs bundle is to be loaded by U-boot is specified
+by :term:`UBOOT_LOADADDRESS` and the entrypoint by :term:`UBOOT_ENTRYPOINT`.
+
+Only a single U-boot boot script can be added to the FIT image created by
+``kernel-fitimage`` and the boot script is optional.
+The boot script is specified in the ITS file as a text file containing
+U-boot commands. When using a boot script the user should configure the
+U-boot ``do_install`` task to copy the script to sysroot.
+So the script can be included in the the FIT image by the ``kernel-fitimage``
+class. At run-time, U-boot CONFIG_BOOTCOMMAND define can be configured to
+load the boot script from the FIT image and executes it.
The FIT image generated by ``kernel-fitimage`` class is signed when the
variables :term:`UBOOT_SIGN_ENABLE`, :term:`UBOOT_MKIMAGE_DTCOPTS`,
@@ -2581,7 +2603,7 @@ the :term:`SYSTEMD_BOOT_CFG`,
:term:`SYSTEMD_BOOT_TIMEOUT` variables.
You can also see the `Systemd-boot
-documentation <http://www.freedesktop.org/wiki/Software/systemd/systemd-boot/>`__
+documentation <https://www.freedesktop.org/wiki/Software/systemd/systemd-boot/>`__
for more information.
.. _ref-classes-terminal: