Generating BOOT.bin
¶
Introduction¶
As outlined in the Boot Firmware Overview, the Kria SOM Starter Kit BOOT.BIN is part of the quad SPI (QSPI) image, and contains four components: FSBL, PMU_FW, TF-A, and U-Boot. This page outlines the process to recreate a BOOT.bin for Kria SOM Starter kits used in A/B image update. Both PetaLinux and Yocto supports BOOT.BIN generation. Yocto support for generating the Kria SOM Starter Kit BOOT.BIN image only starts in 2023.1, previous versions do not have support.
Generate BOOT.BIN Using Yocto¶
Yocto Kria Support details how to use Yocto to generate Kria artifacts; go through this page from beginning to “Build the Artifacts” section to set up Yocto.
The bitbake recipe for BOOT.BIN
in Yocto is xilinx-bootbin
and the command to build is:
MACHINE=k26-smk bitbake xilinx-bootbin # for K26
MACHINE=k24-smk bitbake xilinx-bootbin # for K24
To set U-Boot configuration, use this command before building:
MACHINE=k26-smk bitbake virtual/bootloader -c menuconfig
Generate BOOT.BIN Using PetaLinux¶
Go through the PetaLinux Build Instructions. There are instructions to generate BOOT.BIN from PetaLinux. To recap, they are the following:
petalinux-create -t project -s <kria_starterkit>.bsp
cd <kria_starter_kit_petalinux_folder>
petalinux-build
petalinux-package --boot --u-boot --force
The new boot firmware is found in /image/linux/BOOT.BIN
.
To set the configuration for U-Boot, use this command before petalinux-build
:
petalinux-config –c u-boot
The new BOOT.BIN
can be loaded to the Starter Kit using the xmutil bootfw_update utility described in Kria Wiki’s Boot FW Update Process section.
Copyright © 2023-2025 Advanced Micro Devices, Inc.