[PATCH v2 2/2] scripts/make_fit: Speed up operation
J. Neuschäfer
j.ne at posteo.net
Sun Sep 21 03:31:21 PDT 2025
On Fri, Sep 19, 2025 at 04:46:25PM -0600, Simon Glass wrote:
> The kernel is likely at least 16MB so we may as well use that as a step
> size when reallocating space for the FIT in memory. Pack the FIT at the
> end, so there is no wasted space.
>
> This reduces the time to pack by an order of magnitude, or so.
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
>
> ---
>
> (no changes since v1)
>
> scripts/make_fit.py | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/scripts/make_fit.py b/scripts/make_fit.py
> index b4caa127d2c3..904f45088978 100755
> --- a/scripts/make_fit.py
> +++ b/scripts/make_fit.py
> @@ -100,7 +100,7 @@ def setup_fit(fsw, name):
> fsw (libfdt.FdtSw): Object to use for writing
> name (str): Name of kernel image
> """
> - fsw.INC_SIZE = 65536
> + fsw.INC_SIZE = 16 << 20
> fsw.finish_reservemap()
> fsw.begin_node('')
> fsw.property_string('description', f'{name} with devicetree set')
> @@ -330,10 +330,12 @@ def build_fit(args):
>
> entries.append([model, compat, files_seq])
>
> - finish_fit(fsw, entries)
> + finish_fit(fsw, entries, bool(args.ramdisk))
It seems like this line should rather go into the previous patch.
>
> # Include the kernel itself in the returned file count
> - return fsw.as_fdt().as_bytearray(), seq + 1, size
> + fdt = fsw.as_fdt()
> + fdt.pack()
> + return fdt.as_bytearray(), seq + 1, size
The rest looks good to me. Easy optimization, big win :)
Best regards,
J. Neuschäfer
More information about the linux-arm-kernel
mailing list