diff mbox series

[1/2] dt-bindings/phy: ingenic: Add compatibles for JZ4760(B) SoCs

Message ID 20210120115945.29046-1-paul@crapouillou.net
State Superseded
Headers show
Series [1/2] dt-bindings/phy: ingenic: Add compatibles for JZ4760(B) SoCs | expand

Commit Message

Paul Cercueil Jan. 20, 2021, 11:59 a.m. UTC
Add the ingenic,jz4760-phy and ingenic,jz4760b-phy compatible strings,
and make the ingenic,jz4770-phy compatible string require
ingenic,jz4760-phy as a fallback, since both work the same, and the
JZ4760 SoC is older.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
---
 .../bindings/phy/ingenic,phy-usb.yaml         | 22 ++++++++++++-------
 1 file changed, 14 insertions(+), 8 deletions(-)

Comments

Rob Herring (Arm) Jan. 21, 2021, 4:01 p.m. UTC | #1
On Wed, 20 Jan 2021 11:59:44 +0000, Paul Cercueil wrote:
> Add the ingenic,jz4760-phy and ingenic,jz4760b-phy compatible strings,

> and make the ingenic,jz4770-phy compatible string require

> ingenic,jz4760-phy as a fallback, since both work the same, and the

> JZ4760 SoC is older.

> 

> Signed-off-by: Paul Cercueil <paul@crapouillou.net>

> ---

>  .../bindings/phy/ingenic,phy-usb.yaml         | 22 ++++++++++++-------

>  1 file changed, 14 insertions(+), 8 deletions(-)

> 


My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:
./Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml:20:9: [warning] wrong indentation: expected 10 but found 8 (indentation)
./Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml:27:9: [warning] wrong indentation: expected 10 but found 8 (indentation)
./Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml:28:11: [warning] wrong indentation: expected 12 but found 10 (indentation)

dtschema/dtc warnings/errors:
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/clock/ingenic,cgu.example.dt.yaml: clock-controller@10000000: usb-phy@3c:compatible: 'oneOf' conditional failed, one must be fixed:
	['ingenic,jz4770-phy'] is too short
	'ingenic,jz4770-phy' is not one of ['ingenic,jz4760-phy', 'ingenic,jz4775-phy', 'ingenic,jz4780-phy', 'ingenic,x1000-phy', 'ingenic,x1830-phy', 'ingenic,x2000-phy']
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/clock/ingenic,cgu.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/clock/ingenic,cgu.example.dt.yaml: usb-phy@3c: compatible: 'oneOf' conditional failed, one must be fixed:
	['ingenic,jz4770-phy'] is too short
	'ingenic,jz4770-phy' is not one of ['ingenic,jz4760-phy', 'ingenic,jz4775-phy', 'ingenic,jz4780-phy', 'ingenic,x1000-phy', 'ingenic,x1830-phy', 'ingenic,x2000-phy']
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml

See https://patchwork.ozlabs.org/patch/1429154

This check can fail if there are any dependencies. The base for a patch
series is generally the most recent rc1.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit.
Paul Cercueil Jan. 21, 2021, 9:35 p.m. UTC | #2
Hi Rob,

Le jeu. 21 janv. 2021 à 10:01, Rob Herring <robh@kernel.org> a écrit :
> On Wed, 20 Jan 2021 11:59:44 +0000, Paul Cercueil wrote:

>>  Add the ingenic,jz4760-phy and ingenic,jz4760b-phy compatible 

>> strings,

>>  and make the ingenic,jz4770-phy compatible string require

>>  ingenic,jz4760-phy as a fallback, since both work the same, and the

>>  JZ4760 SoC is older.

>> 

>>  Signed-off-by: Paul Cercueil <paul@crapouillou.net>

>>  ---

>>   .../bindings/phy/ingenic,phy-usb.yaml         | 22 

>> ++++++++++++-------

>>   1 file changed, 14 insertions(+), 8 deletions(-)

>> 

> 

> My bot found errors running 'make dt_binding_check' on your patch:

> 

> yamllint warnings/errors:

> ./Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml:20:9: 

> [warning] wrong indentation: expected 10 but found 8 (indentation)

> ./Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml:27:9: 

> [warning] wrong indentation: expected 10 but found 8 (indentation)

> ./Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml:28:11: 

> [warning] wrong indentation: expected 12 but found 10 (indentation)


I can reproduce, however the indentation in the DTS looks awfully 
correct to me. Could you tell me what it is doing wrong?

Cheers,
-Paul

> dtschema/dtc warnings/errors:

> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/clock/ingenic,cgu.example.dt.yaml: 

> clock-controller@10000000: usb-phy@3c:compatible: 'oneOf' conditional 

> failed, one must be fixed:

> 	['ingenic,jz4770-phy'] is too short

> 	'ingenic,jz4770-phy' is not one of ['ingenic,jz4760-phy', 

> 'ingenic,jz4775-phy', 'ingenic,jz4780-phy', 'ingenic,x1000-phy', 

> 'ingenic,x1830-phy', 'ingenic,x2000-phy']

