Hi Ilias,

On Thu, 4 Jun 2026 at 02:24, Ilias Apalodimas
<[email protected]> wrote:
>
> 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].

>From memory that was the work to allow booting an EFI app without
needing CONFIG_CMDLINE to be enabled. The Fixes tag on that commit
points to a commit by [email protected], not me (perhaps the
-next merge has bug though, but strange to add a Fixes tag for that?).
Certainly I was booting Ubuntu on a Chromebook using this long before
the end of 2023 (but yes, there were fixes to the original code, there
are always fixes).

>
> 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.

Here i am talking about the Concept tree, rather than mainline. I hope
you will agree that for mainline I have been sending small series and
waiting for a while for them to be applied, before sending more. That
is certainly been what I've tried to do.

>
> 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.

Most of the new features are independent of the board (e.g. code in
boot/ is generic). I did try very hard to enable VBE in rk3399, even
sending a rebased series a few weeks back, but it hasn't happened.
Perhaps I could do better, but it isn't for lack of effort.

>
> > 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?

No, there needs to be human review by the author before the patches
are sent, then by reviewers. AI is just an assistant, although we'll
see what happens next year.

>
> > 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+xx...@mail.gmail.com/
> >
>
> [0] commit 4b151562bb8e541 ("bootmeth: pass size to efi_binary_run()")
>
> Thanks
> /Ilias
>
> > Concept tree:
> >                        :
> >                        ::
> >                      ...:::.
> >                  ::  :. -
> >            .   ::::::-  - ::. ..
> >           .:: .:      -==  =.:.
> >         ::.- ::::. ::. :=:. ::::
> >   ::. ::   =..  :.-::: =:
> >     .:-:-. -.::  ::=-:=:
> >   ::::::=.  -.::   ===:       ::.
> >     ::.:::=::=:   -===:--==-::--::
> >       :.    :-=-.:==:.   .:  ::
> >                ===:       ::  :
> >                ==:
> >                ==
> >               :==
> >               -==:
> >               -+=:
> >               =++=.
> >              .-===:
>

Regards,
Simon

Reply via email to