The bootm.initrd* variables are only available if CONFIG_BOOTM_INITRD is
enabled, but we were saving and attempting to restore them
unconditionally.

Fix that to avoid confusing warnings on systems without initrd support
compiled in.

Fixes: 926985a74ee0 ("bootm: don't clobber global.bootm. variables after script 
boot fails")
Signed-off-by: Ahmad Fatoum <a.fat...@barebox.org>
---
 common/bootm.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/common/bootm.c b/common/bootm.c
index 95211011fe8b..3a2eb262b26a 100644
--- a/common/bootm.c
+++ b/common/bootm.c
@@ -61,8 +61,10 @@ void bootm_data_init_defaults(struct bootm_data *data)
        data->tee_file = getenv_nonempty("global.bootm.tee");
        data->os_file = getenv_nonempty("global.bootm.image");
        getenv_ul("global.bootm.image.loadaddr", &data->os_address);
-       getenv_ul("global.bootm.initrd.loadaddr", &data->initrd_address);
-       data->initrd_file = getenv_nonempty("global.bootm.initrd");
+       if (IS_ENABLED(CONFIG_BOOTM_INITRD)) {
+               getenv_ul("global.bootm.initrd.loadaddr", 
&data->initrd_address);
+               data->initrd_file = getenv_nonempty("global.bootm.initrd");
+       }
        data->root_dev = getenv_nonempty("global.bootm.root_dev");
        data->verify = bootm_get_verify_mode();
        data->appendroot = bootm_appendroot;
@@ -78,8 +80,10 @@ void bootm_data_restore_defaults(const struct bootm_data 
*data)
        globalvar_set("bootm.tee", data->tee_file);
        globalvar_set("bootm.image", data->os_file);
        pr_setenv("global.bootm.image.loadaddr", "0x%lx", data->os_address);
-       pr_setenv("global.bootm.initrd.loadaddr", "0x%lx", 
data->initrd_address);
-       globalvar_set("bootm.initrd", data->initrd_file);
+       if (IS_ENABLED(CONFIG_BOOTM_INITRD)) {
+               pr_setenv("global.bootm.initrd.loadaddr", "0x%lx", 
data->initrd_address);
+               globalvar_set("bootm.initrd", data->initrd_file);
+       }
        globalvar_set("bootm.root_dev", data->root_dev);
        bootm_set_verify_mode(data->verify);
        bootm_appendroot = data->appendroot;
-- 
2.39.5


Reply via email to