RE: [EXT] Re: [PATCH] dt-bindings: spi: Convert Freescale DSPI to json schema

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

 



Hi Vladimir,

> -----Original Message-----
> From: Vladimir Oltean <olteanv@xxxxxxxxx>
> Sent: Tuesday, March 16, 2021 2:25 AM
> To: Kuldeep Singh <kuldeep.singh@xxxxxxx>
> Cc: linux-spi@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx; linux-
> kernel@xxxxxxxxxxxxxxx; Mark Brown <broonie@xxxxxxxxxx>; Rob Herring
> <robh+dt@xxxxxxxxxx>
> Subject: [EXT] Re: [PATCH] dt-bindings: spi: Convert Freescale DSPI to json schema
> 
> Caution: EXT Email
> 
> Hi Kuldeep,
> 
> On Mon, Mar 15, 2021 at 05:45:18PM +0530, Kuldeep Singh wrote:
> > Convert the Freescale DSPI binding to DT schema format using json-schema.
> >
> > Signed-off-by: Kuldeep Singh <kuldeep.singh@xxxxxxx>
> > ---
[...]
> > +
> > +allOf:
> > +  - $ref: "spi-controller.yaml#"
> > +
> > +properties:
> > +  compatible:
> > +    oneOf:
> > +      - enum:
> > +          - fsl,vf610-dspi
> > +          - fsl,ls1021a-v1.0-dspi
> > +          - fsl,ls1028a-dspi
> > +          - fsl,ls2085a-dspi
> > +          - fsl,lx2160a-dspi
> > +      - items:
> > +          - enum:
> > +              - fsl,ls1012a-dspi
> > +              - fsl,ls1028a-dspi
> > +              - fsl,ls1043a-dspi
> > +              - fsl,ls1046a-dspi
> > +              - fsl,ls1088a-dspi
> > +          - const: fsl,ls1021a-v1.0-dspi
> > +      - items:
> > +          - enum:
> > +              - fsl,ls2080a-dspi
> > +              - fsl,lx2160a-dspi
> > +          - const: fsl,ls2085a-dspi
> 
> Can this simply be:
>   compatible:
>     oneOf:
>       - enum:
>           - fsl,vf610-dspi
>           - fsl,ls1021a-v1.0-dspi
>           - fsl,ls1012a-dspi
>           - fsl,ls1028a-dspi
>           - fsl,ls1043a-dspi
>           - fsl,ls1046a-dspi
>           - fsl,ls1088a-dspi
>           - fsl,ls2080a-dspi
>           - fsl,ls2085a-dspi
>           - fsl,lx2160a-dspi
> ?

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.

> 
> > +            #address-cells = <1>;
> > +            #size-cells = <0>;
> > +            reg = <0x0 0x2100000 0x0 0x10000>;
> > +            interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
> > +            clock-names = "dspi";
> > +            clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
> QORIQ_CLK_PLL_DIV(2)>;
> > +            dmas = <&edma0 0 62>, <&edma0 0 60>;
> > +            dma-names = "tx", "rx";
> > +            spi-num-chipselects = <4>;
> > +            little-endian;
> > +
> > +            flash@0 {
> > +                compatible = "jedec,spi-nor";
> > +                spi-max-frequency = <10000000>;
> > +                reg = <0>;
> > +            };
> > +        };
> > +    };
> 
> (...)
> 
> > -Optional property:
> > -- big-endian: If present the dspi device's registers are implemented
> > -  in big endian mode.
> 
> I don't see "big-endian" being covered in any common yaml, could you please not
> delete it? The driver calls of_device_is_big_endian.

Thanks for mentioning.
Will consider this in next version after receiving feedback on other thread.

Regards
Kuldeep




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux