diff mbox series

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

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

Checks

Context Check Description
robh/checkpatch success
robh/dt-meta-schema fail build log

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>;