Re: [PATCH net-next v2 01/11] dt-bindings: net: dsa: convert ksz bindings document to yaml

2020-11-16 Thread Christian Eggers
On Monday, 16 November 2020, 15:37:20 CET, Rob Herring wrote:
> On Thu, 12 Nov 2020 16:35:27 +0100, Christian Eggers wrote:
> > Convert the bindings document for Microchip KSZ Series Ethernet switches
> > from txt to yaml.
> > 
> > Signed-off-by: Christian Eggers 
> > ---
> > 
> >  .../devicetree/bindings/net/dsa/ksz.txt   | 125 ---
> >  .../bindings/net/dsa/microchip,ksz.yaml   | 150 ++
> >  MAINTAINERS   |   2 +-
> >  3 files changed, 151 insertions(+), 126 deletions(-)
> >  delete mode 100644 Documentation/devicetree/bindings/net/dsa/ksz.txt
> >  create mode 100644
> >  Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
> My bot found errors running 'make dt_binding_check' on your patch:
> 
> yamllint warnings/errors:
> 
> dtschema/dtc warnings/errors:
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/net/dsa
> /microchip,ksz.yaml: 'oneOf' conditional failed, one must be fixed:
> 'unevaluatedProperties' is a required property
>   'additionalProperties' is a required property
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/net/dsa
> /microchip,ksz.yaml: ignoring, error in schema: warning: no schema found in
> file: ./Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
> 
> 
> See https://patchwork.ozlabs.org/patch/1399036
> 
> The base for the patch is generally the last rc1. Any dependencies
> should be noted.
> 
> 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.

with the latest dtschema I get further warnings:

/home/.../build-net-next/Documentation/devicetree/bindings/net/dsa/microchip,ksz.example.dt.yaml:
 switch@0: 'ethernet-ports', 'reg', 'spi-cpha', 'spi-cpol', 'spi-max-frequency' 
do not match any of the regexes: 'pinctrl-[0-9]+'
From schema: 
/home/.../Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
/home/.../build-net-next/Documentation/devicetree/bindings/net/dsa/microchip,ksz.example.dt.yaml:
 switch@1: 'ethernet-ports', 'reg', 'spi-cpha', 'spi-cpol', 'spi-max-frequency' 
do not match any of the regexes: 'pinctrl-[0-9]+'
From schema: 
/home/.../Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml

Which schema requires the regex 'pinctrl-[0-9]+'? I have tried to add pinctrl-0
properties to the switch@0 and switch@1 nodes, but that didn't help.

Current version of microchip,ksz.yaml is below.

regards
Christian


# SPDX-License-Identifier: GPL-2.0-only
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/dsa/microchip,ksz.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Microchip KSZ Series Ethernet switches

allOf:
  - $ref: dsa.yaml#

maintainers:
  - Marek Vasut 
  - Woojung Huh 

properties:
  # See Documentation/devicetree/bindings/net/dsa/dsa.yaml for a list of 
additional
  # required and optional properties.
  compatible:
enum:
  - microchip,ksz8765
  - microchip,ksz8794
  - microchip,ksz8795
  - microchip,ksz9477
  - microchip,ksz9897
  - microchip,ksz9896
  - microchip,ksz9567
  - microchip,ksz8565
  - microchip,ksz9893
  - microchip,ksz9563
  - microchip,ksz8563

  reset-gpios:
description:
  Should be a gpio specifier for a reset line.
maxItems: 1

  interrupts:
description:
  Interrupt specifier for the INTRP_N line from the device.
maxItems: 1

  microchip,synclko-125:
$ref: /schemas/types.yaml#/definitions/flag
description:
  Set if the output SYNCLKO frequency should be set to 125MHz instead of 
25MHz.

required:
  - compatible
  - reg

additionalProperties: false

examples:
  - |
#include 
#include 

// Ethernet switch connected via SPI to the host, CPU port wired to eth0:
eth0 {
fixed-link {
speed = <1000>;
full-duplex;
};
};

