[PATCH 11/11] bootm: Support string substitution in bootargs
Michael Walle
michael at walle.cc
Mon Oct 19 17:47:02 CEST 2020
Am 2020-10-19 16:54, schrieb Wolfgang Denk:
> 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.
>
> 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?
>
> Why do you have to use "%U" in your template instead of for example
> "${uuid}" ?
I'd second that. Having variables evaluated inside the bootargs would
be very valuable IMHO.
At the moment we have some cumbersome constructs like
set_bootargs="setenv bootargs bla ${var}"
-michael
More information about the U-Boot
mailing list