Hi Alexey,
On 2026-07-31T17:10:44, Alexey Charkov <[email protected]> wrote:
> binman: Add support for externally provided Linux kernel blob
>
> Add an simple named Linux kernel blob type to binman, activated by the
> "LINUX_KERNEL" make variable. No processing is done on the passed blob.
>
> Signed-off-by: Alexey Charkov <[email protected]>
>
> Makefile | 1 +
> tools/binman/etype/linux_kernel.py | 22 ++++++++++++++++++++++
> tools/binman/missing-blob-help | 5 +++++
> 3 files changed, 28 insertions(+)
> diff --git a/tools/binman/etype/linux_kernel.py
> b/tools/binman/etype/linux_kernel.py
> @@ -0,0 +1,22 @@
> +class Entry_linux_kernel(Entry_blob_named_by_arg):
> + """Linux kernel image blob
> +
> + Properties / Entry arguments:
> + - linux-kernel-path: Filename of file to read into entry. This is
> + typically an uncompressed ARM64 Image.
> +
> + This entry allows binman FIT templates to consume a kernel provided via
> + make variable, similar to how BL31 is passed to atf-bl31.
> + """
Please drop the ARM64-specific wording - this etype has no arch
dependency and can hold a zImage, Image.gz, vmlinux.bin etc. Something
like 'This is typically a Linux kernel image such as Image, Image.gz
or zImage' reads better and matches the style of atf_bl31.py, which
just describes what the blob is rather than how the FIT template
consumes it.
> diff --git a/tools/binman/missing-blob-help b/tools/binman/missing-blob-help
> @@ -32,6 +32,11 @@ If CONFIG_WDT_K3_RTI_LOAD_FW is enabled, a firmware image
> is needed for
> +linux-kernel:
> +A Linux kernel image is required to build a Falcon mode FIT image, which
> +lets SPL start the OS directly instead of U-Boot proper. Build with
> +LINUX_KERNEL=/path/to/Image, or disable Falcon mode image generation.
This ties the generic linux-kernel blob to Falcon mode, but the etype
itself is not Falcon-specific - a user could reference it from any
FIT. Please reword to describe the blob generically ('A Linux kernel
image is needed by a FIT that embeds one …') and then mention Falcon
mode as the typical use case.
Regards,
Simon