[PATCH 11/11] bootm: Support string substitution in bootargs
Simon Glass
sjg at chromium.org
Mon Oct 19 17:50:22 CEST 2020
Hi Wolfgang,
On Mon, 19 Oct 2020 at 08:55, Wolfgang Denk <wd at denx.de> wrote:
>
> Dear Simon,
>
> In message <20201019135602.3943835-12-sjg at chromium.org> you wrote:
> > In some cases it is necessary to pass parameters to Linux so that it will
> > boot correctly. For example, the rootdev parameter is often used to
> > specify the root device. However the root device may change depending on
> > whence U-Boot loads the kernel. At present it is necessary to build up
> > the command line by adding device strings to it one by one.
> >
> > It is often more convenient to provide a template for bootargs, with
> > U-Boot doing the substitution from other environment variables.
> >
> > Add a way to substitute strings in the bootargs variable. This allows
> > things like "rootdev=%U" to be used in bootargs, with the %U substitution
> > providing the UUID of the root device.
>
> Argh, no, please don't.
>
> You add something unconditionally to common code which very few
> people need. U-Boot size is growing all the time because of such
> ... features. This may be acceptable on the systems you have in
> mind, but I consider this selfish.
Did you see the Kconfig option?
>
> Why do we have to add yet another non-standard way of substituting
> variables in a string? Can we not use alreay existing methonds
> instead?
What sort of methods?
>
> Why do you have to use "%U" in your template instead of for example
> "${uuid}" ?
This is what Chrome OS uses, so it is easier this way, Otherwise I
have to replace %U with ${uuid} first.
Which code can I use to parse the ${var} thing?
Regards,
Simon
More information about the U-Boot
mailing list