Re: [PATCH net-next v3 01/12] dt-bindings: net: dsa: convert ksz bindings document to yaml
From: Christian Eggers <ceggers@arri.de>
Date: 2020-11-19 20:24:29
Also in:
linux-devicetree, lkml
On Thursday, 19 November 2020, 14:48:01 CET, Rob Herring wrote:
On Wed, Nov 18, 2020 at 09:30:02PM +0100, Christian Eggers wrote:quoted
Convert the bindings document for Microchip KSZ Series Ethernet switches from txt to yaml. Signed-off-by: Christian Eggers <ceggers@arri.de> --- .../devicetree/bindings/net/dsa/ksz.txt | 125 -------------- .../bindings/net/dsa/microchip,ksz.yaml | 152 ++++++++++++++++++ MAINTAINERS | 2 +- 3 files changed, 153 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.txtb/Documentation/devicetree/bindings/net/dsa/ksz.txt deleted file mode 100644 index 95e91e84151c..000000000000--- a/Documentation/devicetree/bindings/net/dsa/ksz.txt +++ /dev/null[...]diff --git a/Documentation/devicetree/bindings/net/dsa/microchip,ksz.yamlb/Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml new file mode 100644 index 000000000000..010adb09a68f--- /dev/null +++ b/Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml@@ -0,0 +1,152 @@ +# 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#Move this after 'maintainers'.
changed for v4
quoted
+ +maintainers: + - Marek Vasut [off-list ref] + - Woojung Huh [off-list ref] + +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 + + 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: falseYou need to use unevaluatedProperties instead.
dt_binding_check is happy now
quoted
+ +examples: + - | + #include <dt-bindings/gpio/gpio.h> + + // 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 = <&pinctrl_spi_ksz>; + cs-gpios = <&pioC 25 0>; + id = <1>; + + ksz9477: switch@0 { + compatible = "microchip,ksz9477"; + reg = <0>; + reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>; + + spi-max-frequency = <44000000>; + spi-cpha; + spi-cpol;Are these 2 optional or required? Being optional is rare as most devices support 1 mode, but not unheard of.
From the data sheet: "Input data on SDI is latched on the rising edge of serial clock SCL. Output data on SDO is clocked on the falling edge of SCL." Clock has inverted polarity in all diagrams.
In general, you shouldn't need them as the driver should know how to configure the mode if the h/w is fixed.
I will check this in the driver. This also requires updating at91-sama5d2_icp.dts. I personally use I2C instead of SPI on this chip.
quoted
[...]