[PATCH v9 0/6] scripts/make_fit: Support ramdisks and faster operations

Simon Glass posted 6 patches 1 month ago
scripts/Makefile.lib |   2 +-
scripts/make_fit.py  | 179 ++++++++++++++++++++++++++++++++++---------
2 files changed, 145 insertions(+), 36 deletions(-)
[PATCH v9 0/6] scripts/make_fit: Support ramdisks and faster operations
Posted by Simon Glass 1 month ago
This series updates 'make image.fit' to support adding a ramdisk to the
FIT, provided as a parameter.

It also includes a few performance improvement, so that building a FIT
from ~450MB of kernel/module/devicetree files only takes a few seconds
on a modern machine.

For this version I have dropped inclusion of built modules, as there is
still more discussion to happen in that area.

Changes in v9:
- Rename the variable to FIT_EXTRA_ARGS

Changes in v8:
- Drop erroneous line 'kbuild: Allow adding modules into the FIT ...'

Changes in v7:
- Add a note about the " -> ' change
- Add a new patch with the MAKE_FIT_FLAGS change
- Mention xz as well, in the commit message
- Drop patch 'scripts/make_fit: Provide a way to add built modules'
- Drop patch 'kbuild: Split out module targets into a variable'
- Drop patch 'kbuild: Allow adding modules into the FIT ramdisk'

Changes in v6:
- Drop the load address for ramdisk, as it is not needed
- Bring back the ramdisk 'compression' property, set to 'none'

Changes in v5:
- Fix 'use' typo

Changes in v4:
- Update the commit message

Changes in v3:
- Move the ramdisk chunk into the correct patch
- Add a comment at the top of the file about the -r option
- Count the ramdisk in the total files
- Update the commit message

Changes in v2:
- Don't compress the ramdisk as it is already compressed

Simon Glass (6):
  scripts/make_fit: Speed up operation
  scripts/make_fit: Support an initial ramdisk
  scripts/make_fit: Move dtb processing into a function
  kbuild: Support a FIT_EXTRA_ARGS environment variable
  scripts/make_fit: Support a few more parallel compressors
  scripts/make_fit: Compress dtbs in parallel

 scripts/Makefile.lib |   2 +-
 scripts/make_fit.py  | 179 ++++++++++++++++++++++++++++++++++---------
 2 files changed, 145 insertions(+), 36 deletions(-)

-- 
2.43.0

base-commit: 7f98ab9da046865d57c102fd3ca9669a29845f67
branch: fita9
Re: [PATCH v9 0/6] scripts/make_fit: Support ramdisks and faster operations
Posted by Nathan Chancellor 1 day, 8 hours ago
On Tue, 06 Jan 2026 09:27:30 -0700, Simon Glass wrote:
> This series updates 'make image.fit' to support adding a ramdisk to the
> FIT, provided as a parameter.
> 
> It also includes a few performance improvement, so that building a FIT
> from ~450MB of kernel/module/devicetree files only takes a few seconds
> on a modern machine.
> 
> [...]

Applied to

  https://git.kernel.org/pub/scm/linux/kernel/git/kbuild/linux.git kbuild-next

Thanks!

[1/6] scripts/make_fit: Speed up operation
      https://git.kernel.org/kbuild/c/621fd65adc825
[2/6] scripts/make_fit: Support an initial ramdisk
      https://git.kernel.org/kbuild/c/26428e7dd6a51
[3/6] scripts/make_fit: Move dtb processing into a function
      https://git.kernel.org/kbuild/c/873c2836982e1
[4/6] kbuild: Support a FIT_EXTRA_ARGS environment variable
      https://git.kernel.org/kbuild/c/9a329df6e0041
[5/6] scripts/make_fit: Support a few more parallel compressors
      https://git.kernel.org/kbuild/c/fcdcf22a34b07
[6/6] scripts/make_fit: Compress dtbs in parallel
      https://git.kernel.org/kbuild/c/c7c88b20cd422

Please look out for regression or issue reports or other follow up
comments, as they may result in the patch/series getting dropped or
reverted. Patches applied to an "unstable" branch are accepted pending
wider testing in -next and any post-commit review; they will generally
be moved to the main branch in a week if no issues are found.

