summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdrian Freihofer <adrian.freihofer@siemens.com>2025-06-16 22:36:47 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2025-06-20 09:48:14 +0100
commit7a01d262a19c472bfebfa1aa314d5b910c9977bd (patch)
treefb3886f508ebd65acdcf46507798e93f352a3cb0
parent474742f808378f6d577feaff8e56b3ccbaaee726 (diff)
downloadpoky-7a01d262a19c472bfebfa1aa314d5b910c9977bd.tar.gz
ref-manual: replace kernel-fitimage by kernel-fit-image
(From yocto-docs rev: 93c92dd2837708ba00a4ca47667e60d7bb09430b) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--documentation/ref-manual/classes.rst219
-rw-r--r--documentation/ref-manual/variables.rst60
2 files changed, 179 insertions, 100 deletions
diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst
index da2bd028d8..f2f6e6e411 100644
--- a/documentation/ref-manual/classes.rst
+++ b/documentation/ref-manual/classes.rst
@@ -1732,77 +1732,158 @@ Its behavior is mainly controlled by the following variables:
1732- :term:`KERNEL_DTC_FLAGS`: flags for ``dtc``, the Device Tree Compiler 1732- :term:`KERNEL_DTC_FLAGS`: flags for ``dtc``, the Device Tree Compiler
1733- :term:`KERNEL_PACKAGE_NAME`: base name of the kernel packages 1733- :term:`KERNEL_PACKAGE_NAME`: base name of the kernel packages
1734 1734
1735.. _ref-classes-kernel-fitimage: 1735.. _ref-classes-kernel-fit-image:
1736 1736
1737``kernel-fitimage`` 1737``kernel-fit-image``
1738=================== 1738====================
1739 1739
1740The :ref:`ref-classes-kernel-fitimage` class provides support to pack a kernel image, 1740The :ref:`ref-classes-kernel-fit-image` class provides support to pack a kernel image,
1741device trees, a U-boot script, an :term:`Initramfs` bundle and a RAM disk 1741device trees, a U-boot script, and an :term:`Initramfs` into a single FIT image.
1742into a single FIT image. In theory, a FIT image can support any number 1742In theory, a FIT image can support any number of kernels, U-boot scripts,
1743of kernels, U-boot scripts, :term:`Initramfs` bundles, RAM disks and device-trees. 1743:term:`Initramfs`, and device trees.
1744However, :ref:`ref-classes-kernel-fitimage` currently only supports 1744However, :ref:`ref-classes-kernel-fit-image` currently only supports
1745limited usecases: just one kernel image, an optional U-boot script, 1745limited usecases: just one kernel image, an optional U-boot script,
1746an optional :term:`Initramfs` bundle, an optional RAM disk, and any number of 1746an optional :term:`Initramfs`, and any number of device trees.
1747device trees. 1747
1748 1748The FIT image is created by a recipe which inherits the
1749To create a FIT image, it is required that :term:`KERNEL_CLASSES` 1749:ref:`ref-classes-kernel-fit-image` class.
1750is set to include ":ref:`ref-classes-kernel-fitimage`" and one of :term:`KERNEL_IMAGETYPE`, 1750One such example is the ``linux-yocto-fitimage`` recipe which creates a FIT
1751:term:`KERNEL_ALT_IMAGETYPE` or :term:`KERNEL_IMAGETYPES` to include "fitImage". 1751image for the Linux Yocto kernel.
1752 1752Additionally, it is required that :term:`KERNEL_CLASSES` is set to include
1753The options for the device tree compiler passed to ``mkimage -D`` 1753:ref:`ref-classes-kernel-fit-extra-artifacts`.
1754when creating the FIT image are specified using the 1754The :ref:`ref-classes-kernel-fit-extra-artifacts` class exposes the required kernel
1755:term:`UBOOT_MKIMAGE_DTCOPTS` variable. 1755artifacts to the :term:`DEPLOY_DIR_IMAGE` which are used by the
1756 1756:ref:`ref-classes-kernel-fit-image` class to create the FIT image.
1757Only a single kernel can be added to the FIT image created by 1757
1758:ref:`ref-classes-kernel-fitimage` and the kernel image in FIT is mandatory. The 1758The simplest example for building a FIT image is to add::
1759address where the kernel image is to be loaded by U-Boot is 1759
1760specified by :term:`UBOOT_LOADADDRESS` and the entrypoint by 1760 KERNEL_CLASSES += "kernel-fit-extra-artifacts"
1761:term:`UBOOT_ENTRYPOINT`. Setting :term:`FIT_ADDRESS_CELLS` to "2" 1761
1762is necessary if such addresses are 64 bit ones. 1762to the machine :term:`configuration file` and to execute::
1763 1763
1764Multiple device trees can be added to the FIT image created by 1764 bitbake linux-yocto-fitimage
1765:ref:`ref-classes-kernel-fitimage` and the device tree is optional. 1765
1766The address where the device tree is to be loaded by U-Boot is 1766This results in a ``fitImage`` file deployed to the :term:`DEPLOY_DIR_IMAGE`
1767specified by :term:`UBOOT_DTBO_LOADADDRESS` for device tree overlays 1767directory and a ``linux-yocto-fitimage`` package which can be installed.
1768and by :term:`UBOOT_DTB_LOADADDRESS` for device tree binaries. 1768
1769 1769The same approach works for all variants of the ``linux-yocto`` kernel.
1770Only a single RAM disk can be added to the FIT image created by 1770For example, if the ``linux-yocto-rt`` kernel should be used, add the following
1771:ref:`ref-classes-kernel-fitimage` and the RAM disk in FIT is optional. 1771lines to the machine configuration file::
1772The address where the RAM disk image is to be loaded by U-Boot 1772
1773is specified by :term:`UBOOT_RD_LOADADDRESS` and the entrypoint by 1773 KERNEL_CLASSES += "kernel-fit-extra-artifacts"
1774:term:`UBOOT_RD_ENTRYPOINT`. The ramdisk is added to the FIT image when 1774 PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-rt"
1775:term:`INITRAMFS_IMAGE` is specified and requires that :term:`INITRAMFS_IMAGE_BUNDLE` 1775
1776is not set to 1. 1776The FIT image, this time including the RT kernel, is built again by calling::
1777 1777
1778Only a single :term:`Initramfs` bundle can be added to the FIT image created by 1778 bitbake linux-yocto-fitimage
1779:ref:`ref-classes-kernel-fitimage` and the :term:`Initramfs` bundle in FIT is optional. 1779
1780In case of :term:`Initramfs`, the kernel is configured to be bundled with the root filesystem 1780For other kernels provided by other layers, the same approach would work.
1781in the same binary (example: zImage-initramfs-:term:`MACHINE`.bin). 1781However, it is usually more intuitive to add a custom FIT image recipe next to
1782When the kernel is copied to RAM and executed, it unpacks the :term:`Initramfs` root filesystem. 1782the custom kernel recipe.
1783The :term:`Initramfs` bundle can be enabled when :term:`INITRAMFS_IMAGE` 1783For example, if a layer provides a ``linux-vanilla`` recipe, a
1784is specified and requires that :term:`INITRAMFS_IMAGE_BUNDLE` is set to 1. 1784``linux-vanilla-fitimage`` recipe may be added as well.
1785The address where the :term:`Initramfs` bundle is to be loaded by U-boot is specified 1785The ``linux-vanilla-fitimage`` recipe can be created as a customized copy of
1786by :term:`UBOOT_LOADADDRESS` and the entrypoint by :term:`UBOOT_ENTRYPOINT`. 1786the ``linux-yocto-fitimage`` recipe.
1787 1787
1788Only a single U-boot boot script can be added to the FIT image created by 1788Usually the kernel is built as a dependency of an image.
1789:ref:`ref-classes-kernel-fitimage` and the boot script is optional. 1789If the FIT image should be used as a replacement for the kernel image which
1790The boot script is specified in the ITS file as a text file containing 1790is installed in the root filesystem, then the following variables can be set
1791U-boot commands. When using a boot script the user should configure the 1791e.g. in the machine configuration file::
1792U-boot :ref:`ref-tasks-install` task to copy the script to sysroot. 1792
1793So the script can be included in the FIT image by the :ref:`ref-classes-kernel-fitimage` 1793 # Create and deploy the vmlinux artifact which gets included into the FIT image
1794class. At run-time, U-boot CONFIG_BOOTCOMMAND define can be configured to 1794 KERNEL_CLASSES += "kernel-fit-extra-artifacts"
1795load the boot script from the FIT image and execute it. 1795
1796 1796 # Do not install the kernel image package
1797The FIT image generated by the :ref:`ref-classes-kernel-fitimage` class is signed when the 1797 RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = ""
1798variables :term:`UBOOT_SIGN_ENABLE`, :term:`UBOOT_MKIMAGE_DTCOPTS`, 1798 # Install the FIT image package
1799:term:`UBOOT_SIGN_KEYDIR` and :term:`UBOOT_SIGN_KEYNAME` are set 1799 MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "linux-yocto-fitimage"
1800appropriately. The default values used for :term:`FIT_HASH_ALG` and 1800
1801:term:`FIT_SIGN_ALG` in :ref:`ref-classes-kernel-fitimage` are "sha256" and 1801 # Configure the image.bbclass to depend on the FIT image instead of only
1802"rsa2048" respectively. The keys for signing the FIT image can be generated using 1802 # the kernel to ensure the FIT image is built and deployed with the image
1803the :ref:`ref-classes-kernel-fitimage` class when both :term:`FIT_GENERATE_KEYS` and 1803 KERNEL_DEPLOY_DEPEND = "linux-yocto-fitimage:do_deploy"
1804:term:`UBOOT_SIGN_ENABLE` are set to "1". 1804
1805 1805The :ref:`ref-classes-kernel-fit-image` class processes several variables that
1806allow configuration:
1807
1808- The options for the device tree compiler passed to ``mkimage -D``
1809 when creating the FIT image are specified using the
1810 :term:`UBOOT_MKIMAGE_DTCOPTS` variable.
1811
1812- Only a single kernel can be added to the FIT image created by
1813 :ref:`ref-classes-kernel-fit-image` and it is a mandatory component of the
1814 FIT image.
1815 The address where the kernel image is to be loaded by U-Boot is
1816 specified by :term:`UBOOT_LOADADDRESS` and the entrypoint by
1817 :term:`UBOOT_ENTRYPOINT`. Setting :term:`FIT_ADDRESS_CELLS` to "2"
1818 is necessary if such addresses are 64 bit ones.
1819
1820- Multiple device trees can be added to the FIT image created by
1821 :ref:`ref-classes-kernel-fit-image` and the device tree is optional.
1822 The address where the device tree is to be loaded by U-Boot is
1823 specified by :term:`UBOOT_DTBO_LOADADDRESS` for device tree overlays
1824 and by :term:`UBOOT_DTB_LOADADDRESS` for device tree binaries.
1825
1826- Only a single :term:`Initramfs` can be added to the FIT image created by
1827 :ref:`ref-classes-kernel-fit-image`. The :term:`Initramfs` in FIT is optional.
1828 The address where the RAM disk image is to be loaded by U-Boot
1829 is specified by :term:`UBOOT_RD_LOADADDRESS` and the entrypoint by
1830 :term:`UBOOT_RD_ENTRYPOINT`. The :term:`Initramfs` is added to the FIT image
1831 when :term:`INITRAMFS_IMAGE` is specified.
1832
1833- It's recommended to add the :term:`Initramfs` and the kernel image as
1834 independent image nodes to the FIT image.
1835 Bundling a RAM disk image with the kernel image and including the bundle
1836 (:term:`INITRAMFS_IMAGE_BUNDLE` set to "1") in the FIT image is possible.
1837 However, this approach has the disadvantage that any change to the RAM
1838 disk image necessitates rebuilding the kernel image.
1839 This process requires the full kernel build directory, which is kind of
1840 incompatible with the :term:`SSTATE_DIR` and, consequently, with SDKs.
1841
1842- Only a single U-Boot boot script can be added to the FIT image created by
1843 :ref:`ref-classes-kernel-fit-image`. The boot script is optional.
1844 The boot script is specified in the ITS file as a text file containing
1845 U-Boot commands. When using a boot script the recipe which inherits the
1846 :ref:`ref-classes-kernel-fit-image` class should add the script to
1847 :term:`SRC_URI` and set the :term:`FIT_UBOOT_ENV` variable to the name of the
1848 file like the following::
1849
1850 FIT_UBOOT_ENV = "boot.txt"
1851 SRC_URI += "file://${FIT_UBOOT_ENV}"
1852
1853 At run-time, U-boot's boot command can be configured to load the boot script
1854 from the FIT image and source it.
1855
1856- The FIT image generated by the :ref:`ref-classes-kernel-fit-image` class is signed when the
1857 variables :term:`UBOOT_SIGN_ENABLE`, :term:`UBOOT_MKIMAGE_DTCOPTS`,
1858 :term:`UBOOT_SIGN_KEYDIR` and :term:`UBOOT_SIGN_KEYNAME` are set
1859 appropriately. The default values used for :term:`FIT_HASH_ALG` and
1860 :term:`FIT_SIGN_ALG` in :ref:`ref-classes-kernel-fit-image` are "sha256" and
1861 "rsa2048" respectively. The keys for signing the FIT image can be generated using
1862 the :ref:`ref-classes-kernel-fit-image` class when both :term:`FIT_GENERATE_KEYS` and
1863 :term:`UBOOT_SIGN_ENABLE` are set to "1".
1864
1865.. _ref-classes-kernel-fit-extra-artifacts:
1866
1867``kernel-fit-extra-artifacts``
1868==============================
1869
1870The :ref:`ref-classes-kernel-fit-extra-artifacts` class exposes the required
1871kernel artifacts to the :term:`DEPLOY_DIR_IMAGE` directory.
1872These artifacts are used by the :ref:`ref-classes-kernel-fit-image` class to
1873create a FIT image that can include the kernel, device trees, an optional
1874U-Boot script, and an optional Initramfs.
1875
1876This class is typically included by adding it to the :term:`KERNEL_CLASSES`
1877variable in your kernel recipe or machine configuration when building FIT images.
1878It ensures that all necessary files are available for packaging into the FIT image,
1879such as the kernel binary, device tree blobs (DTBs), and other related files.
1880
1881For example, to enable this class, set::
1882
1883 KERNEL_CLASSES += "kernel-fit-extra-artifacts"
1884
1885This is required when using the :ref:`ref-classes-kernel-fit-image` class to
1886generate FIT images for your kernel.
1806 1887
1807.. _ref-classes-kernel-grub: 1888.. _ref-classes-kernel-grub:
1808 1889
@@ -3438,7 +3519,7 @@ See U-Boot's documentation for details about `verified boot
3438and the `signature process 3519and the `signature process
3439<https://source.denx.de/u-boot/u-boot/-/blob/master/doc/uImage.FIT/signature.txt>`__. 3520<https://source.denx.de/u-boot/u-boot/-/blob/master/doc/uImage.FIT/signature.txt>`__.
3440 3521
3441See also the description of :ref:`ref-classes-kernel-fitimage` class, which this class 3522See also the description of :ref:`ref-classes-kernel-fit-image` class, which this class
3442imitates. 3523imitates.
3443 3524
3444.. _ref-classes-uki: 3525.. _ref-classes-uki:
diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst
index 5c18b852d1..fd14274a13 100644
--- a/documentation/ref-manual/variables.rst
+++ b/documentation/ref-manual/variables.rst
@@ -2790,7 +2790,7 @@ system and gives an overview of their function and contents.
2790 ``meta/classes-recipe`` to see how the variable is used. 2790 ``meta/classes-recipe`` to see how the variable is used.
2791 2791
2792 :term:`EXTERNAL_KERNEL_DEVICETREE` 2792 :term:`EXTERNAL_KERNEL_DEVICETREE`
2793 When inheriting :ref:`ref-classes-kernel-fitimage` and a 2793 When inheriting :ref:`ref-classes-kernel-fit-image` and a
2794 :term:`PREFERRED_PROVIDER` for ``virtual/dtb`` set to ``devicetree``, the 2794 :term:`PREFERRED_PROVIDER` for ``virtual/dtb`` set to ``devicetree``, the
2795 variable :term:`EXTERNAL_KERNEL_DEVICETREE` can be used to specify a 2795 variable :term:`EXTERNAL_KERNEL_DEVICETREE` can be used to specify a
2796 directory containing one or more compiled device tree or device tree 2796 directory containing one or more compiled device tree or device tree
@@ -3318,7 +3318,7 @@ system and gives an overview of their function and contents.
3318 Specifies the value of the ``#address-cells`` value for the 3318 Specifies the value of the ``#address-cells`` value for the
3319 description of the FIT image. 3319 description of the FIT image.
3320 3320
3321 The default value is set to "1" by the :ref:`ref-classes-kernel-fitimage` 3321 The default value is set to "1" by the :ref:`ref-classes-kernel-fit-image`
3322 class, which corresponds to 32 bit addresses. 3322 class, which corresponds to 32 bit addresses.
3323 3323
3324 For platforms that need to set 64 bit addresses, for example in 3324 For platforms that need to set 64 bit addresses, for example in
@@ -3337,11 +3337,11 @@ system and gives an overview of their function and contents.
3337 Specifies the default device tree binary (dtb) file for a FIT image 3337 Specifies the default device tree binary (dtb) file for a FIT image
3338 when multiple ones are provided. 3338 when multiple ones are provided.
3339 3339
3340 This variable is used in the :ref:`ref-classes-kernel-fitimage` class. 3340 This variable is used in the :ref:`ref-classes-kernel-fit-image` class.
3341 3341
3342 :term:`FIT_DESC` 3342 :term:`FIT_DESC`
3343 Specifies the description string encoded into a FIT image. The 3343 Specifies the description string encoded into a FIT image. The
3344 default value is set by the :ref:`ref-classes-kernel-fitimage` class as 3344 default value is set by the :ref:`ref-classes-kernel-fit-image` class as
3345 follows:: 3345 follows::
3346 3346
3347 FIT_DESC ?= "U-Boot fitImage for ${DISTRO_NAME}/${PV}/${MACHINE}" 3347 FIT_DESC ?= "U-Boot fitImage for ${DISTRO_NAME}/${PV}/${MACHINE}"
@@ -3350,12 +3350,12 @@ system and gives an overview of their function and contents.
3350 Decides whether to generate the keys for signing the FIT image if 3350 Decides whether to generate the keys for signing the FIT image if
3351 they don't already exist. The keys are created in 3351 they don't already exist. The keys are created in
3352 :term:`UBOOT_SIGN_KEYDIR`. The default value is set to "0" 3352 :term:`UBOOT_SIGN_KEYDIR`. The default value is set to "0"
3353 by the :ref:`ref-classes-kernel-fitimage` class. 3353 by the :ref:`ref-classes-kernel-fit-image` class.
3354 3354
3355 :term:`FIT_HASH_ALG` 3355 :term:`FIT_HASH_ALG`
3356 Specifies the hash algorithm used in creating the FIT Image. 3356 Specifies the hash algorithm used in creating the FIT Image.
3357 This variable is set by default to "sha256" by the 3357 This variable is set by default to "sha256" by the
3358 :ref:`ref-classes-kernel-fitimage` class. 3358 :ref:`ref-classes-kernel-fit-image` class.
3359 3359
3360 :term:`FIT_KERNEL_COMP_ALG` 3360 :term:`FIT_KERNEL_COMP_ALG`
3361 The compression algorithm to use for the kernel image inside the FIT Image. 3361 The compression algorithm to use for the kernel image inside the FIT Image.
@@ -3374,31 +3374,31 @@ system and gives an overview of their function and contents.
3374 :term:`FIT_KEY_GENRSA_ARGS` 3374 :term:`FIT_KEY_GENRSA_ARGS`
3375 Arguments to ``openssl genrsa`` for generating a RSA private key for 3375 Arguments to ``openssl genrsa`` for generating a RSA private key for
3376 signing the FIT image. The default value is set to "-F4" by the 3376 signing the FIT image. The default value is set to "-F4" by the
3377 :ref:`ref-classes-kernel-fitimage` class. 3377 :ref:`ref-classes-kernel-fit-image` class.
3378 3378
3379 :term:`FIT_KEY_REQ_ARGS` 3379 :term:`FIT_KEY_REQ_ARGS`
3380 Arguments to ``openssl req`` for generating a certificate for signing 3380 Arguments to ``openssl req`` for generating a certificate for signing
3381 the FIT image. The default value is "-batch -new" by the 3381 the FIT image. The default value is "-batch -new" by the
3382 :ref:`ref-classes-kernel-fitimage` class, "batch" for 3382 :ref:`ref-classes-kernel-fit-image` class, "batch" for
3383 non interactive mode and "new" for generating new keys. 3383 non interactive mode and "new" for generating new keys.
3384 3384
3385 :term:`FIT_KEY_SIGN_PKCS` 3385 :term:`FIT_KEY_SIGN_PKCS`
3386 Format for the public key certificate used for signing the FIT image. 3386 Format for the public key certificate used for signing the FIT image.
3387 The default value is set to "x509" by the 3387 The default value is set to "x509" by the
3388 :ref:`ref-classes-kernel-fitimage` class. 3388 :ref:`ref-classes-kernel-fit-image` class.
3389 3389
3390 :term:`FIT_SIGN_ALG` 3390 :term:`FIT_SIGN_ALG`
3391 Specifies the signature algorithm used in creating the FIT Image. 3391 Specifies the signature algorithm used in creating the FIT Image.
3392 This variable is set by default to "rsa2048" by the 3392 This variable is set by default to "rsa2048" by the
3393 :ref:`ref-classes-kernel-fitimage` class. 3393 :ref:`ref-classes-kernel-fit-image` class.
3394 3394
3395 :term:`FIT_PAD_ALG` 3395 :term:`FIT_PAD_ALG`
3396 Specifies the padding algorithm used in creating the FIT Image. 3396 Specifies the padding algorithm used in creating the FIT Image.
3397 The default value is set to "pkcs-1.5" by the 3397 The default value is set to "pkcs-1.5" by the
3398 :ref:`ref-classes-kernel-fitimage` class. 3398 :ref:`ref-classes-kernel-fit-image` class.
3399 3399
3400 :term:`FIT_SIGN_INDIVIDUAL` 3400 :term:`FIT_SIGN_INDIVIDUAL`
3401 If set to "1", the :ref:`ref-classes-kernel-fitimage` class signs each 3401 If set to "1", the :ref:`ref-classes-kernel-fit-image` class signs each
3402 image node individually, including the kernel, DTB, RAM disk, and any 3402 image node individually, including the kernel, DTB, RAM disk, and any
3403 other image types present in the FIT image, in addition to signing the 3403 other image types present in the FIT image, in addition to signing the
3404 configuration nodes. 3404 configuration nodes.
@@ -3431,13 +3431,13 @@ system and gives an overview of their function and contents.
3431 :term:`FIT_SIGN_NUMBITS` 3431 :term:`FIT_SIGN_NUMBITS`
3432 Size of the private key used in the FIT image, in number of bits. 3432 Size of the private key used in the FIT image, in number of bits.
3433 The default value for this variable is set to "2048" 3433 The default value for this variable is set to "2048"
3434 by the :ref:`ref-classes-kernel-fitimage` class. 3434 by the :ref:`ref-classes-kernel-fit-image` class.
3435 3435
3436 :term:`FIT_UBOOT_ENV` 3436 :term:`FIT_UBOOT_ENV`
3437 This variable allows to add a U-Boot script as a text file to the 3437 This variable allows to add a U-Boot script as a text file to the
3438 FIT image. Such a script can be sourced from the U-Boot shell. 3438 FIT image. Such a script can be sourced from the U-Boot shell.
3439 3439
3440 When inheriting the :ref:`ref-classes-kernel-fitimage` class a 3440 When inheriting the :ref:`ref-classes-kernel-fit-image` class a
3441 script file should be included in the :term:`SRC_URI` of the Linux 3441 script file should be included in the :term:`SRC_URI` of the Linux
3442 kernel recipe. 3442 kernel recipe.
3443 3443
@@ -5075,9 +5075,7 @@ system and gives an overview of their function and contents.
5075 :term:`KERNEL_CLASSES` 5075 :term:`KERNEL_CLASSES`
5076 A list of classes defining kernel image types that the 5076 A list of classes defining kernel image types that the
5077 :ref:`ref-classes-kernel` class should inherit. You typically 5077 :ref:`ref-classes-kernel` class should inherit. You typically
5078 append this variable to enable extended image types. An example is 5078 append this variable to enable extended image types.
5079 ":ref:`ref-classes-kernel-fitimage`", which enables
5080 FIT image support and resides in ``meta/classes-recipe/kernel-fitimage.bbclass``.
5081 You can register custom kernel image types with the 5079 You can register custom kernel image types with the
5082 :ref:`ref-classes-kernel` class using this variable. 5080 :ref:`ref-classes-kernel` class using this variable.
5083 5081
@@ -10321,13 +10319,13 @@ system and gives an overview of their function and contents.
10321 :term:`UBOOT_DTB_LOADADDRESS` 10319 :term:`UBOOT_DTB_LOADADDRESS`
10322 Specifies the load address for the dtb image used by U-Boot. During FIT 10320 Specifies the load address for the dtb image used by U-Boot. During FIT
10323 image creation, the :term:`UBOOT_DTB_LOADADDRESS` variable is used in 10321 image creation, the :term:`UBOOT_DTB_LOADADDRESS` variable is used in
10324 :ref:`ref-classes-kernel-fitimage` class to specify the load address to be 10322 :ref:`ref-classes-kernel-fit-image` class to specify the load address to be
10325 used in creating the dtb sections of Image Tree Source for the FIT image. 10323 used in creating the dtb sections of Image Tree Source for the FIT image.
10326 10324
10327 :term:`UBOOT_DTBO_LOADADDRESS` 10325 :term:`UBOOT_DTBO_LOADADDRESS`
10328 Specifies the load address for the dtbo image used by U-Boot. During FIT 10326 Specifies the load address for the dtbo image used by U-Boot. During FIT
10329 image creation, the :term:`UBOOT_DTBO_LOADADDRESS` variable is used in 10327 image creation, the :term:`UBOOT_DTBO_LOADADDRESS` variable is used in
10330 :ref:`ref-classes-kernel-fitimage` class to specify the load address to be 10328 :ref:`ref-classes-kernel-fit-image` class to specify the load address to be
10331 used in creating the dtbo sections of Image Tree Source for the FIT image. 10329 used in creating the dtbo sections of Image Tree Source for the FIT image.
10332 10330
10333 :term:`UBOOT_ENTRYPOINT` 10331 :term:`UBOOT_ENTRYPOINT`
@@ -10339,7 +10337,7 @@ system and gives an overview of their function and contents.
10339 - The :term:`FIT_ADDRESS_CELLS` variable for FIT image creation. 10337 - The :term:`FIT_ADDRESS_CELLS` variable for FIT image creation.
10340 - The :term:`UBOOT_FIT_ADDRESS_CELLS` variable for U-Boot FIT image creation. 10338 - The :term:`UBOOT_FIT_ADDRESS_CELLS` variable for U-Boot FIT image creation.
10341 10339
10342 This variable is used by the :ref:`ref-classes-kernel-fitimage`, 10340 This variable is used by the :ref:`ref-classes-kernel-fit-image`,
10343 :ref:`ref-classes-kernel-uimage`, :ref:`ref-classes-kernel`, 10341 :ref:`ref-classes-kernel-uimage`, :ref:`ref-classes-kernel`,
10344 :ref:`ref-classes-uboot-config` and :ref:`ref-classes-uboot-sign` 10342 :ref:`ref-classes-uboot-config` and :ref:`ref-classes-uboot-sign`
10345 classes. 10343 classes.
@@ -10616,7 +10614,7 @@ system and gives an overview of their function and contents.
10616 - The :term:`FIT_ADDRESS_CELLS` variable for FIT image creation. 10614 - The :term:`FIT_ADDRESS_CELLS` variable for FIT image creation.
10617 - The :term:`UBOOT_FIT_ADDRESS_CELLS` variable for U-Boot FIT image creation. 10615 - The :term:`UBOOT_FIT_ADDRESS_CELLS` variable for U-Boot FIT image creation.
10618 10616
10619 This variable is used by the :ref:`ref-classes-kernel-fitimage`, 10617 This variable is used by the :ref:`ref-classes-kernel-fit-image`,
10620 :ref:`ref-classes-kernel-uimage`, :ref:`ref-classes-kernel`, 10618 :ref:`ref-classes-kernel-uimage`, :ref:`ref-classes-kernel`,
10621 :ref:`ref-classes-uboot-config` and :ref:`ref-classes-uboot-sign` 10619 :ref:`ref-classes-uboot-config` and :ref:`ref-classes-uboot-sign`
10622 classes. 10620 classes.
@@ -10644,15 +10642,15 @@ system and gives an overview of their function and contents.
10644 10642
10645 :term:`UBOOT_MKIMAGE` 10643 :term:`UBOOT_MKIMAGE`
10646 Specifies the name of the mkimage command as used by the 10644 Specifies the name of the mkimage command as used by the
10647 :ref:`ref-classes-kernel-fitimage` class to assemble 10645 :ref:`ref-classes-kernel-fit-image` class to assemble
10648 the FIT image. This can be used to substitute an alternative command, wrapper 10646 the FIT image. This can be used to substitute an alternative command, wrapper
10649 script or function if desired. The default is "uboot-mkimage". 10647 script or function if desired. The default is "uboot-mkimage".
10650 10648
10651 :term:`UBOOT_MKIMAGE_DTCOPTS` 10649 :term:`UBOOT_MKIMAGE_DTCOPTS`
10652 Options for the device tree compiler passed to ``mkimage -D`` feature 10650 Options for the device tree compiler passed to ``mkimage -D`` feature
10653 while creating a FIT image with the :ref:`ref-classes-kernel-fitimage` 10651 while creating a FIT image with the :ref:`ref-classes-kernel-fit-image`
10654 class. If :term:`UBOOT_MKIMAGE_DTCOPTS` is not set then the 10652 class. If :term:`UBOOT_MKIMAGE_DTCOPTS` is not set then the
10655 :ref:`ref-classes-kernel-fitimage` class will not pass the ``-D`` option 10653 :ref:`ref-classes-kernel-fit-image` class will not pass the ``-D`` option
10656 to ``mkimage``. 10654 to ``mkimage``.
10657 10655
10658 This variable is also used by the :ref:`ref-classes-uboot-sign` class. 10656 This variable is also used by the :ref:`ref-classes-uboot-sign` class.
@@ -10663,42 +10661,42 @@ system and gives an overview of their function and contents.
10663 10661
10664 :term:`UBOOT_MKIMAGE_SIGN` 10662 :term:`UBOOT_MKIMAGE_SIGN`
10665 Specifies the name of the mkimage command as used by the 10663 Specifies the name of the mkimage command as used by the
10666 :ref:`ref-classes-kernel-fitimage` class to sign 10664 :ref:`ref-classes-kernel-fit-image` class to sign
10667 the FIT image after it has been assembled (if enabled). This can be used 10665 the FIT image after it has been assembled (if enabled). This can be used
10668 to substitute an alternative command, wrapper script or function if 10666 to substitute an alternative command, wrapper script or function if
10669 desired. The default is "${:term:`UBOOT_MKIMAGE`}". 10667 desired. The default is "${:term:`UBOOT_MKIMAGE`}".
10670 10668
10671 :term:`UBOOT_MKIMAGE_SIGN_ARGS` 10669 :term:`UBOOT_MKIMAGE_SIGN_ARGS`
10672 Optionally specifies additional arguments for the 10670 Optionally specifies additional arguments for the
10673 :ref:`ref-classes-kernel-fitimage` class to pass to the 10671 :ref:`ref-classes-kernel-fit-image` class to pass to the
10674 mkimage command when signing the FIT image. 10672 mkimage command when signing the FIT image.
10675 10673
10676 :term:`UBOOT_RD_ENTRYPOINT` 10674 :term:`UBOOT_RD_ENTRYPOINT`
10677 Specifies the entrypoint for the RAM disk image. During FIT image 10675 Specifies the entrypoint for the RAM disk image. During FIT image
10678 creation, the :term:`UBOOT_RD_ENTRYPOINT` variable is used in 10676 creation, the :term:`UBOOT_RD_ENTRYPOINT` variable is used in
10679 :ref:`ref-classes-kernel-fitimage` class to specify the entrypoint to be 10677 :ref:`ref-classes-kernel-fit-image` class to specify the entrypoint to be
10680 used in creating the Image Tree Source for the FIT image. 10678 used in creating the Image Tree Source for the FIT image.
10681 10679
10682 :term:`UBOOT_RD_LOADADDRESS` 10680 :term:`UBOOT_RD_LOADADDRESS`
10683 Specifies the load address for the RAM disk image. During FIT image 10681 Specifies the load address for the RAM disk image. During FIT image
10684 creation, the :term:`UBOOT_RD_LOADADDRESS` variable is used in 10682 creation, the :term:`UBOOT_RD_LOADADDRESS` variable is used in
10685 :ref:`ref-classes-kernel-fitimage` class to specify the load address to 10683 :ref:`ref-classes-kernel-fit-image` class to specify the load address to
10686 be used in creating the Image Tree Source for the FIT image. 10684 be used in creating the Image Tree Source for the FIT image.
10687 10685
10688 :term:`UBOOT_SIGN_ENABLE` 10686 :term:`UBOOT_SIGN_ENABLE`
10689 Enable signing of FIT image. The default value is "0". 10687 Enable signing of FIT image. The default value is "0".
10690 10688
10691 This variable is used by the :ref:`ref-classes-kernel-fitimage`, 10689 This variable is used by the :ref:`ref-classes-kernel-fit-image`,
10692 :ref:`ref-classes-uboot-config` and :ref:`ref-classes-uboot-sign` 10690 :ref:`ref-classes-uboot-config` and :ref:`ref-classes-uboot-sign`
10693 classes. 10691 classes.
10694 10692
10695 :term:`UBOOT_SIGN_KEYDIR` 10693 :term:`UBOOT_SIGN_KEYDIR`
10696 Location of the directory containing the RSA key and certificate used for 10694 Location of the directory containing the RSA key and certificate used for
10697 signing FIT image, used by the :ref:`ref-classes-kernel-fitimage` and 10695 signing FIT image, used by the :ref:`ref-classes-kernel-fit-image` and
10698 :ref:`ref-classes-uboot-sign` classes. 10696 :ref:`ref-classes-uboot-sign` classes.
10699 10697
10700 :term:`UBOOT_SIGN_KEYNAME` 10698 :term:`UBOOT_SIGN_KEYNAME`
10701 The name of keys used by the :ref:`ref-classes-kernel-fitimage` class 10699 The name of keys used by the :ref:`ref-classes-kernel-fit-image` class
10702 for signing U-Boot FIT image stored in the :term:`UBOOT_SIGN_KEYDIR` 10700 for signing U-Boot FIT image stored in the :term:`UBOOT_SIGN_KEYDIR`
10703 directory. If we have for example a ``dev.key`` key and a ``dev.crt`` 10701 directory. If we have for example a ``dev.key`` key and a ``dev.crt``
10704 certificate stored in the :term:`UBOOT_SIGN_KEYDIR` directory, you will 10702 certificate stored in the :term:`UBOOT_SIGN_KEYDIR` directory, you will