Commit 4f36d977 authored by Christian Eggers's avatar Christian Eggers Committed by Jakub Kicinski
Browse files

dt-bindings: net: dsa: convert ksz bindings document to yaml



Convert the bindings document for Microchip KSZ Series Ethernet switches
from txt to yaml. Removed spi-cpha and spi-cpol flags is this should be
handled by the device driver.

Signed-off-by: default avatarChristian Eggers <ceggers@arri.de>
Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 0e1f1cc8
Loading
Loading
Loading
Loading
+0 −125
Original line number Diff line number Diff line
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 = <&pinctrl_spi_ksz>;
		cs-gpios = <&pioC 25 0>;
		id = <1>;

		ksz9477: ksz9477@0 {
			compatible = "microchip,ksz9477";
			reg = <0>;

			spi-max-frequency = <44000000>;
			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 = <&eth0>;
					fixed-link {
						speed = <1000>;
						full-duplex;
					};
				};
			};
		};
		ksz8565: ksz8565@0 {
			compatible = "microchip,ksz8565";
			reg = <0>;

			spi-max-frequency = <44000000>;
			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 {
					reg = <6>;
					label = "cpu";
					ethernet = <&eth0>;
					fixed-link {
						speed = <1000>;
						full-duplex;
					};
				};
			};
		};
	};
+148 −0
Original line number Diff line number Diff line
# 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

maintainers:
  - Marek Vasut <marex@denx.de>
  - Woojung Huh <Woojung.Huh@microchip.com>

allOf:
  - $ref: dsa.yaml#

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

unevaluatedProperties: false

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

            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 = <&eth0>;
                    fixed-link {
                        speed = <1000>;
                        full-duplex;
                    };
                };
            };
        };

        ksz8565: switch@1 {
            compatible = "microchip,ksz8565";
            reg = <1>;

            spi-max-frequency = <44000000>;

            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 = <&eth0>;
                    fixed-link {
                        speed = <1000>;
                        full-duplex;
                    };
                };
            };
        };
    };
...
+1 −1
Original line number Diff line number Diff line
@@ -11487,7 +11487,7 @@ M: Woojung Huh <woojung.huh@microchip.com>
M:	Microchip Linux Driver Support <UNGLinuxDriver@microchip.com>
L:	netdev@vger.kernel.org
S:	Maintained
F:	Documentation/devicetree/bindings/net/dsa/ksz.txt
F:	Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
F:	drivers/net/dsa/microchip/*
F:	include/linux/platform_data/microchip-ksz.h
F:	net/dsa/tag_ksz.c