Adding an Existing Recipe into the Root File System - 2022.2 English

PetaLinux Tools Documentation: Reference Guide (UG1144)

Document ID
UG1144
Release Date
2022-10-19
Version
2022.2 English

Most of the root file system menu config is static. These are the utilities that are supported by Xilinx. You can add your own layers in a project or add existing additional recipes from the existing layers in PetaLinux. Layers in PetaLinux can be found in <plnx-proj-root>/components/yocto/layers.

By default, iperf3 is not in the root file system menuconfig. The following example demonstrates adding the iperf3 into the root file system menuconfig.

  1. The location of the recipe is <plnx-proj-root>/components/yocto/layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3_3.2.bb.
  2. Add the following line in <plnx-proj-root>/project-spec/meta-user/conf/user-rootfsconfig.
    CONFIG_iperf3
  3. Run petalinux-config -c rootfs.
  4. Select user packages > iperf3. Enable it, save and exit.
  5. Run petalinux-build.
    Note: It is your responsibility to add the recipes in the layers available in PetaLinux tools, apart from PetaLinux default RootFS menuconfig.
    Note: The above procedure is applicable only to the recipes from the existing layers.
Important: All recipes which are in petalinux-image-full have sstate locked. It does not allows any build with modifications and uses the binary from sstate. To unlock, ensure to add SIGGEN_UNLOCKED_RECIPES += "my-recipe" in project-spec/meta-user/conf/petalinuxbsp.conf.

For example, you have changes to be made in mtd-utils package, so you have created a .bbappend for the same without SIGGEN_UNLOCKED_RECIPES += "mtd-utils" in project-spec/meta-user/conf/petalinuxbsp.conf. During project build, you should see the following warning. Your changes for the package are not included in the build.

"The mtd-utils:do_fetch sig is computed to be 92c59aa3a7c524ea790282e817080d0a, but the sig is locked to 9a10549c7af85144d164d9728e8fe23f in SIGGEN_LOCKEDSIGS_t"