> 	From schema: 

> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/clock/ingenic,cgu.yaml

> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/clock/ingenic,cgu.example.dt.yaml: 

> usb-phy@3c: compatible: 'oneOf' conditional failed, one must be fixed:

> 	['ingenic,jz4770-phy'] is too short

> 	'ingenic,jz4770-phy' is not one of ['ingenic,jz4760-phy', 

> 'ingenic,jz4775-phy', 'ingenic,jz4780-phy', 'ingenic,x1000-phy', 

> 'ingenic,x1830-phy', 'ingenic,x2000-phy']

> 	From schema: 

> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml

> 

> See https://patchwork.ozlabs.org/patch/1429154

> 

> This check can fail if there are any dependencies. The base for a 

> patch

> series is generally the most recent rc1.

> 

> If you already ran 'make dt_binding_check' and didn't see the above

> error(s), then make sure 'yamllint' is installed and dt-schema is up 

> to

> date:

> 

> pip3 install dtschema --upgrade

> 

> Please check and re-submit.

>
Rob Herring Jan. 22, 2021, 2:35 p.m. UTC | #3
On Wed, Jan 20, 2021 at 5:59 AM Paul Cercueil <paul@crapouillou.net> wrote:
>

> Add the ingenic,jz4760-phy and ingenic,jz4760b-phy compatible strings,

> and make the ingenic,jz4770-phy compatible string require

> ingenic,jz4760-phy as a fallback, since both work the same, and the

> JZ4760 SoC is older.

>

> Signed-off-by: Paul Cercueil <paul@crapouillou.net>

> ---

>  .../bindings/phy/ingenic,phy-usb.yaml         | 22 ++++++++++++-------

>  1 file changed, 14 insertions(+), 8 deletions(-)

>

> diff --git a/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml b/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml

> index 0fd93d71fe5a..3c65dfcf352b 100644

> --- a/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml

> +++ b/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml

> @@ -15,13 +15,19 @@ properties:

>      pattern: '^usb-phy@.*'

>

>    compatible:

> -    enum:

> -      - ingenic,jz4770-phy

> -      - ingenic,jz4775-phy

> -      - ingenic,jz4780-phy

> -      - ingenic,x1000-phy

> -      - ingenic,x1830-phy

> -      - ingenic,x2000-phy

> +    oneOf:

> +      - enum:

> +        - ingenic,jz4760-phy


This should be 2 more spaces indentation. Indent is always 2 more than
the above keyword and ignores '-'.

> +        - ingenic,jz4775-phy

> +        - ingenic,jz4780-phy

> +        - ingenic,x1000-phy

> +        - ingenic,x1830-phy

> +        - ingenic,x2000-phy

> +      - items:

> +        - enum:

> +          - ingenic,jz4760b-phy

> +          - ingenic,jz4770-phy

> +        - const: ingenic,jz4760-phy

>

>    reg:

>      maxItems: 1

> @@ -48,7 +54,7 @@ examples:

>    - |

>      #include <dt-bindings/clock/jz4770-cgu.h>

