binman: Add a return value to ProcessContentsUpdate()
authorSimon Glass <sjg@chromium.org>
Mon, 8 Jul 2019 20:25:35 +0000 (14:25 -0600)
committerSimon Glass <sjg@chromium.org>
Wed, 24 Jul 2019 19:54:08 +0000 (12:54 -0700)
commita0dcaf2049056348b8b603116ed1d8556851e951
treebd705aace1869b281b8035382c77fa5c723361ff
parent7f9e00a2a6a3aff06572fdf225e51556f85853f4
binman: Add a return value to ProcessContentsUpdate()

At present if this function tries to update the contents such that the
size changes, it raises an error. We plan to add the ability to change
the size of entries after packing is completed, since in some cases it is
not possible to determine the size in advance.

An example of this is with a compressed device tree, where the values
of the device tree change in SetCalculatedProperties() or
ProcessEntryContents(). While the device tree itself does not change size,
since placeholders for any new properties have already bee added by
AddMissingProperties(), we cannot predict the size of the device tree
after compression. If a value changes from 0 to 0x1234 (say), then the
compressed device tree may expand.

As a first step towards supporting this, make ProcessContentsUpdate()
return a value indicating whether the content size is OK. For now this is
always True (since otherwise binman raises an error), but later patches
will adjust this.

Signed-off-by: Simon Glass <sjg@chromium.org>
tools/binman/bsection.py
tools/binman/entry.py
tools/binman/etype/_testing.py
tools/binman/etype/blob_dtb.py
tools/binman/etype/fdtmap.py
tools/binman/etype/fmap.py
tools/binman/etype/image_header.py
tools/binman/etype/section.py
tools/binman/etype/u_boot_with_ucode_ptr.py
tools/binman/image.py