Hi Lukas,
On 7/2/24 8:48 AM, lukas.funke-...@weidmueller.com wrote:
From: Lukas Funke <lukas.fu...@weidmueller.com>
This series enables U-Boot to import environment variables from the
selectd FIT configuration. One use-case is that the overall build process
enriches the FIT configuration node with dm-verity information which
should be injected into the kernel commandline. U-Boot will then read
these (possibly signed) environment variables and put them into the
actual Kernel commandline using variable replacement
(see CONFIG_BOOTARGS_SUBST).
Example:
Config:
CONFIG_BOOTARGS_SUBST=y
CONFIG_ENV_IMPORT_FIT_CONF=y
FIT:
configurations {
default = "conf-1";
conf-1 {
kernel = "kernel-1";
fdt = "fdt-1";
env,dm-verity-args = "dm-mod.create=...";
env,bar = "someothervalue";
};
};
U-Boot cmdline:
=> env set bootargs="rootfstype=squashfs root=/dev/xyz ${dm-verity-args} ro"
=> boot
Kernel cmdline:
Kernel command line: rootfstype=squashfs ... dm-mod.create= ...
I think FIT supports storing U-Boot scripts and running those via
`source` command (usually the file extension is .scr).
I do not know if there's support for automatically loading this .scr as
part of a config node though, but if there isn't I guess it'd make more
sense to support this case than to come up with yet another implementation?
What do you think?
Cheers,
Quentin