spi0 {
#address-cells = <1>;
#size-cells = <0>;

pinctrl-0 = <_spi_ksz>;
cs-gpios = < 25 0>;
id = <1>;

ksz9477: switch@0 {
compatible = "microchip,ksz9477";
reg = <0>;
reset-gpios = < 0 GPIO_ACTIVE_LOW>;
interrupts-extended = < 1 IRQ_TYPE_LEVEL_LOW>;  /* INTRP_N 
line */

spi-max-frequency = <4400>;
spi-cpha;
spi-cpol;

ethernet-ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
label = "lan1";
};
port@1 {
reg = <1>;
label = "lan2";
};
port@2 {
reg = <2>;
label = "lan3";
};
port@3 {
reg = <3>;
   

Re: [PATCH net-next v2 01/11] dt-bindings: net: dsa: convert ksz bindings document to yaml

2020-11-16 Thread Rob Herring
On Thu, Nov 12, 2020 at 04:35:27PM +0100, Christian Eggers wrote:
> Convert the bindings document for Microchip KSZ Series Ethernet switches
> from txt to yaml.
> 
> Signed-off-by: Christian Eggers 
> ---
>  .../devicetree/bindings/net/dsa/ksz.txt   | 125 ---
>  .../bindings/net/dsa/microchip,ksz.yaml   | 150 ++
>  MAINTAINERS   |   2 +-
>  3 files changed, 151 insertions(+), 126 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/net/dsa/ksz.txt
>  create mode 100644 
> Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml

[...]

> diff --git a/Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml 
> b/Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
> new file mode 100644
> index ..431ca5c498a8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
> @@ -0,0 +1,150 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/net/dsa/microchip,ksz.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Microchip KSZ Series Ethernet switches
> +
> +allOf:
> +  - $ref: dsa.yaml#
> +
> +maintainers:
> +  - Marek Vasut 
> +  - Woojung Huh 
> +
> +properties:
> +  # See Documentation/devicetree/bindings/net/dsa/dsa.yaml for a list of 
> additional
> +  # required and optional properties.
> +  compatible:
> +enum:
> +  - "microchip,ksz8765"
> +  - "microchip,ksz8794"
> +  - "microchip,ksz8795"
> +  - "microchip,ksz9477"
> +  - "microchip,ksz9897"
> +  - "microchip,ksz9896"
> +  - "microchip,ksz9567"
> +  - "microchip,ksz8565"
> +  - "microchip,ksz9893"
> +  - "microchip,ksz9563"
> +  - "microchip,ksz8563"

Don't need quotes.

> +
> +  reset-gpios:
> +description:
> +  Should be a gpio specifier for a reset line.
> +maxItems: 1
> +
> +  microchip,synclko-125:
> +$ref: /schemas/types.yaml#/definitions/flag
> +description:
> +  Set if the output SYNCLKO frequency should be set to 125MHz instead of 
> 25MHz.
> +
> +required:
> +  - compatible
> +  - reg
> +
> +examples:
> +  - |
> +#include 
> +
> +// Ethernet switch connected via SPI to the host, CPU port wired to eth0:
> +eth0 {
> +fixed-link {
> +speed = <1000>;
> +full-duplex;
> +};
> +};
> +
> +spi0 {
> +#address-cells = <1>;
> +#size-cells = <0>;
> +
> +pinctrl-0 = <_spi_ksz>;
> +cs-gpios = < 25 0>;
> +id = <1>;
> +
> +ksz9477: switch@0 {
> +compatible = "microchip,ksz9477";
> +reg = <0>;
> +reset-gpios = < 0 GPIO_ACTIVE_LOW>;
> +
> +spi-max-frequency = <4400>;
> +spi-cpha;
> +spi-cpol;
> +
> +ethernet-ports {
> +#address-cells = <1>;
> +#size-cells = <0>;
> +port@0 {
> +reg = <0>;
> +label = "lan1";
> +};
> +port@1 {
> +reg = <1>;
> +label = "lan2";
> +};
> +port@2 {
> +reg = <2>;
> +label = "lan3";
> +};
> +port@3 {
> +reg = <3>;
> +label = "lan4";
> +};
> +port@4 {
> +reg = <4>;
> +label = "lan5";
> +};
> +port@5 {
> +reg = <5>;
> +label = "cpu";
> +ethernet = <>;
> +fixed-link {
> +speed = <1000>;
> +full-duplex;
> +};
> +};
> +};
> +};
> +
> +ksz8565: switch@1 {
> +compatible = "microchip,ksz8565";
> +reg = <1>;
> +
> +spi-max-frequency = <4400>;
> +spi-cpha;
> +spi-cpol;
> +
> +ethernet-ports {
> +#address-cells = <1>;
> +#size-cells = <0>;
> +port@0 {
> +reg = <0>;
> +label = "lan1";
> +};
> +port@1 {
> +reg = <1>;
> +label = "lan2";
> +};
> +port@2 {
> +reg = <2>;
> +label = "lan3";
> +};
> +port@3 {
> +reg = <3>;
> +label = "lan4";
> +};
> +port@6 {
> +reg = <6>;
> +label = "cpu";
> +ethernet = <>;
> +fixed-link {
> +speed = <1000>;
> +

Re: [PATCH net-next v2 01/11] dt-bindings: net: dsa: convert ksz bindings document to yaml

2020-11-16 Thread Rob Herring
On Thu, 12 Nov 2020 16:35:27 +0100, Christian Eggers wrote:
> Convert the bindings document for Microchip KSZ Series Ethernet switches
> from txt to yaml.
> 
> Signed-off-by: Christian Eggers 
> ---
>  .../devicetree/bindings/net/dsa/ksz.txt   | 125 ---
>  .../bindings/net/dsa/microchip,ksz.yaml   | 150 ++
>  MAINTAINERS   |   2 +-
>  3 files changed, 151 insertions(+), 126 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/net/dsa/ksz.txt
>  create mode 100644 
> Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
> 


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

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml:
 'oneOf' conditional failed, one must be fixed:
'unevaluatedProperties' is a required property
'additionalProperties' is a required property
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml:
 ignoring, error in schema: 
warning: no schema found in file: 
./Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml


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

The base for the patch is generally the last rc1. Any dependencies
should be noted.

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.



Re: [PATCH net-next v2 01/11] dt-bindings: net: dsa: convert ksz bindings document to yaml

2020-11-12 Thread Vladimir Oltean
On Thu, Nov 12, 2020 at 04:35:27PM +0100, Christian Eggers wrote:
> diff --git a/Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml 
> b/Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
> new file mode 100644
> index ..431ca5c498a8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
> @@ -0,0 +1,150 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause

Where is the "GPL-2.0-only OR BSD-2-Clause" license coming from? I see
that the Microchip KSZ driver is GPL-2.0, and the previous bindings
document had no license, which would also make it implicitly GPL I
believe.


[PATCH net-next v2 01/11] dt-bindings: net: dsa: convert ksz bindings document to yaml

2020-11-12 Thread Christian Eggers
Convert the bindings document for Microchip KSZ Series Ethernet switches
from txt to yaml.

Signed-off-by: Christian Eggers 
---
 .../devicetree/bindings/net/dsa/ksz.txt   | 125 ---
 .../bindings/net/dsa/microchip,ksz.yaml   | 150 ++
 MAINTAINERS   |   2 +-
 3 files changed, 151 insertions(+), 126 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/net/dsa/ksz.txt
 create mode 100644 Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml

diff --git a/Documentation/devicetree/bindings/net/dsa/ksz.txt 
b/Documentation/devicetree/bindings/net/dsa/ksz.txt
deleted file mode 100644
index 95e91e84151c..
--- a/Documentation/devicetree/bindings/net/dsa/ksz.txt
+++ /dev/null
@@ -1,125 +0,0 @@
-Microchip KSZ Series Ethernet switches
-==
-
-Required properties:
-
-- compatible: For external switch chips, compatible string must be exactly one
-  of the following:
-  - "microchip,ksz8765"
-  - "microchip,ksz8794"
-  - "microchip,ksz8795"
-  - "microchip,ksz9477"
-  - "microchip,ksz9897"
-  - "microchip,ksz9896"
-  - "microchip,ksz9567"
-  - "microchip,ksz8565"
-  - "microchip,ksz9893"
-  - "microchip,ksz9563"
-  - "microchip,ksz8563"
-
-Optional properties:
-
-- reset-gpios  : Should be a gpio specifier for a reset line
-- microchip,synclko-125 : Set if the output SYNCLKO frequency should be set to
- 125MHz instead of 25MHz.
-
-See Documentation/devicetree/bindings/net/dsa/dsa.txt for a list of additional
-required and optional properties.
-
-Examples:
-
-Ethernet switch connected via SPI to the host, CPU port wired to eth0:
-
-   eth0: ethernet@10001000 {
-   fixed-link {
-   speed = <1000>;
-   full-duplex;
-   };
-   };
-
-   spi1: spi@f8008000 {
-   pinctrl-0 = <_spi_ksz>;
-   cs-gpios = < 25 0>;
-   id = <1>;
-
-   ksz9477: ksz9477@0 {
-   compatible = "microchip,ksz9477";
-   reg = <0>;
-
-   spi-max-frequency = <4400>;
-   spi-cpha;
-   spi-cpol;
-
-   ports {
-   #address-cells = <1>;
-   #size-cells = <0>;
-   port@0 {
-   reg = <0>;
-   label = "lan1";
-   };
-   port@1 {
-   reg = <1>;
-   label = "lan2";
-   };
-   port@2 {
-   reg = <2>;
-   label = "lan3";
-   };
-   port@3 {
-   reg = <3>;
-   label = "lan4";
-   };
-   port@4 {
-   reg = <4>;
-   label = "lan5";
-   };
-   port@5 {
-   reg = <5>;
-   label = "cpu";
-   ethernet = <>;
-   fixed-link {
-   speed = <1000>;
-   full-duplex;
-   };
-   };
-   };
-   };
-   ksz8565: ksz8565@0 {
-   compatible = "microchip,ksz8565";
-   reg = <0>;
-
-   spi-max-frequency = <4400>;
-   spi-cpha;
-   spi-cpol;
-
-   ports {
-   #address-cells = <1>;
-   #size-cells = <0>;
-   port@0 {
-   reg = <0>;
-   label = "lan1";
-   };
-   port@1 {
-   reg = <1>;
-   label = "lan2";
-   };
-   port@2 {
-   reg = <2>;
-   label = "lan3";
-   };
-   port@3 {
-   reg = <3>;
-   label = "lan4";
-   };
-   port@6 {
-