[PATCH v5 04/11] of: overlay: make search dir more generic
Marco Felsch
m.felsch at pengutronix.de
Mon Aug 18 10:26:12 PDT 2025
Rename global.of.overlay.dir to global.of.overlay.path to prepare the
codebase to handle FIT image overlays as well because *.path doesn't
imply that it have to be a directory.
Keep the backward compatibility by providing the of.overlay.dir variable
but mark it as deprecated.
Signed-off-by: Marco Felsch <m.felsch at pengutronix.de>
---
Documentation/user/devicetree.rst | 2 +-
drivers/of/overlay.c | 15 ++++++++-------
2 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/Documentation/user/devicetree.rst b/Documentation/user/devicetree.rst
index ef04e14f7c0dde579493425073f1ee01395f0d8c..30a15a8865c154f8afe23d641da10d0afa84423b 100644
--- a/Documentation/user/devicetree.rst
+++ b/Documentation/user/devicetree.rst
@@ -108,7 +108,7 @@ Device tree overlays on the kernel device tree
Overlays can be applied to the kernel device tree before it is handed over to
the kernel. The behaviour is controlled by different variables:
-``global.of.overlay.dir``
+``global.of.overlay.path``
Overlays are read from this directory. barebox will try to apply all overlays
found here if not limited by one of the other variables below. When the path
given here is an absolute path it is used as is. A relative path is relative
diff --git a/drivers/of/overlay.c b/drivers/of/overlay.c
index a63cca1b47e74615d4453a27a55fb15d1f706fae..bc3fdff0cd277b3460981769c2b220adfced6e80 100644
--- a/drivers/of/overlay.c
+++ b/drivers/of/overlay.c
@@ -408,7 +408,7 @@ int of_register_overlay(struct device_node *overlay)
}
static char *of_overlay_pattern;
-static char *of_overlay_dir;
+static char *of_overlay_path;
static char *of_overlay_basedir;
/**
@@ -468,13 +468,13 @@ static int of_overlay_global_fixup(struct device_node *root, void *data)
char *dir;
int ret;
- if (*of_overlay_dir == '/')
- return of_overlay_apply_dir(root, of_overlay_dir, true);
+ if (*of_overlay_path == '/')
+ return of_overlay_apply_dir(root, of_overlay_path, true);
- if (*of_overlay_dir == '\0')
+ if (*of_overlay_path == '\0')
return 0;
- dir = concat_path_file(of_overlay_basedir, of_overlay_dir);
+ dir = concat_path_file(of_overlay_basedir, of_overlay_path);
ret = of_overlay_apply_dir(root, dir, true);
@@ -616,9 +616,10 @@ static int of_overlay_init(void)
globalvar_add_simple_string("of.overlay.compatible", &of_overlay_compatible);
globalvar_add_simple_string("of.overlay.pattern", &of_overlay_pattern);
globalvar_add_simple_string("of.overlay.filter", &of_overlay_filter);
- globalvar_add_simple_string("of.overlay.dir", &of_overlay_dir);
+ globalvar_add_simple_string("of.overlay.path", &of_overlay_path);
globalvar_alias_deprecated("of.overlay.filepattern", "of.overlay.pattern");
+ globalvar_alias_deprecated("of.overlay.dir", "of.overlay.path");
of_overlay_register_filter(&of_overlay_pattern_filter);
of_overlay_register_filter(&of_overlay_filepattern_filter);
@@ -632,5 +633,5 @@ device_initcall(of_overlay_init);
BAREBOX_MAGICVAR(global.of.overlay.compatible, "space separated list of compatibles an overlay must match");
BAREBOX_MAGICVAR(global.of.overlay.pattern, "space separated list of filepatterns an overlay must match");
-BAREBOX_MAGICVAR(global.of.overlay.dir, "Directory to look for dt overlays");
+BAREBOX_MAGICVAR(global.of.overlay.path, "Path to look for dt overlays");
BAREBOX_MAGICVAR(global.of.overlay.filter, "space separated list of filters");
--
2.39.5
More information about the barebox
mailing list