build: define check-kernel-size to remove unflashable images
authorJeff Kletsky <git-commits@allycomm.com>
Wed, 13 Nov 2019 21:09:48 +0000 (13:09 -0800)
committerJohn Crispin <john@phrozen.org>
Wed, 15 Jan 2020 19:05:48 +0000 (20:05 +0100)
commitf0b76d02e8345022d417f02733504cfd862a2d6f
treea29beb84dc7feaa06b44e9feeceb2d9cb1665cc2
parent0da193ee6943fc7afd100d2378cd1989d1f1cc03
build: define check-kernel-size to remove unflashable images

Certain boards have limitations on U-Boot that prevent flashing
of images where the kernel size exceeds a threshold, yet
sysupgrade can sucessfully manage larger kernels. The current
check-size will remove the target artifact if its total size
exceeds the threshold. If applied after append-kernel,
it will remove the kernel, but the remaining image-assembly
steps will continue, resulting in an image without a kernel
that is likely unbootable.

By defining check-kernel-size, it is now possible to prevent release
of such unbootable images through a construct similar to:

  IMAGE/factory.img := append-kernel | pad-to $$$$(GL_UBOOT_UBI_OFFSET) | \
    append-ubi | check-kernel-size $$$$(GL_UBOOT_UBI_OFFSET)

Cc: Chuanhong Guo <gch981213@gmail.com>
Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
include/image-commands.mk