On Wed, Mar 24, 2021 at 12:53 PM Vladimir Oltean <olteanv@xxxxxxxxx> wrote: > > On Wed, Mar 24, 2021 at 12:14:03PM -0600, Rob Herring wrote: > > On Tue, Mar 16, 2021 at 12:15:06PM +0200, Vladimir Oltean wrote: > > > On Tue, Mar 16, 2021 at 06:08:17AM +0000, Kuldeep Singh wrote: > > > > Compatible entries in conjugation require enum and const pair. > > > > For example, ls1012a.dtsi uses compatible = "fsl,ls1012a-dspi","fsl,ls1021a-v1.0-dspi"; > > > > Same goes for LS1028 as well. > > > > > > > > Therefore, can't mention the compatible entry as single entity otherwise > > > > it may fail "make dt_binding_check" and "make dtbs_check". > > > > > > > > > > > > > > > +examples: > > > > > > + - | > > > > > > + #include <dt-bindings/clock/fsl,qoriq-clockgen.h> > > > > > > + #include <dt-bindings/interrupt-controller/arm-gic.h> > > > > > > + > > > > > > + soc { > > > > > > + #address-cells = <2>; > > > > > > + #size-cells = <2>; > > > > > > + > > > > > > + spi@2100000 { > > > > > > + compatible = "fsl,ls1028a-dspi", "fsl,ls1021a-v1.0-dspi"; > > > > > > > > > > This doesn't need the "fsl,ls1021a-v1.0-dspi" compatible, can you please remove > > > > > it? > > > > > > > > I have taken this example from LS1028a.dtsi and it uses these compatibles in conjugation. > > > > If "fsl,ls1021a-v1.0-dspi" is not required, then it should also be removed from device-tree > > > > As well as from bindings both. > > > > > > Yes, the second compatible is never required by the driver and should be > > > removed from existing device trees if that makes "make dtbs_check" fail. > > > > Can you say that is true for every possible driver implementation? > > u-boot, *BSD, etc.? > > I don't think other systems are required to follow Linux conventions, so > I'm not sure why it matters. Not required, but other projects do in fact use both bindings and dts files. Bindings and dts files are stored in the kernel tree for convenience as that's where the most activity is, but they are not "Linux bindings" or "Linux DT" files. In addition, "fsl,ls1088a-dspi" is not known by the Linux driver, so a fallback is needed. Rob