Commit 7a049605 authored by Masahiro Yamada's avatar Masahiro Yamada
Browse files

kbuild: fix DT binding schema rule to detect command line changes



This if_change_rule is not working properly; it cannot detect any
command line change.

The reason is because cmd-check in scripts/Kbuild.include compares
$(cmd_$@) and $(cmd_$1), but cmd_dtc_dt_yaml does not exist here.

For if_change_rule to work properly, the stem part of cmd_* and rule_*
must match. Because this cmd_and_fixdep invokes cmd_dtc, this rule must
be named rule_dtc.

Fixes: 4f0e3a57 ("kbuild: Add support for DT binding schema checks")
Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
Acked-by: default avatarRob Herring <robh@kernel.org>
parent eccbde4f
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -302,13 +302,13 @@ DT_TMP_SCHEMA := $(objtree)/$(DT_BINDING_DIR)/processed-schema.yaml
quiet_cmd_dtb_check =	CHECK   $@
      cmd_dtb_check =	$(DT_CHECKER) -u $(srctree)/$(DT_BINDING_DIR) -p $(DT_TMP_SCHEMA) $@ ;

define rule_dtc_dt_yaml
define rule_dtc
	$(call cmd_and_fixdep,dtc,yaml)
	$(call cmd,dtb_check)
endef

$(obj)/%.dt.yaml: $(src)/%.dts $(DTC) $(DT_TMP_SCHEMA) FORCE
	$(call if_changed_rule,dtc_dt_yaml)
	$(call if_changed_rule,dtc)

dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)