Message ID | 20210913145146.766080-1-robh@kernel.org |
---|---|
State | Accepted |
Commit | 53182e81f47d4ea0c727c49ad23cb782173ab849 |
Headers | show |
Series | [v2] kbuild: Enable DT schema checks for %.dtb targets | expand |
On Mon, Sep 13, 2021 at 11:51 PM Rob Herring <robh@kernel.org> wrote: > > It is possible to build a single dtb, but not with DT schema validation > enabled. Enable the schema validation to run for %.dtb and %.dtbo > targets. Anyone building a dtb for a specific platform *should* pay > attention to schema warnings. > > This could be supported with a separate %.dt.yaml target instead. > However, the .dt.yaml format is considered an intermediate format and > could possibly go away at some point if schema checking is integrated > into dtc. Also, the plan is to enable the schema checks by default once > platforms are free of warnings, and this is a move in that direction. > > Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > Cc: Tom Rini <trini@konsulko.com> > Cc: Masahiro Yamada <masahiroy@kernel.org> > Cc: linux-kbuild@vger.kernel.org > Signed-off-by: Rob Herring <robh@kernel.org> Acked-by: Masahiro Yamada <masahiroy@kernel.org> > --- > v2: > - Also enable schema checks on %.dtbo targets > --- > Makefile | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/Makefile b/Makefile > index 7cfe4ff36f44..c57a7657c8dd 100644 > --- a/Makefile > +++ b/Makefile > @@ -1402,17 +1402,17 @@ endif > > ifneq ($(dtstree),) > > -%.dtb: include/config/kernel.release scripts_dtc > - $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@ > +%.dtb: dt_binding_check include/config/kernel.release scripts_dtc > + $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@ $(dtstree)/$*.dt.yaml > > -%.dtbo: include/config/kernel.release scripts_dtc > - $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@ > +%.dtbo: dt_binding_check include/config/kernel.release scripts_dtc > + $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@ $(dtstree)/$*.dt.yaml > > PHONY += dtbs dtbs_install dtbs_check > dtbs: include/config/kernel.release scripts_dtc > $(Q)$(MAKE) $(build)=$(dtstree) > > -ifneq ($(filter dtbs_check, $(MAKECMDGOALS)),) > +ifneq ($(filter dtbs_check %.dtb %.dtbo, $(MAKECMDGOALS)),) > export CHECK_DTBS=y > dtbs: dt_binding_check > endif > -- > 2.30.2 > -- Best Regards Masahiro Yamada
diff --git a/Makefile b/Makefile index 7cfe4ff36f44..c57a7657c8dd 100644 --- a/Makefile +++ b/Makefile @@ -1402,17 +1402,17 @@ endif ifneq ($(dtstree),) -%.dtb: include/config/kernel.release scripts_dtc - $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@ +%.dtb: dt_binding_check include/config/kernel.release scripts_dtc + $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@ $(dtstree)/$*.dt.yaml -%.dtbo: include/config/kernel.release scripts_dtc - $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@ +%.dtbo: dt_binding_check include/config/kernel.release scripts_dtc + $(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@ $(dtstree)/$*.dt.yaml PHONY += dtbs dtbs_install dtbs_check dtbs: include/config/kernel.release scripts_dtc $(Q)$(MAKE) $(build)=$(dtstree) -ifneq ($(filter dtbs_check, $(MAKECMDGOALS)),) +ifneq ($(filter dtbs_check %.dtb %.dtbo, $(MAKECMDGOALS)),) export CHECK_DTBS=y dtbs: dt_binding_check endif
It is possible to build a single dtb, but not with DT schema validation enabled. Enable the schema validation to run for %.dtb and %.dtbo targets. Anyone building a dtb for a specific platform *should* pay attention to schema warnings. This could be supported with a separate %.dt.yaml target instead. However, the .dt.yaml format is considered an intermediate format and could possibly go away at some point if schema checking is integrated into dtc. Also, the plan is to enable the schema checks by default once platforms are free of warnings, and this is a move in that direction. Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Cc: Tom Rini <trini@konsulko.com> Cc: Masahiro Yamada <masahiroy@kernel.org> Cc: linux-kbuild@vger.kernel.org Signed-off-by: Rob Herring <robh@kernel.org> --- v2: - Also enable schema checks on %.dtbo targets --- Makefile | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) -- 2.30.2