efi.bin (ESP partition) and dtb.bin (DTB partition).
Image composition
The Yocto build packages kernel artifacts into flashable images:efi.binis the EFI System Partition (ESP) image. Contains systemd-boot (boot manager) and the kernel packaged as a UKI type-2 image, which bundles the kernel, initramfs, and optionally a device tree. Flashed to theefipartition.dtb.binis the DTB partition image. Contains all compiled device tree blobs (DTBs). Flashed to thedtb_apartition.
| Image | Image name | Build deploy path | Details |
|---|---|---|---|
| Kernel ELF | vmlinux | build/tmp/deploy/images/<machine>/<image>-*.rootfs.qcomflash/ | Output kernel ELF with debug symbols. |
| Initramfs | initramfs-qcom-image-<machine>.cpio.gz | build/tmp/deploy/images/<machine>/ | Initramfs in CPIO format. |
| Kernel image | Image | build/tmp/deploy/images/<machine>/ | Raw kernel binary. systemd-boot does not support compressed images. |
| Kernel modules | modules-<machine>.tgz | build/tmp/deploy/images/<machine>/ | Dynamically loadable kernel modules (DLKMs). |
| Device tree blobs | <SoC>-<board>-<variant>.dtb | build/tmp/deploy/images/<machine>/ | Individual device tree blobs. |
| ESP partition | efi.bin | build/tmp/deploy/images/<machine>/<image>-*.rootfs.qcomflash/ | systemd-boot, kernel, and initramfs packaged as a UKI type-2 image. |
| DTB partition | dtb.bin | build/tmp/deploy/images/<machine>/<image>-*.rootfs.qcomflash/ | All DTBOs packaged in a FIT image. |
Deploy kernel artifacts
If you have not previously flashed all boot binaries, follow the full flashing instructions in the BSP image build with firmware first. For subsequent kernel-only updates, you can incrementally flash justefi.bin
and dtb.bin:
Both
efi.bin and dtb.bin must be flashed together after a kernel or DTS
change to keep the kernel and device tree in sync.Verify the running kernel
After the device reboots, confirm that the expected kernel version is running and that the boot completed without errors.Connect to the device
Use one of the following methods to access a shell on the device:- Serial console (UART) is recommended for early-boot inspection. For setup instructions see Connect to your target.
- ADB shell once the device has fully booted:
- SSH to connect over the network using the device IP address:
Check the kernel version
uname -r should reflect the kernel version you built and flashed
(for example, a 6.18.x string for the LTS track).
Inspect boot health
Check the kernel ring buffer for errors or warnings from early boot:Confirm kernel modules
Verify that the expected kernel modules loaded successfully:Troubleshooting
If the kernel version does not match what was built, or if the device fails to boot:- Confirm the flash completed without errors by re-running the
fastboot flashcommands and checking forOKAYresponses. - Confirm that both
efi.binanddtb.binwere flashed to the correct partitions (efianddtb_arespectively). - For boot failure and kernel panic analysis, see Troubleshoot kernel issues.
- For serial console log capture, see Kernel logging.

