This sets the overlay search path to $BOOT/overlays during starting
an bootloader spec entry with the effect that overlays from there
can be applied.

Signed-off-by: Sascha Hauer <[email protected]>
---
 common/blspec.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/common/blspec.c b/common/blspec.c
index ca96a45487..6cb1fea9e8 100644
--- a/common/blspec.c
+++ b/common/blspec.c
@@ -51,7 +51,7 @@ static int blspec_overlay_fixup(struct device_node *root, 
void *ctx)
 
                path = basprintf("%s/%s", entry->rootpath, overlay);
 
-               of_overlay_apply_file(root, path);
+               of_overlay_apply_file(root, path, false);
 
                free(path);
        }
@@ -139,6 +139,8 @@ static int blspec_boot(struct bootentry *be, int verbose, 
int dryrun)
                        (entry->cdev && entry->cdev->dev) ?
                        dev_name(entry->cdev->dev) : "none");
 
+       of_overlay_set_basedir(abspath);
+
        old_fws = firmware_get_searchpath();
        if (old_fws && *old_fws)
                fws = basprintf("%s/lib/firmware:%s", abspath, old_fws);
@@ -154,6 +156,7 @@ static int blspec_boot(struct bootentry *be, int verbose, 
int dryrun)
        if (overlays)
                of_unregister_fixup(blspec_overlay_fixup, entry);
 
+       of_overlay_set_basedir("/");
        firmware_set_searchpath(old_fws);
 
 err_out:
-- 
2.29.2


_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox

Reply via email to