>      otg_phy: usb-phy@3c {

> -      compatible = "ingenic,jz4770-phy";

> +      compatible = "ingenic,jz4770-phy", "ingenic,jz4760-phy";

>        reg = <0x3c 0x10>;

>

>        vcc-supply = <&vcc>;

> --

> 2.29.2

>
Paul Cercueil Jan. 22, 2021, 2:42 p.m. UTC | #4
Hi Rob,

Le ven. 22 janv. 2021 à 8:35, Rob Herring <robh+dt@kernel.org> a 
écrit :
> On Wed, Jan 20, 2021 at 5:59 AM Paul Cercueil <paul@crapouillou.net> 

> wrote:

>> 

>>  Add the ingenic,jz4760-phy and ingenic,jz4760b-phy compatible 

>> strings,

>>  and make the ingenic,jz4770-phy compatible string require

>>  ingenic,jz4760-phy as a fallback, since both work the same, and the

>>  JZ4760 SoC is older.

>> 

>>  Signed-off-by: Paul Cercueil <paul@crapouillou.net>

>>  ---

>>   .../bindings/phy/ingenic,phy-usb.yaml         | 22 

>> ++++++++++++-------

>>   1 file changed, 14 insertions(+), 8 deletions(-)

>> 

>>  diff --git 

>> a/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml 

>> b/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml

>>  index 0fd93d71fe5a..3c65dfcf352b 100644

>>  --- a/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml

>>  +++ b/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml

>>  @@ -15,13 +15,19 @@ properties:

>>       pattern: '^usb-phy@.*'

>> 

>>     compatible:

>>  -    enum:

>>  -      - ingenic,jz4770-phy

>>  -      - ingenic,jz4775-phy

>>  -      - ingenic,jz4780-phy

>>  -      - ingenic,x1000-phy

>>  -      - ingenic,x1830-phy

>>  -      - ingenic,x2000-phy

>>  +    oneOf:

>>  +      - enum:

>>  +        - ingenic,jz4760-phy

> 

> This should be 2 more spaces indentation. Indent is always 2 more than

> the above keyword and ignores '-'.


Pretty confusing. But alright.

Cheers,
-Paul

>>  +        - ingenic,jz4775-phy

>>  +        - ingenic,jz4780-phy

>>  +        - ingenic,x1000-phy

>>  +        - ingenic,x1830-phy

>>  +        - ingenic,x2000-phy

>>  +      - items:

>>  +        - enum:

>>  +          - ingenic,jz4760b-phy

>>  +          - ingenic,jz4770-phy

>>  +        - const: ingenic,jz4760-phy

>> 

>>     reg:

>>       maxItems: 1

>>  @@ -48,7 +54,7 @@ examples:

>>     - |

>>       #include <dt-bindings/clock/jz4770-cgu.h>

>>       otg_phy: usb-phy@3c {

>>  -      compatible = "ingenic,jz4770-phy";

>>  +      compatible = "ingenic,jz4770-phy", "ingenic,jz4760-phy";

>>         reg = <0x3c 0x10>;

>> 

>>         vcc-supply = <&vcc>;

>>  --

>>  2.29.2

>>
Rob Herring (Arm) Jan. 22, 2021, 4:06 p.m. UTC | #5
On Fri, Jan 22, 2021 at 02:42:28PM +0000, Paul Cercueil wrote:
> Hi Rob,

> 

> Le ven. 22 janv. 2021 à 8:35, Rob Herring <robh+dt@kernel.org> a écrit :

> > On Wed, Jan 20, 2021 at 5:59 AM Paul Cercueil <paul@crapouillou.net>

> > wrote:

> > > 

> > >  Add the ingenic,jz4760-phy and ingenic,jz4760b-phy compatible

> > > strings,

> > >  and make the ingenic,jz4770-phy compatible string require

> > >  ingenic,jz4760-phy as a fallback, since both work the same, and the

> > >  JZ4760 SoC is older.

> > > 

> > >  Signed-off-by: Paul Cercueil <paul@crapouillou.net>

> > >  ---

> > >   .../bindings/phy/ingenic,phy-usb.yaml         | 22

> > > ++++++++++++-------

> > >   1 file changed, 14 insertions(+), 8 deletions(-)

> > > 

> > >  diff --git

> > > a/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml

> > > b/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml

> > >  index 0fd93d71fe5a..3c65dfcf352b 100644

> > >  --- a/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml

> > >  +++ b/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml

> > >  @@ -15,13 +15,19 @@ properties:

> > >       pattern: '^usb-phy@.*'

> > > 

> > >     compatible:

> > >  -    enum:

> > >  -      - ingenic,jz4770-phy

> > >  -      - ingenic,jz4775-phy

> > >  -      - ingenic,jz4780-phy

> > >  -      - ingenic,x1000-phy

> > >  -      - ingenic,x1830-phy

> > >  -      - ingenic,x2000-phy

> > >  +    oneOf:

> > >  +      - enum:

> > >  +        - ingenic,jz4760-phy

> > 

> > This should be 2 more spaces indentation. Indent is always 2 more than

> > the above keyword and ignores '-'.

> 

> Pretty confusing. But alright.


TBC, either way is functional and these are the 2 main styles, so we 
picked one. In some sequences, it's easy to miss a '-' where a space 
would also be valid. For example:

items:
- items:
    enum: ...

vs:

items:
  items:
    enum: ...

Both are valid (as items can be a list or sub-schema).

Rob
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml b/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml
index 0fd93d71fe5a..3c65dfcf352b 100644
--- a/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml
+++ b/Documentation/devicetree/bindings/phy/ingenic,phy-usb.yaml
@@ -15,13 +15,19 @@  properties:
     pattern: '^usb-phy@.*'
 
   compatible:
-    enum:
-      - ingenic,jz4770-phy
-      - ingenic,jz4775-phy
-      - ingenic,jz4780-phy
-      - ingenic,x1000-phy
-      - ingenic,x1830-phy
-      - ingenic,x2000-phy
+    oneOf:
+      - enum:
+        - ingenic,jz4760-phy
+        - ingenic,jz4775-phy
+        - ingenic,jz4780-phy
+        - ingenic,x1000-phy
+        - ingenic,x1830-phy
+        - ingenic,x2000-phy
+      - items:
+        - enum:
+          - ingenic,jz4760b-phy
+          - ingenic,jz4770-phy
+        - const: ingenic,jz4760-phy
 
   reg:
     maxItems: 1
@@ -48,7 +54,7 @@  examples:
   - |
     #include <dt-bindings/clock/jz4770-cgu.h>
     otg_phy: usb-phy@3c {
-      compatible = "ingenic,jz4770-phy";
+      compatible = "ingenic,jz4770-phy", "ingenic,jz4760-phy";
       reg = <0x3c 0x10>;
 
       vcc-supply = <&vcc>;