summaryrefslogtreecommitdiffstats
path: root/documentation/ref-manual
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/ref-manual')
-rw-r--r--documentation/ref-manual/classes.rst32
1 files changed, 27 insertions, 5 deletions
diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst
index f47b6e3875..be112e0faf 100644
--- a/documentation/ref-manual/classes.rst
+++ b/documentation/ref-manual/classes.rst
@@ -1375,11 +1375,13 @@ generation.
1375=========================== 1375===========================
1376 1376
1377The ``kernel-fitimage`` class provides support to pack a kernel image, 1377The ``kernel-fitimage`` class provides support to pack a kernel image,
1378device trees and a RAM disk into a single FIT image. In theory, a FIT 1378device trees, a U-boot script, a Initramfs bundle and a RAM disk
1379image can support any number of kernels, RAM disks and device trees. 1379into a single FIT image. In theory, a FIT image can support any number
1380of kernels, U-boot scripts, Initramfs bundles, RAM disks and device-trees.
1380However, ``kernel-fitimage`` currently only supports 1381However, ``kernel-fitimage`` currently only supports
1381limited usescases: just one kernel image, an optional RAM disk, and 1382limited usescases: just one kernel image, an optional U-boot script,
1382any number of device trees. 1383an optional Initramfs bundle, an optional RAM disk, and any number of
1384device tree.
1383 1385
1384To create a FIT image, it is required that :term:`KERNEL_CLASSES` 1386To create a FIT image, it is required that :term:`KERNEL_CLASSES`
1385is set to include "kernel-fitimage" and :term:`KERNEL_IMAGETYPE` 1387is set to include "kernel-fitimage" and :term:`KERNEL_IMAGETYPE`
@@ -1406,7 +1408,27 @@ Only a single RAM disk can be added to the FIT image created by
1406The address where the RAM disk image is to be loaded by U-Boot 1408The address where the RAM disk image is to be loaded by U-Boot
1407is specified by :term:`UBOOT_RD_LOADADDRESS` and the entrypoint by 1409is specified by :term:`UBOOT_RD_LOADADDRESS` and the entrypoint by
1408:term:`UBOOT_RD_ENTRYPOINT`. The ramdisk is added to FIT image when 1410:term:`UBOOT_RD_ENTRYPOINT`. The ramdisk is added to FIT image when
1409:term:`INITRAMFS_IMAGE` is specified. 1411:term:`INITRAMFS_IMAGE` is specified and that :term:`INITRAMFS_IMAGE_BUNDLE`
1412is set to 0.
1413
1414Only a single Initramfs bundle can be added to the FIT image created by
1415``kernel-fitimage`` and the Initramfs bundle in FIT is optional.
1416In case of Initramfs, the kernel is configured to be bundled with the rootfs
1417in the same binary (example: zImage-initramfs-:term:`MACHINE`.bin).
1418When the kernel is copied to RAM and executed, it unpacks the Initramfs rootfs.
1419The Initramfs bundle can be enabled when :term:`INITRAMFS_IMAGE`
1420is specified and that :term:`INITRAMFS_IMAGE_BUNDLE` is set to 1.
1421The address where the Initramfs bundle is to be loaded by U-boot is specified
1422by :term:`UBOOT_LOADADDRESS` and the entrypoint by :term:`UBOOT_ENTRYPOINT`.
1423
1424Only a single U-boot boot script can be added to the FIT image created by
1425``kernel-fitimage`` and the boot script is optional.
1426The boot script is specified in the ITS file as a text file containing
1427U-boot commands. When using a boot script the user should configure the
1428U-boot ``do_install`` task to copy the script to sysroot.
1429So the script can be included in the the FIT image by the ``kernel-fitimage``
1430class. At run-time, U-boot CONFIG_BOOTCOMMAND define can be configured to
1431load the boot script from the FIT image and executes it.
1410 1432
1411The FIT image generated by ``kernel-fitimage`` class is signed when the 1433The FIT image generated by ``kernel-fitimage`` class is signed when the
1412variables :term:`UBOOT_SIGN_ENABLE`, :term:`UBOOT_MKIMAGE_DTCOPTS`, 1434variables :term:`UBOOT_SIGN_ENABLE`, :term:`UBOOT_MKIMAGE_DTCOPTS`,