Best regards,
-- 
Nathan Chancellor <nathan@kernel.org>
Re: [PATCH v9 0/6] scripts/make_fit: Support ramdisks and faster operations
Posted by Simon Glass 4 days ago
Hi,

On Wed, 7 Jan 2026 at 05:27, Simon Glass <sjg@chromium.org> wrote:
>
> This series updates 'make image.fit' to support adding a ramdisk to the
> FIT, provided as a parameter.
>
> It also includes a few performance improvement, so that building a FIT
> from ~450MB of kernel/module/devicetree files only takes a few seconds
> on a modern machine.
>
> For this version I have dropped inclusion of built modules, as there is
> still more discussion to happen in that area.
>
> Changes in v9:
> - Rename the variable to FIT_EXTRA_ARGS
>
> Changes in v8:
> - Drop erroneous line 'kbuild: Allow adding modules into the FIT ...'
>
> Changes in v7:
> - Add a note about the " -> ' change
> - Add a new patch with the MAKE_FIT_FLAGS change
> - Mention xz as well, in the commit message
> - Drop patch 'scripts/make_fit: Provide a way to add built modules'
> - Drop patch 'kbuild: Split out module targets into a variable'
> - Drop patch 'kbuild: Allow adding modules into the FIT ramdisk'
>
> Changes in v6:
> - Drop the load address for ramdisk, as it is not needed
> - Bring back the ramdisk 'compression' property, set to 'none'
>
> Changes in v5:
> - Fix 'use' typo
>
> Changes in v4:
> - Update the commit message
>
> Changes in v3:
> - Move the ramdisk chunk into the correct patch
> - Add a comment at the top of the file about the -r option
> - Count the ramdisk in the total files
> - Update the commit message
>
> Changes in v2:
> - Don't compress the ramdisk as it is already compressed
>
> Simon Glass (6):
>   scripts/make_fit: Speed up operation
>   scripts/make_fit: Support an initial ramdisk
>   scripts/make_fit: Move dtb processing into a function
>   kbuild: Support a FIT_EXTRA_ARGS environment variable
>   scripts/make_fit: Support a few more parallel compressors
>   scripts/make_fit: Compress dtbs in parallel
>
>  scripts/Makefile.lib |   2 +-
>  scripts/make_fit.py  | 179 ++++++++++++++++++++++++++++++++++---------
>  2 files changed, 145 insertions(+), 36 deletions(-)

Can this series be applied, please?

Regards,
Simon

>
> --
> 2.43.0
>
> base-commit: 7f98ab9da046865d57c102fd3ca9669a29845f67
> branch: fita9
Re: [PATCH v9 0/6] scripts/make_fit: Support ramdisks and faster operations
Posted by Nathan Chancellor 3 days, 22 hours ago
Hi Simon,

On Tue, Feb 03, 2026 at 03:45:36PM +1300, Simon Glass wrote:
> On Wed, 7 Jan 2026 at 05:27, Simon Glass <sjg@chromium.org> wrote:
> >
> > This series updates 'make image.fit' to support adding a ramdisk to the
> > FIT, provided as a parameter.
> >
> > It also includes a few performance improvement, so that building a FIT
> > from ~450MB of kernel/module/devicetree files only takes a few seconds
> > on a modern machine.
> >
> > For this version I have dropped inclusion of built modules, as there is
> > still more discussion to happen in that area.
> >
> > Changes in v9:
> > - Rename the variable to FIT_EXTRA_ARGS
> >
> > Changes in v8:
> > - Drop erroneous line 'kbuild: Allow adding modules into the FIT ...'
> >
> > Changes in v7:
> > - Add a note about the " -> ' change
> > - Add a new patch with the MAKE_FIT_FLAGS change
> > - Mention xz as well, in the commit message
> > - Drop patch 'scripts/make_fit: Provide a way to add built modules'
> > - Drop patch 'kbuild: Split out module targets into a variable'
> > - Drop patch 'kbuild: Allow adding modules into the FIT ramdisk'
> >
> > Changes in v6:
> > - Drop the load address for ramdisk, as it is not needed
> > - Bring back the ramdisk 'compression' property, set to 'none'
> >
> > Changes in v5:
> > - Fix 'use' typo
> >
> > Changes in v4:
> > - Update the commit message
> >
> > Changes in v3:
> > - Move the ramdisk chunk into the correct patch
> > - Add a comment at the top of the file about the -r option
> > - Count the ramdisk in the total files
> > - Update the commit message
> >
> > Changes in v2:
> > - Don't compress the ramdisk as it is already compressed
> >
> > Simon Glass (6):
> >   scripts/make_fit: Speed up operation
> >   scripts/make_fit: Support an initial ramdisk
> >   scripts/make_fit: Move dtb processing into a function
> >   kbuild: Support a FIT_EXTRA_ARGS environment variable
> >   scripts/make_fit: Support a few more parallel compressors
> >   scripts/make_fit: Compress dtbs in parallel
> >
> >  scripts/Makefile.lib |   2 +-
> >  scripts/make_fit.py  | 179 ++++++++++++++++++++++++++++++++++---------
> >  2 files changed, 145 insertions(+), 36 deletions(-)
> 
> Can this series be applied, please?

