[U-Boot] [PATCH] Kconfig: BOOTCOMMAND: Define default set of boot commands in Kconfig

Tom Rini trini at konsulko.com
Mon Nov 6 14:32:26 UTC 2017


On Fri, Oct 27, 2017 at 02:04:53PM +0200, Lukasz Majewski wrote:
> Hi Tom,
> 
> > On Sat, Sep 30, 2017 at 10:20:47PM +0200, Łukasz Majewski wrote:
> > > On 09/14/2017 04:55 PM, Tom Rini wrote:
> > > >On Mon, Sep 11, 2017 at 10:53:51PM +0200, Łukasz Majewski wrote:
> > > >>On 09/11/2017 07:31 PM, Tom Rini wrote:
> > > >>>On Sun, Sep 10, 2017 at 08:25:02PM +0200, Lukasz Majewski wrote:
> > > >>>
> > > >>>>This patch gives an opportunity to override the defined
> > > >>>>CONFIG_BOOTCOMMAND (at <board_config.h> files) with set of
> > > >>>>commands defined in board _defconfig file.
> > > >>>>
> > > >>>>Rationale: This change allows having two different u-boot
> > > >>>>builds - one for production and one (far more larger) for
> > > >>>>factory setup.
> > > >>>>
> > > >>>>Signed-off-by: Lukasz Majewski <lukma at denx.de>
> > > >>>
> > > >>>I don't get it, sorry.  We need to move CONFIG_BOOTCOMMAND into
> > > >>>Kconfig with some other logic so that distro_bootcmd stuff works.
> > > >>>
> > > >>
> > > >>The state of the art:
> > > >>---------------------
> > > >>
> > > >>Many boards use CONFIG_BOOTCOMMAND as a set of commands to be
> > > >>executed at boot time:
> > > >>
> > > >>bootcmd=CONFIG_BOOTCOMMAND
> > > >>
> > > >>One notable user of it is config_distro_bootcmd.h
> > > >
> > > >Right.
> > > >
> > > >>Rationale:
> > > >>----------
> > > >>
> > > >>With this patch I can:
> > > >>
> > > >>1. Setup one set of commands to be executed by default - e.g.:
> > > >>
> > > >>bootcmd="run boot_mmc"
> > > >>
> > > >>and
> > > >>
> > > >>2. Have other defconfig - e.g. <my_board>_factory_defconfig, which
> > > >>enables some extra stuff (like USB, gadget, gpt write, etc) and is
> > > >>used solely for factory flashing.
> > > >>
> > > >>By having the opportunity to override CONFIG_BOOTCOMMAND in
> > > >>Kconfig, I can use the same code base and just adjust Kconfig for
> > > >>board.
> > > >>
> > > >>
> > > >>What do you mean by "some other logic"?
> > > >
> > > >Well, CONFIG_BOOTCOMMAND needs to be moved to Kconfig itself.
> > > >Figuring out some of the "how" will take a little work.  And a
> > > >little re-organization.  But that needs doing.
> > >
> > > 
> > > Cannot we start with the approach proposed by this commit?
> > > 
> > > How would you see the rework done?
> > 
> > I'd like to see something that tries to move CONFIG_BOOTCOMMAND
> > around. Move the distro boot things into include/environment/ and use
> > the post-processed command as value in configs/*_defconfig as fits,
> > or put things into something else in include/environment/ for other
> > repeated but not distro boot commands.
> > 
> 
> I've not received any reply from you regarding following argument for
> this patch:
> 
> The proposed above changes are orthogonal to this patch.
> 
> This patch _only_ gives the opportunity to override current BOOTCOMMAND 
> settings.
> This functionality allows the same code base for two distinct u-boot 
> builds - namely factory (for flashing) and production one.
> 
> Such approach is very convenient with OE builds.

The problem I see is that we should instead move CONFIG_BOOTCOMMAND to
Kconfig and OE/similar can override bootcmd via .cfg or similar.  To
that end, I've started the migration at least for distro_bootcmd and
some of the cases where it's not just 'run distro_bootcmd' being used.
I hope to post it shortly, once I've migrated a few more options.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20171106/87954e39/attachment.sig>


More information about the U-Boot mailing list