[PATCH] scripts/dtc: drop yaml in DT validation

Joao Marcos Costa joaomarcos.costa at bootlin.com
Thu Apr 30 10:10:41 CEST 2026


Hello,

On 4/29/26 18:08, Marek Vasut wrote:
(...)
>> I'm kinda worried we've been missing other patches since our last sync 
>> claims we bumped to 6.1 so we should have had this commit.
> 
> The last DTC sync should put U-Boot at Linux 6.17.y , see:
> 
> 0535e46d55d7 ("scripts/dtc: Update to upstream version 
> v1.7.2-35-g52f07dcca47c")
> 
> So I wonder how this patch got missed or slipped through the cracks.
> 
>> It'd be nice to know which (if any) issues you encountered when 
>> backporting the patch (e.g. things you didn't backport on purpose and 
>> why).
> 
> I agree, and it would be very helpful to check for any other missing 
> patches.

So, this is the list of changes in the original patch (i.e., git show 
--stat):

1) Documentation/devicetree/bindings/Makefile
2) .../devicetree/bindings/writing-schema.rst
3) scripts/Makefile.lib
4) scripts/dtc/Makefile
5) scripts/dtc/update-dtc-source.sh

As for (1), the first and third chunks were already applied. The second 
one (below) seemed to be N/A:

-always-$(CHECK_DT_BINDING) += $(patsubst 
$(srctree)/$(src)/%.yaml,%.example.dt.yaml, $(CHK_DT_DOCS))
+always-$(CHECK_DT_BINDING) += $(patsubst 
$(srctree)/$(src)/%.yaml,%.example.dtb, $(CHK_DT_DOCS))

About (2), it was already applied as well, nothing to be done there.

About (3), I might be wrong because I'm not familiar with this file, but 
I skipped this chunk because it also seemed to be N/A:

-$(obj)/%.dtb: $(src)/%.dts $(DTC) FORCE
-       $(call if_changed_dep,dtc)
-
-$(obj)/%.dtbo: $(src)/%.dts $(DTC) FORCE
-       $(call if_changed_dep,dtc)
-

another chunk I skipped in (3), because it seemed to be partially 
applied (e.g., the || true and the ifneq on top):

+ifneq ($(CHECK_DTBS)$(CHECK_DT_BINDING),)
  DT_CHECKER ?= dt-validate
  DT_CHECKER_FLAGS ?= $(if $(DT_SCHEMA_FILES),-l $(DT_SCHEMA_FILES),-m)
  DT_BINDING_DIR := Documentation/devicetree/bindings
  DT_TMP_SCHEMA := $(objtree)/$(DT_BINDING_DIR)/processed-schema.json

  quiet_cmd_dtb_check =  CHECK   $@
-      cmd_dtb_check =  $(DT_CHECKER) $(DT_CHECKER_FLAGS) -u 
$(srctree)/$(DT_BINDING_DIR) -p $(DT_TMP_SCHEMA) $@
+      cmd_dtb_check =  $(DT_CHECKER) $(DT_CHECKER_FLAGS) -u 
$(srctree)/$(DT_BINDING_DIR) -p $(DT_TMP_SCHEMA) $@ || true
+endif

but now I'm reconsidering...please let me know what you think.

Still regarding (3), I skipped the 4th chunk (already applied) and this 
last one (below, which now I'm also reconsidering):

+$(obj)/%.dtbo: $(src)/%.dts $(DTC) FORCE
+       $(call if_changed_dep,dtc)
+

Finally, (4) and (5) applied fine, so not much to say about them.

Honestly, I'm not familiar with the way you sync those files (how, when, 
where, etc), so I'm not sure how much I can be of help here.

I hope this clarifies my backport, but please reach back to me if it didn't.
-- 
Best regards,
João Marcos Costa


More information about the U-Boot mailing list