[RFC][PATCH] spl: Turn spl_board_init() into weak symbol

Tom Rini trini at konsulko.com
Tue Sep 20 21:04:52 CEST 2022


On Tue, Sep 20, 2022 at 05:56:50PM +0200, Marek Vasut wrote:
> On 9/20/22 17:43, Simon Glass wrote:
> > On Mon, 19 Sept 2022 at 21:52, Marek Vasut <marex at denx.de> wrote:
> > > 
> > > Make spl_board_init() a weak symbol and get rid of Kconfig symbols
> > > and ifdeffery guarding this function. Since the spl_board_init() is
> > > now a weak symbol, boards can either use the default implementation
> > > which is empty and gets inlined with zero text increase, or override
> > > the implementation with their own as needed.
> > > 
> > > Signed-off-by: Marek Vasut <marex at denx.de>
> > > ---
> > > Cc: Simon Glass <sjg at chromium.org>
> > > Cc: Tom Rini <trini at konsulko.com>
> > > ---
> > 
> > Reviewed-by: Simon Glass <sjg at chromium.org>
> > 
> > but please add a nice comment to spl_board_init() indicating what it
> > is for and when it is called.
> 
> Actually, I wonder, should we start turning all the other symbols which are
> now protected by Kconfig symbol (the #ifdef CONFIG_FOO) into weak symbols
> without any need for Kconfig symbol guard instead as well?

I'm not sure this is a good idea. An #ifdef in and of itself is not a
bad thing, and now we add a dummy function on another set of platforms.
What is true is that a lot of SPL_foo symbols should be select'd rather
than asked because it's not an option. You enable it, it works, you
disable it, your platform doesn't work. If it's just the #if, we could
rewrite the line as
if (CONFIG_IS_ENABLED(BOARD_INIT))
  spl_board_init();

as the prototype shouldn't be guarded anyhow.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20220920/b145688d/attachment.sig>


More information about the U-Boot mailing list