diff options
author | Steven Lawrance | 2022-09-14 20:57:28 +0200 |
---|---|---|
committer | Tom Rini | 2022-10-11 15:40:48 -0400 |
commit | 05b0f241f271415d9a26416a5bec316f29a2583f (patch) | |
tree | 3f64066d60015688364b2fa66abe3524f6be16e9 /boot | |
parent | 7c5eeb8309a19c662efe6d7695c256975f6da0d4 (diff) |
boot: image-pre-load: Check environment for location of signature info
Setting an alternative signature info node in "pre_load_sig_info_path"
allows verification of an image using the bootm pre-load mechanism with
a different key, e.g.: setenv pre_load_sig_info_path "/alt/sig" ; bootm
preload [addr]
Signed-off-by: Steven Lawrance <steven.lawrance@softathome.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'boot')
-rw-r--r-- | boot/image-pre-load.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/boot/image-pre-load.c b/boot/image-pre-load.c index 01b60030fcf..b504ab42a54 100644 --- a/boot/image-pre-load.c +++ b/boot/image-pre-load.c @@ -33,6 +33,7 @@ static int image_pre_load_sig_setup(struct image_sig_info *info) const u32 *sig_size; int key_len; int node, ret = 0; + char *sig_info_path = NULL; if (!info) { log_err("ERROR: info is NULL for image pre-load sig check\n"); @@ -42,7 +43,11 @@ static int image_pre_load_sig_setup(struct image_sig_info *info) memset(info, 0, sizeof(*info)); - node = fdt_path_offset(gd_fdt_blob(), IMAGE_PRE_LOAD_PATH); + sig_info_path = env_get("pre_load_sig_info_path"); + if (!sig_info_path) + sig_info_path = IMAGE_PRE_LOAD_PATH; + + node = fdt_path_offset(gd_fdt_blob(), sig_info_path); if (node < 0) { log_info("INFO: no info for image pre-load sig check\n"); ret = 1; |