Hi David, On 2026-08-06T16:53:15, David Lechner <[email protected]> wrote: > Makefile: fix dtbs_check target > > Use absolute paths for src and srctree when calling dtbs_check via > sub-make command. This fixes dtbs checks not working. > > Without this change, we see errors like:
> > find: ‘dts/upstream/Bindings’: No such file or directory Just to check, this only happens with out-of-tree builds (O=), right? In-tree the sub-make runs in the source directory, so the relative path resolves. Please can you mention in the commit message that this affects out-of-tree builds, so people know when it occurs and how to reproduce it? > > find: ‘dts/upstream/Bindings’: No such file or directory > > This resulted in no schemas to be parsed and therefore no useful checks > were done. > > Since we do not want to modify dts/upstream/Makefile, as it would be > written over when we pull upstream changes, we make the changes in the > U-Boot Makefile. > > Signed-off-by: David Lechner <[email protected]> > > Makefile | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > diff --git a/Makefile b/Makefile > @@ -1455,7 +1455,9 @@ dtbs_check: dt_binding_check dtbs > + $(Q)$(MAKE) $(build)=$(DT_BINDING_DIR) srctree=$(abspath $(srctree)) \ > + src=$(abspath $(srctree))/$(DT_BINDING_DIR) \ > + $(DT_BINDING_DIR)/processed-schema.json I traced this through scripts/Makefile.build and dts/upstream/Bindings/Makefile and the logic looks right: src on the command line overrides the assignment in Makefile.build, so find_all_cmd searches the source tree, DT_DOCS still resolves via VPATH in the objtree, and the output lands in $(obj)/processed-schema.json where scripts/Makefile.lib expects it (DT_TMP_SCHEMA). The kernel has moved to defining src as $(srctree)/$(obj) in Makefile.build, but there are more changes after that, so we can worry about that later. One small thing: $(abspath $(srctree)) is expanded twice. You could assign it to a variable next to DT_BINDING_DIR to make the rule easier to read. What do you think? In any case: Reviewed-by: Simon Glass <[email protected]> Regards, Simon
