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

Reply via email to