U-Boot Concept Tree Proposal

Ilias Apalodimas ilias.apalodimas at linaro.org
Thu Jun 4 10:24:03 CEST 2026


On Wed Jun 3, 2026 at 8:06 AM EEST, Simon Glass wrote:
> Dear U-Boot Contributors,

Hi Simon

>
> I would like to introduce the U-Boot Concept tree along with a few thoughts
> on its role in U-Boot.
>
> By way of background, I have been a contributor for about 15 years - around
> 10k commits and countless reviews. I have introduced many innovations into
> the project: e.g. sandbox, device tree, C test infrastructure, Binman,
> standard boot. Of course I could not have done any of this without the
> U-Boot community (nor would there be any point).
>
> As the U-Boot project has matured, the demands for mainline stability and
> rigorous review have created a natural friction for landing complex,
> large-scale feature and refactoring series at the necessary pace. This
> structural reality, which has slowed the adoption of ambitious efforts like
> bootstd, VBE, xPL [1], and CI-connected hardware labs, is what the Concept
> tree is designed to alleviate.
>

Well the problem here -- at least from my side, is that a lot of these features
are useful but feel half baked. E.g we found bugs in the bootstd uefi method and
those were not corner cases bugs. We couldn't even boot boards with it until [0].

I also think to an extent that's expected. Introducing big features will carry bugs
etc and that's fine. What's not fine is trying to merge all of them in a short
period of time. We need to find a working model, where new features are tested,
at least on a number of boards and become the default. Those changes also need
to be sent incrementally and be reviewable. You can't send a 50 patch series and
expect them to get merged in a week. You need to find a way to send smaller patches
that people can reliably review and accept.
FWIW there's similar code all over the place in the driver model.

The pattern here is that you add some code for an idea, but you spend little
effort plugging it in to the rest of the ecosystem and boards. You just magically
expect people to follow that and then you personally treat it as a U-Boot standard.

> I strongly believe that projects must evolve in order to stay relevant in
> the long term. This includes code-refactoring, new features and subsystems,
> along with migration of old code to use them.  A look back at the U-Boot of
> 2010 shows how far the project has come. I don't think anyone would still
> be using U-Boot if it had not evolved.

Agree

>
> I have set up a 'Concept' tree, a possible future for U-Boot, as a way to
> regain the old pace of innovation. This environment is a proving ground for
> new features where we maintain a lower bar for risk tolerance and
> completeness. We will accept partial and speculative features, provided the
> underlying code remains robust and of high quality, with the shared
> understanding that features may be dropped if they do not prove beneficial.
>
> Another difference is AI. I believe that AI is the next step on from
> compilers, which also took a long time to produce good code and find
> acceptance. The Concept tree welcomes (and encourages) high-quality AI
> contributions and reviews. It accepts PRs and allows reviews on PRs or the
> mailing list.

Do you plan to merge patches that were written and reviewed only by AI agents?

> It relies 99% on automated tests (sandbox, QEMU and labs) so
> sets a high bar for testing. It uses a separate Gitlab instance for now and
> of course uses a separate mailing list and Patchwork project to avoid
> cluttering the main list. Concept runs an AI-powered cherry-picker so that
> it keeps up with mainline. In no sense is it operated as a fork.
>
> Once features are landed and functional in Concept I hope that many will
> find their way to mainline, although inevitably some rework will be needed.
>
> I recognise that introducing a new 'Concept' tree might initially cause
> confusion or concern. This is an invitation to work together to define its
> role. I welcome all feedback - positive or negative - here on the mailing
> list, privately, or on irc. Let’s discuss how this initiative can help
> U-Boot remain the defining firmware for the 2030s.
>
> [1]
> https://lore.kernel.org/u-boot/CAFLszTg6sKpZ1yP3Pjgk9_Fx3MOh=ieT2oaHfgLf3_nC+xXA9g@mail.gmail.com/
>

[0] commit 4b151562bb8e541 ("bootmeth: pass size to efi_binary_run()")

Thanks
/Ilias

> Concept tree:
>                        :
>                        ::
>                      ...:::.
>                  ::  :. -
>            .   ::::::-  - ::. ..
>           .:: .:      -==  =.:.
>         ::.- ::::. ::. :=:. ::::
>   ::. ::   =..  :.-::: =:
>     .:-:-. -.::  ::=-:=:
>   ::::::=.  -.::   ===:       ::.
>     ::.:::=::=:   -===:--==-::--::
>       :.    :-=-.:==:.   .:  ::
>                ===:       ::  :
>                ==:
>                ==
>               :==
>               -==:
>               -+=:
>               =++=.
>              .-===:



More information about the U-Boot mailing list