Re: [PATCH] kbuild: verify dtoverlay files against schema

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, May 28, 2024 at 10:16 PM Dmitry Baryshkov
<dmitry.baryshkov@xxxxxxxxxx> wrote:
>
> On Tue, 28 May 2024 at 16:15, Rob Herring <robh@xxxxxxxxxx> wrote:
> >
> > On Mon, May 27, 2024 at 6:34 AM Dmitry Baryshkov
> > <dmitry.baryshkov@xxxxxxxxxx> wrote:
> > >
> > > Currently only the single part device trees are validated against DT
> > > schema. For the multipart schema files only the first file is validated.
> >
> > What do you mean by multipart schema files? Did you mean multipart DTs
> > (i.e. base plus overlays)?
>
> Yes, multipart DT files, dts + dtso => dtb + dtbo => final dtb
>
> >
> > Looks good otherwise and I can fix that up.
>
> Awesome, thanks!




This looks equivalent to the former patch rejected by Rob Herring:

https://lore.kernel.org/lkml/20240225151209.343160-1-alexander.stein@xxxxxxxxxxx/



Did he change his mind since then?









> >
> > > Extend the fdtoverlay commands to validate the resulting DTB file
> > > against schema.
> > >
> > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>
> > > ---
> > >  scripts/Makefile.lib | 9 ++++++++-
> > >  1 file changed, 8 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
> > > index 9f06f6aaf7fc..29da0dc9776d 100644
> > > --- a/scripts/Makefile.lib
> > > +++ b/scripts/Makefile.lib
> > > @@ -407,8 +407,15 @@ cmd_dtc = $(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ;
> > >                 -d $(depfile).dtc.tmp $(dtc-tmp) ; \
> > >         cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile)
> > >
> > > +DT_CHECK_CMD = $(DT_CHECKER) $(DT_CHECKER_FLAGS) -u $(srctree)/$(DT_BINDING_DIR) -p $(DT_TMP_SCHEMA)
> > > +
> > > +ifneq ($(CHECK_DTBS),)
> > > +quiet_cmd_fdtoverlay = DTOVLCH $@
> > > +      cmd_fdtoverlay = $(objtree)/scripts/dtc/fdtoverlay -o $@ -i $(real-prereqs) ; $(DT_CHECK_CMD) $@ || true
> > > +else
> > >  quiet_cmd_fdtoverlay = DTOVL   $@
> > >        cmd_fdtoverlay = $(objtree)/scripts/dtc/fdtoverlay -o $@ -i $(real-prereqs)
> > > +endif
> > >
> > >  $(multi-dtb-y): FORCE
> > >         $(call if_changed,fdtoverlay)
> > > @@ -421,7 +428,7 @@ DT_BINDING_DIR := Documentation/devicetree/bindings
> > >  DT_TMP_SCHEMA := $(objtree)/$(DT_BINDING_DIR)/processed-schema.json
> > >
> > >  quiet_cmd_dtb =        DTC_CHK $@
> > > -      cmd_dtb =        $(cmd_dtc) ; $(DT_CHECKER) $(DT_CHECKER_FLAGS) -u $(srctree)/$(DT_BINDING_DIR) -p $(DT_TMP_SCHEMA) $@ || true
> > > +      cmd_dtb =        $(cmd_dtc) ; $(DT_CHECK_CMD) $@ || true
> > >  else
> > >  quiet_cmd_dtb = $(quiet_cmd_dtc)
> > >        cmd_dtb = $(cmd_dtc)
> > >
> > > ---
> > > base-commit: 8314289a8d50a4e05d8ece1ae0445a3b57bb4d3b
> > > change-id: 20240527-dtbo-check-schema-4f695cb98de5
> > >
> > > Best regards,
> > > --
> > > Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>
> > >
>
>
>
> --
> With best wishes
> Dmitry



--
Best Regards
Masahiro Yamada





[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux