On Fri, Nov 20, 2020 at 06:21:55AM +0000, Alice Guo wrote:
> > > +  soc:
> > > +    type: object
> > > +    properties:
> > > +      compatible:
> > > +        oneOf:
> > > +          - description: new version DTS for i.MX8M SoCs
> > > +            items:
> > > +              - enum:
> > > +                  - fsl,imx8mm-soc
> > > +                  - fsl,imx8mn-soc
> > > +                  - fsl,imx8mp-soc
> > > +                  - fsl,imx8mq-soc
> > > +              - const: simple-bus
> > > +
> > > +          - description: other SoCs and old version DTS 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:
> > > +      - if:
> > > +          properties:
> > > +            compatible:
> > > +              contains:
> > > +                enum:
> > > +                  - fsl,imx8mm-soc
> > > +                  - fsl,imx8mn-soc
> > > +                  - fsl,imx8mp-soc
> > > +                  - fsl,imx8mq-soc
> > > +                const: simple-bus
> > > +
> > > +        then:
> > > +          required:
> > > +            - nvmem-cells
> > > +            - nvmem-cells-names
> > >
> > > The above is my modification. Is that ok?
> > 
> > Does not look like solving anything.
> 
> If restrict that the newly added DTS file must have "fsl,imx8mX-soc" 
> attributes, it cannot pass make dtbs_check because
> there are other DTS files which have soc node but are not used for i.mx8m 
> family SoCs.

You need to check whether boards with i.MX 8M compatible have the SoC
node with one of above compatibles and nvmem-cells.  Since the top
select choses root node, then just check whether child exists with
specific pattern and compatibles (for given root compatibles).

Best regards,
Krzysztof

Reply via email to