On 6/18/26 17:08, Simon Glass wrote:
Hi,

On Wed, 3 Jun 2026 at 06:06, Simon Glass <[email protected]> wrote:

Dear U-Boot Contributors,

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.

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.

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

Just to report that after some brief discussions, we have agreed on a
path forward here (thank you Peter!).

Concept will become a custodian tree in U-Boot's Gitlab instance. I
will run it, with access to my hardware lab. It will cherry-pick from
mainline and accept code through its own channels (PRs and separate
mailing list + patchwork). When features are ready for mainline, I
will send patches to the main list for review in the normal way.

I have been working to migrate things off u-boot.org (lab, gitlab,
blog... and email). I am transferring u-boot.org to the SFC once this
is finished in the next few days. If we do end up setting up email
addresses for people on u-boot.org, I'd appreciate keeping sjg@

Tom, Neil Peter, please can you ack this to confirm you are happy with it?

As we already discussed in private, that approach works for me.

Thanks,
Neil



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

Regards,
Simon

Reply via email to