2020-11-16 16:05:59

by Krzysztof Kozlowski

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

On Mon, Nov 16, 2020 at 07:04:13AM +0000, Alice Guo wrote:
>
> > -----Original Message-----
> > From: Krzysztof Kozlowski <[email protected]>
> > Sent: 2020年11月15日 0:50
> > To: Alice Guo <[email protected]>
> > Cc: [email protected]; [email protected]; [email protected];
> > dl-linux-imx <[email protected]>; Peng Fan <[email protected]>;
> > [email protected]; [email protected];
> > [email protected]
> > Subject: [EXT] Re: [PATCH v3 1/4] dt-bindings: soc: imx8m: add DT Binding doc
> > for soc unique ID
> >
> > Caution: EXT Email
> >
> > On Fri, Nov 13, 2020 at 07:04:06PM +0800, Alice Guo wrote:
> > > Add DT Binding doc for the Unique ID of i.MX 8M series.
> > >
> > > Signed-off-by: Alice Guo <[email protected]>
> > > ---
> > > .../devicetree/bindings/arm/fsl.yaml | 25
> > +++++++++++++++++++
> > > 1 file changed, 25 insertions(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/arm/fsl.yaml
> > > b/Documentation/devicetree/bindings/arm/fsl.yaml
> > > index e4db0f9ed664..f4faebbb57da 100644
> > > --- a/Documentation/devicetree/bindings/arm/fsl.yaml
> > > +++ b/Documentation/devicetree/bindings/arm/fsl.yaml
> > > @@ -901,6 +901,31 @@ properties:
> > > - fsl,s32v234-evb # S32V234-EVB2 Customer
> > Evaluation Board
> > > - const: fsl,s32v234
> > >
> > > + soc:
> > > + type: object
> > > + properties:
> > > + compatible:
> > > + oneOf:
> > > + - description: i.MX8M SoCs
> > > + items:
> > > + - enum:
> > > + - fsl,imx8mm-soc
> > > + - fsl,imx8mn-soc
> > > + - fsl,imx8mp-soc
> > > + - fsl,imx8mq-soc
> > > + - const: simple-bus
> > > +
> > > + - description: Other 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
> > > +
> > > additionalProperties: true
> >
> > The "soc" node should be required for these compatibles. Otherwise you will
> > have to stay with this backwards-compatible-DTB-device-initcall-glue for many
> > years... I think you can achieve it with allOf.
> >
> [Alice Guo]Hi,
> I find that my description for compatible is ambiguous. There are two kinds of compatible of the "soc" node:
> 1. For dtsi files used for SoCs other than imx8m series SoCs and old version dtsi files used for imx8m series SoCs,
> compatible of the "soc" node is "simple-bus".
> 2. For new version dtsi files used for imx8m series SoCs, compatible of the "soc" node is {"fsl,imx8mX-soc","simple-bus"}.
>
> "nvmem-cell" is an optional property.
>
> I do not understand what you mean. You mean that limit the compatible of "soc" node must include " fsl,imx8mX-soc" in new version dts files. Is my understanding correct?

All new DTS files should have soc node with "fsl,imx8mX-soc" and this
should be required by dtschema. The nvmem-cells and related properties
do not look like optional. From the hardware perspective - they are
always present. From the driver point of view: they are required and
driver will fail to work.

Best regards,
Krzysztof


2020-11-17 07:14:31

by Alice Guo

[permalink] [raw]
Subject: RE: [EXT] Re: [PATCH v3 1/4] dt-bindings: soc: imx8m: add DT Binding doc for soc unique ID



> -----Original Message-----
> From: Krzysztof Kozlowski <[email protected]>
> Sent: 2020年11月17日 0:03
> To: Alice Guo <[email protected]>
> Cc: [email protected]; [email protected]; [email protected];
> dl-linux-imx <[email protected]>; Peng Fan <[email protected]>;
> [email protected]; [email protected];
> [email protected]
> Subject: Re: [EXT] Re: [PATCH v3 1/4] dt-bindings: soc: imx8m: add DT Binding
> doc for soc unique ID
>
> Caution: EXT Email
>
> On Mon, Nov 16, 2020 at 07:04:13AM +0000, Alice Guo wrote:
> >
> > > -----Original Message-----
> > > From: Krzysztof Kozlowski <[email protected]>
> > > Sent: 2020年11月15日 0:50
> > > To: Alice Guo <[email protected]>
> > > Cc: [email protected]; [email protected]; [email protected];
> > > dl-linux-imx <[email protected]>; Peng Fan <[email protected]>;
> > > [email protected]; [email protected];
> > > [email protected]
> > > Subject: [EXT] Re: [PATCH v3 1/4] dt-bindings: soc: imx8m: add DT
> > > Binding doc for soc unique ID
> > >
> > > Caution: EXT Email
> > >
> > > On Fri, Nov 13, 2020 at 07:04:06PM +0800, Alice Guo wrote:
> > > > Add DT Binding doc for the Unique ID of i.MX 8M series.
> > > >
> > > > Signed-off-by: Alice Guo <[email protected]>
> > > > ---
> > > > .../devicetree/bindings/arm/fsl.yaml | 25
> > > +++++++++++++++++++
> > > > 1 file changed, 25 insertions(+)
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/arm/fsl.yaml
> > > > b/Documentation/devicetree/bindings/arm/fsl.yaml
> > > > index e4db0f9ed664..f4faebbb57da 100644
> > > > --- a/Documentation/devicetree/bindings/arm/fsl.yaml
> > > > +++ b/Documentation/devicetree/bindings/arm/fsl.yaml
> > > > @@ -901,6 +901,31 @@ properties:
> > > > - fsl,s32v234-evb # S32V234-EVB2
> Customer
> > > Evaluation Board
> > > > - const: fsl,s32v234
> > > >
> > > > + soc:
> > > > + type: object
> > > > + properties:
> > > > + compatible:
> > > > + oneOf:
> > > > + - description: i.MX8M SoCs
> > > > + items:
> > > > + - enum:
> > > > + - fsl,imx8mm-soc
> > > > + - fsl,imx8mn-soc
> > > > + - fsl,imx8mp-soc
> > > > + - fsl,imx8mq-soc
> > > > + - const: simple-bus
> > > > +
> > > > + - description: Other 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
> > > > +
> > > > additionalProperties: true
> > >
> > > The "soc" node should be required for these compatibles. Otherwise
> > > you will have to stay with this
> > > backwards-compatible-DTB-device-initcall-glue for many years... I think you
> can achieve it with allOf.
> > >
> > [Alice Guo]Hi,
> > I find that my description for compatible is ambiguous. There are two kinds of
> compatible of the "soc" node:
> > 1. For dtsi files used for SoCs other than imx8m series SoCs and old
> > version dtsi files used for imx8m series SoCs, compatible of the "soc" node is
> "simple-bus".
> > 2. For new version dtsi files used for imx8m series SoCs, compatible of the
> "soc" node is {"fsl,imx8mX-soc","simple-bus"}.
> >
> > "nvmem-cell" is an optional property.
> >
> > I do not understand what you mean. You mean that limit the compatible of
> "soc" node must include " fsl,imx8mX-soc" in new version dts files. Is my
> understanding correct?
>
> All new DTS files should have soc node with "fsl,imx8mX-soc" and this should be
> required by dtschema. The nvmem-cells and related properties do not look like
> optional. From the hardware perspective - they are always present. From the
> driver point of view: they are required and driver will fail to work.

[Alice Guo]
[Alice Guo]
+ 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?

Best regards,
Alice
> Best regards,
> Krzysztof