mbox series

[v4,0/6] kernel-fit-image: Add support for multiple kernels and FIT configurations

Message ID 20261105164826.1340446-1-vgharaee@gmail.com
Headers show
Series kernel-fit-image: Add support for multiple kernels and FIT configurations | expand

Message

Vahid Gharaee Nov. 5, 2026, 4:48 p.m. UTC
From: Vahid Gharaee <vgharaee@gmail.com>

These extends kernel-fit-image.bbclass 
to support multiple kernel images in a single FIT image,
with custom configurations selecting the required kernel 
and device tree. The main use case is to package different 
kernel variants, for example a standard and a real-time kernel,
into one FIT image. Additional kernels can be provided by 
another recipe, through BitBake multiconfig, or as prebuilt files.
The serie also adds validation for kernel and configuration 
references, improves handling of DTB aliases, 
and extends the FIT selftests.

Changes since v3:
    - Rebased onto current OE-Core master.
    - Adapted to the upstream removal of synthetic FIT_LOADABLE_* variable values.
    - Updated FIT configuration tests to retrieve BitBake variable flags through get_bb_vars_flags().
    - Preserved compatibility with existing Python-only FIT test fixtures.

Validation:
    - bitbake -p
    - oe-selftest -r fitimage.FitImagePyTests (16 passed)
    - oe-selftest -r fitimage.KernelFitImageRecipeTests.test_fit_image_multiple_kernels
    - oe-selftest -r fitimage.KernelFitImageRecipeTests.test_fit_image_ext_dtb_vendored_override

All passed.

Vahid Gharaee (6):
  oe.fitimage: Support multiple kernel nodes and configuration selection
  oe.fitimage: add metadata for multiple kernels
  oe.selftest: Add tests for multi-kernel FIT config
  oe.fitimage: Add custom configurations and harden multi-kernel
    handling
  oe.selftest: Improve FIT DTB alias validation
  kernel-fit-image: preserve vendored DTB aliases for external overrides

 .../recipes-test/ext-dtb/test-dtbs-as-ext.bb  |  11 +
 meta/classes-recipe/kernel-fit-image.bbclass  | 136 ++++++-
 meta/conf/image-fitimage.conf                 |  55 +++
 meta/lib/oe/fitimage.py                       |  95 ++++-
 meta/lib/oeqa/selftest/cases/fitimage.py      | 359 ++++++++++++++++--
 5 files changed, 607 insertions(+), 49 deletions(-)


base-commit: 35d103be8b1a2346b7d0a7ff83745ad74d6817e2