Commit 02e98ce3 authored by Bhupesh Sharma's avatar Bhupesh Sharma Committed by Paolo Abeni
Browse files

dt-bindings: net: qcom,ethqos: Convert bindings to yaml



Convert Qualcomm ETHQOS Ethernet devicetree binding to YAML.
In doing so add a new property for iommus since newer platforms support
using one, and without such make dtbs_check fails on them.

While at it, also update the MAINTAINERS file to point to the yaml
version of the bindings.

Signed-off-by: default avatarBhupesh Sharma <bhupesh.sharma@linaro.org>
[halaney: Remove duplicated properties, add MAINTAINERS and iommus]
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: default avatarAndrew Halaney <ahalaney@redhat.com>
Tested-by: default avatarBrian Masney <bmasney@redhat.com>
Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
parent d70c215b
Loading
Loading
Loading
Loading
+0 −66
Original line number Diff line number Diff line
Qualcomm Ethernet ETHQOS device

This documents dwmmac based ethernet device which supports Gigabit
ethernet for version v2.3.0 onwards.

This device has following properties:

Required properties:

- compatible: Should be one of:
		"qcom,qcs404-ethqos"
		"qcom,sm8150-ethqos"

- reg: Address and length of the register set for the device

- reg-names: Should contain register names "stmmaceth", "rgmii"

- clocks: Should contain phandle to clocks

- clock-names: Should contain clock names "stmmaceth", "pclk",
		"ptp_ref", "rgmii"

- interrupts: Should contain phandle to interrupts

- interrupt-names: Should contain interrupt names "macirq", "eth_lpi"

Rest of the properties are defined in stmmac.txt file in same directory


Example:

ethernet: ethernet@7a80000 {
	compatible = "qcom,qcs404-ethqos";
	reg = <0x07a80000 0x10000>,
		<0x07a96000 0x100>;
	reg-names = "stmmaceth", "rgmii";
	clock-names = "stmmaceth", "pclk", "ptp_ref", "rgmii";
	clocks = <&gcc GCC_ETH_AXI_CLK>,
		<&gcc GCC_ETH_SLAVE_AHB_CLK>,
		<&gcc GCC_ETH_PTP_CLK>,
		<&gcc GCC_ETH_RGMII_CLK>;
	interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
			<GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
	interrupt-names = "macirq", "eth_lpi";
	snps,reset-gpio = <&tlmm 60 GPIO_ACTIVE_LOW>;
	snps,reset-active-low;

	snps,txpbl = <8>;
	snps,rxpbl = <2>;
	snps,aal;
	snps,tso;

	phy-handle = <&phy1>;
	phy-mode = "rgmii";

	mdio {
		#address-cells = <0x1>;
		#size-cells = <0x0>;
		compatible = "snps,dwmac-mdio";
		phy1: phy@4 {
			device_type = "ethernet-phy";
			reg = <0x4>;
		};
	};

};
+110 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/qcom,ethqos.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm Ethernet ETHQOS device

maintainers:
  - Bhupesh Sharma <bhupesh.sharma@linaro.org>

description:
  dwmmac based Qualcomm ethernet devices which support Gigabit
  ethernet (version v2.3.0 and onwards).

allOf:
  - $ref: snps,dwmac.yaml#

properties:
  compatible:
    enum:
      - qcom,qcs404-ethqos
      - qcom,sm8150-ethqos

  reg:
    maxItems: 2

  reg-names:
    items:
      - const: stmmaceth
      - const: rgmii

  interrupts:
    items:
      - description: Combined signal for various interrupt events
      - description: The interrupt that occurs when Rx exits the LPI state

  interrupt-names:
    items:
      - const: macirq
      - const: eth_lpi

  clocks:
    maxItems: 4

  clock-names:
    items:
      - const: stmmaceth
      - const: pclk
      - const: ptp_ref
      - const: rgmii

  iommus:
    maxItems: 1

required:
  - compatible
  - clocks
  - clock-names
  - reg-names

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/clock/qcom,gcc-qcs404.h>
    #include <dt-bindings/gpio/gpio.h>

    ethernet: ethernet@7a80000 {
      compatible = "qcom,qcs404-ethqos";
      reg = <0x07a80000 0x10000>,
            <0x07a96000 0x100>;
      reg-names = "stmmaceth", "rgmii";
      clock-names = "stmmaceth", "pclk", "ptp_ref", "rgmii";
      clocks = <&gcc GCC_ETH_AXI_CLK>,
               <&gcc GCC_ETH_SLAVE_AHB_CLK>,
               <&gcc GCC_ETH_PTP_CLK>,
               <&gcc GCC_ETH_RGMII_CLK>;
      interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
                   <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
      interrupt-names = "macirq", "eth_lpi";

      rx-fifo-depth = <4096>;
      tx-fifo-depth = <4096>;

      snps,tso;
      snps,reset-gpio = <&tlmm 60 GPIO_ACTIVE_LOW>;
      snps,reset-active-low;
      snps,reset-delays-us = <0 10000 10000>;

      pinctrl-names = "default";
      pinctrl-0 = <&ethernet_defaults>;

      phy-handle = <&phy1>;
      phy-mode = "rgmii";
      mdio {
        #address-cells = <0x1>;
        #size-cells = <0x0>;

        compatible = "snps,dwmac-mdio";
        phy1: phy@4 {
          compatible = "ethernet-phy-ieee802.3-c22";
          device_type = "ethernet-phy";
          reg = <0x4>;

          #phy-cells = <0>;
        };
      };
    };
+1 −1
Original line number Diff line number Diff line
@@ -17304,7 +17304,7 @@ M: Vinod Koul <vkoul@kernel.org>
R:	Bhupesh Sharma <bhupesh.sharma@linaro.org>
L:	netdev@vger.kernel.org
S:	Maintained
F:	Documentation/devicetree/bindings/net/qcom,ethqos.txt
F:	Documentation/devicetree/bindings/net/qcom,ethqos.yaml
F:	drivers/net/ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c
QUALCOMM FASTRPC DRIVER