Who are you expecting to apply this series? It does not look like it has
gone through one tree consistently and it is not clear from the
addressees. I guess it could go through Kbuild?

Cheers,
Nathan
Re: [PATCH v9 0/6] scripts/make_fit: Support ramdisks and faster operations
Posted by Simon Glass 3 days, 5 hours ago
hI Nathan,

On Tue, 3 Feb 2026 at 17:51, Nathan Chancellor <nathan@kernel.org> wrote:
>
> Hi Simon,
>
> On Tue, Feb 03, 2026 at 03:45:36PM +1300, Simon Glass wrote:
> > On Wed, 7 Jan 2026 at 05:27, Simon Glass <sjg@chromium.org> wrote:
> > >
> > > This series updates 'make image.fit' to support adding a ramdisk to the
> > > FIT, provided as a parameter.
> > >
> > > It also includes a few performance improvement, so that building a FIT
> > > from ~450MB of kernel/module/devicetree files only takes a few seconds
> > > on a modern machine.
> > >
> > > For this version I have dropped inclusion of built modules, as there is
> > > still more discussion to happen in that area.
> > >
> > > Changes in v9:
> > > - Rename the variable to FIT_EXTRA_ARGS
> > >
> > > Changes in v8:
> > > - Drop erroneous line 'kbuild: Allow adding modules into the FIT ...'
> > >
> > > Changes in v7:
> > > - Add a note about the " -> ' change
> > > - Add a new patch with the MAKE_FIT_FLAGS change
> > > - Mention xz as well, in the commit message
> > > - Drop patch 'scripts/make_fit: Provide a way to add built modules'
> > > - Drop patch 'kbuild: Split out module targets into a variable'
> > > - Drop patch 'kbuild: Allow adding modules into the FIT ramdisk'
> > >
> > > Changes in v6:
> > > - Drop the load address for ramdisk, as it is not needed
> > > - Bring back the ramdisk 'compression' property, set to 'none'
> > >
> > > Changes in v5:
> > > - Fix 'use' typo
> > >
> > > Changes in v4:
> > > - Update the commit message
> > >
> > > Changes in v3:
> > > - Move the ramdisk chunk into the correct patch
> > > - Add a comment at the top of the file about the -r option
> > > - Count the ramdisk in the total files
> > > - Update the commit message
> > >
> > > Changes in v2:
> > > - Don't compress the ramdisk as it is already compressed
> > >
> > > Simon Glass (6):
> > >   scripts/make_fit: Speed up operation
> > >   scripts/make_fit: Support an initial ramdisk
> > >   scripts/make_fit: Move dtb processing into a function
> > >   kbuild: Support a FIT_EXTRA_ARGS environment variable
> > >   scripts/make_fit: Support a few more parallel compressors
> > >   scripts/make_fit: Compress dtbs in parallel
> > >
> > >  scripts/Makefile.lib |   2 +-
> > >  scripts/make_fit.py  | 179 ++++++++++++++++++++++++++++++++++---------
> > >  2 files changed, 145 insertions(+), 36 deletions(-)
> >
> > Can this series be applied, please?
>
> Who are you expecting to apply this series? It does not look like it has
> gone through one tree consistently and it is not clear from the
> addressees. I guess it could go through Kbuild?

Yes, that's what I was thinking.

Regards,
Simon