[EXT] Re: [PATCH v4 1/4] dt-bindings: soc: imx8m: add DT Binding doc for soc unique ID

Alice Guo alice.guo at nxp.com
Sun Nov 22 23:45:13 EST 2020



> -----Original Message-----
> From: Krzysztof Kozlowski <krzk at kernel.org>
> Sent: 2020年11月20日 18:51
> To: Alice Guo <alice.guo at nxp.com>
> Cc: robh+dt at kernel.org; shawnguo at kernel.org; s.hauer at pengutronix.de;
> dl-linux-imx <linux-imx at nxp.com>; Peng Fan <peng.fan at nxp.com>;
> devicetree at vger.kernel.org; linux-kernel at vger.kernel.org;
> linux-arm-kernel at lists.infradead.org
> Subject: [EXT] Re: [PATCH v4 1/4] dt-bindings: soc: imx8m: add DT Binding doc
> for soc unique ID
> 
> Caution: EXT Email
> 
> On Fri, Nov 20, 2020 at 06:11:09PM +0800, Alice Guo wrote:
> > Add DT Binding doc for the Unique ID of i.MX 8M series.
> >
> > v2: remove the subject prefix "LF-2571-1"
> > v3: put it into Documentation/devicetree/bindings/arm/fsl.yaml
> >     modify the description of nvmem-cells
> >     use "make ARCH=arm64 dtbs_check" to test it and fix errors
> > v4: use allOf to limit new version DTS files for i.MX8M to include
> >     "fsl,imx8mm/n/p/q-soc", nvmem-cells and nvmem-cells-names
> >
> > Signed-off-by: Alice Guo <alice.guo at nxp.com>
> > ---
> >  .../devicetree/bindings/arm/fsl.yaml          | 51
> +++++++++++++++++++
> >  1 file changed, 51 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/arm/fsl.yaml
> > b/Documentation/devicetree/bindings/arm/fsl.yaml
> > index 67980dcef66d..d8048323a290 100644
> > --- a/Documentation/devicetree/bindings/arm/fsl.yaml
> > +++ b/Documentation/devicetree/bindings/arm/fsl.yaml
> > @@ -918,6 +918,57 @@ properties:
> >                - fsl,s32v234-evb           # S32V234-EVB2 Customer
> Evaluation Board
> >            - const: fsl,s32v234
> >
> > +  soc:
> > +    type: object
> > +    properties:
> > +      compatible:
> > +        oneOf:
> > +          - description: new version compatible for i.MX8M SoCs
> > +            items:
> > +              - enum:
> > +                  - fsl,imx8mm-soc
> > +                  - fsl,imx8mn-soc
> > +                  - fsl,imx8mp-soc
> > +                  - fsl,imx8mq-soc
> > +              - const: simple-bus
> > +
> > +          - description: old version compatible for i.MX8M SoCs
> > +            items:
> > +              - const: simple-bus
> > +
> > +      nvmem-cells:
> > +        maxItems: 1
> > +        description: Phandle to the SOC Unique ID provided by a nvmem
> > + node
> > +
> > +      nvmem-cells-names:
> > +        const: soc_unique_id
> > +
> > +    allOf:
> 
> Nothing changed here comparing to previous version. Still does not work.
> 
> The allOf should not be part of soc node because the "if" below won't match.
> Instead, it should be against root node.
> 
> Best regards,
> Krzysztof

I'm sorry to disturb you. I don't very clear about the grammar rules of yaml, so don't know how to make allOf be part of root node.
If allof is part of root node, how does it specify the soc node? The following is my change which is definitely wrong.
  soc:
    properties:
      compatible:
        - description: new version compatible for i.MX8M SoCs
          items:
            - enum:
                - fsl,imx8mm-soc
                - fsl,imx8mn-soc
                - fsl,imx8mp-soc
                - fsl,imx8mq-soc
            - const: simple-bus

      nvmem-cells:
        maxItems: 1
        description: Phandle to the SOC Unique ID provided by a nvmem node

      nvmem-cells-names:
        const: soc_unique_id

allOf:
  - if:
      properties:
        compatible:
          contains:
            enum:
              - fsl,imx8mm
              - fsl,imx8mn
              - fsl,imx8mp
              - fsl,imx8mq

      then:
        required:
          - soc

Please give me suggestion. Thank you.
Best regards,
Alice Guo

> > +      - if:
> > +          properties:
> > +            compatible:
> > +              contains:
> > +                enum:
> > +                  - fsl,imx8mm
> > +                  - fsl,imx8mn
> > +                  - fsl,imx8mp
> > +                  - fsl,imx8mq
> > +
> > +        then:
> > +          properties:
> > +            compatible:
> > +              items:
> > +                - enum:
> > +                    - fsl,imx8mm-soc
> > +                    - fsl,imx8mn-soc
> > +                    - fsl,imx8mp-soc
> > +                    - fsl,imx8mq-soc
> > +                - const: simple-bus
> > +
> > +          required:
> > +            - nvmem-cells
> > +            - nvmem-cells-names
> > +
> >  additionalProperties: true
> >
> >  ...
> > --
> > 2.17.1
> >


More information about the linux-arm-kernel mailing list