[PATCH v2 3/3] binman: Build FIT image subentries with the section etype
Simon Glass
sjg at chromium.org
Mon Aug 31 15:41:51 CEST 2020
On Mon, 31 Aug 2020 at 03:59, Alper Nebi Yasak <alpernebiyasak at gmail.com> wrote:
>
> When reading subentries of each image, the FIT entry type directly
> concatenates their contents without padding them according to their
> offset, size, align, align-size, align-end, pad-before, pad-after
> properties.
>
> This patch makes sure these properties are respected by offloading this
> image-data building to the section etype, where each subnode of the
> "images" node is processed as a section. Alignments and offsets are
> respective to the beginning of each image. For example, the following
> fragment can end up having "u-boot-spl" start at 0x88 within the final
> FIT binary, while "u-boot" would then end up starting at e.g. 0x20088.
>
> fit {
> description = "example";
>
> images {
> kernel-1 {
> description = "U-Boot with SPL";
> type = "kernel";
> arch = "arm64";
> os = "linux";
> compression = "none";
>
> u-boot-spl {
> };
> u-boot {
> align = <0x10000>;
> };
> };
> };
> }
>
> Signed-off-by: Alper Nebi Yasak <alpernebiyasak at gmail.com>
> ---
>
> Changes in v2:
> - Renumber test to accommodate for the first patch's new test
> - Use 'section' instead of 'image' for FIT subimage sections
> - Also rename 'Members:' comment for the renamed _fit_content variable
> - Clarify comments around FIT subimage section/content processing
> - Don't check for section.ObtainContents() returning False (never does)
>
> tools/binman/etype/fit.py | 41 +++++++------
> tools/binman/ftest.py | 23 ++++++++
> .../test/167_fit_image_subentry_alignment.dts | 57 +++++++++++++++++++
> 3 files changed, 104 insertions(+), 17 deletions(-)
> create mode 100644 tools/binman/test/167_fit_image_subentry_alignment.dts
Reviewed-by: Simon Glass <sjg at chromium.org>
More information about the U-Boot
mailing list