[PATCH v2 16/30] kconfig: binman: Check for SPL instead of XPL

Simon Glass sjg at chromium.org
Sun Sep 29 13:50:41 CEST 2024


Hi Jonas,

On Sun, 29 Sept 2024 at 00:08, Jonas Karlman <jonas at kwiboo.se> wrote:
>
> Hi Simon,
>
> On 2024-09-28 22:00, Simon Glass wrote:
> > Now that SPL means SPL (only) and is not defined for other phases,
> > update kconfig rules.
> >
> > Signed-off-by: Simon Glass <sjg at chromium.org>
> > ---
> >
> > (no changes since v1)
> >
> >  include/linux/kconfig.h                | 10 +++++-----
> >  tools/binman/test/generated/autoconf.h |  2 +-
> >  2 files changed, 6 insertions(+), 6 deletions(-)
> >
> > diff --git a/include/linux/kconfig.h b/include/linux/kconfig.h
> > index a59f2a61e6a..ec9584b2426 100644
> > --- a/include/linux/kconfig.h
> > +++ b/include/linux/kconfig.h
> > @@ -40,7 +40,7 @@
> >  #define _CONFIG_PREFIX TPL_
> >  #elif defined(CONFIG_VPL_BUILD)
> >  #define _CONFIG_PREFIX VPL_
> > -#elif defined(CONFIG_XPL_BUILD)
> > +#elif defined(CONFIG_SPL_BUILD)
>
> This change back from XPL to SPL is probably not needed it you did not
> change it to XPL in the first place.
>
> Just doing a mass search and replace is making this series hard to
> review.
>
> Personally I did not fully realize that SPL_ or SPL_BUILD meant any xPL
> build before this series, so I would look at each SPL_BUILD to XPL_BUILD
> and SPL_ to XPL_ change and try to understand the original intent.
>
> I know multiple places where I have used SPL_ and not SPL_TPL_ because
> of this, and similar have used SPL_BUILD for parts I only want in SPL
> and not in TPL.

Yes and this will be the case all over the tree. I have added
countless similar things myself. The good news is that everything
works as before and there is now a clean 'SPL_BUILD' which can be used
without any dependency on !TPL_BUILD etc.

>
> How should I best handle sending fixes where I e.g. have used SPL_ in
> Makefile that instead should be changed to SPL_TPL_/PHASE_ and similar
> avoid a change to XPL_BUILD because the original intent was just for SPL?

Ideally use xpl_phase() if possible. Otherwise you can send a patch to
clean up and simplify the #ifdefs.

>
> I will also suggest you rearrange some of you patches to make this more
> reviewable and possible also make git bisect easier, maybe:
>
> - any fixes not involving XPL first, e.g. _SPL to _SPL_TPL in Makefile,

Where are you seeing those?

>   SPL_BUILD in Kconfig etc

Here I think you mean the fixes for tegram etc, Yes I can put those first.

> - add XPL_BUILD symbol

OK

> - all fixes and cleanup involving XPL_BUILD symbol

OK

> - rename and use spl_ to xpl_ functions

OK. That will generate churn, since they will have to be using
SPL_BUILD at this point, then changed later to use XPL_BUILD.

> - doc updates

OK

> - replace SPL_BUILD with XPL_BUILD in code, preferably in multiple
>   smaller logical patches instead of a single big patch

OK I can split it by subdir, perhaps. It is about 15k lines of changes

> - remove SPL_BUILD for TPL and VPL

OK

> - rename SPL_ to XPL_ in Makefile

OK

> - rename SPL_TPL_ to PHASE_ in Makefile, NAME and PROMPT

OK

>
> or something similar instead of doing the big search and replace early.

I will give this a try in v3.

Regards,
Simon


More information about the U-Boot mailing list