1*e6a39506SNobuhiro Iwamatsu# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*e6a39506SNobuhiro Iwamatsu%YAML 1.2
3*e6a39506SNobuhiro Iwamatsu---
4*e6a39506SNobuhiro Iwamatsu$id: "http://devicetree.org/schemas/net/toshiba,visconti-dwmac.yaml#"
5*e6a39506SNobuhiro Iwamatsu$schema: "http://devicetree.org/meta-schemas/core.yaml#"
6*e6a39506SNobuhiro Iwamatsu
7*e6a39506SNobuhiro Iwamatsutitle: Toshiba Visconti DWMAC Ethernet controller
8*e6a39506SNobuhiro Iwamatsu
9*e6a39506SNobuhiro Iwamatsumaintainers:
10*e6a39506SNobuhiro Iwamatsu  - Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp>
11*e6a39506SNobuhiro Iwamatsu
12*e6a39506SNobuhiro Iwamatsuselect:
13*e6a39506SNobuhiro Iwamatsu  properties:
14*e6a39506SNobuhiro Iwamatsu    compatible:
15*e6a39506SNobuhiro Iwamatsu      contains:
16*e6a39506SNobuhiro Iwamatsu        enum:
17*e6a39506SNobuhiro Iwamatsu          - toshiba,visconti-dwmac
18*e6a39506SNobuhiro Iwamatsu  required:
19*e6a39506SNobuhiro Iwamatsu    - compatible
20*e6a39506SNobuhiro Iwamatsu
21*e6a39506SNobuhiro IwamatsuallOf:
22*e6a39506SNobuhiro Iwamatsu  - $ref: "snps,dwmac.yaml#"
23*e6a39506SNobuhiro Iwamatsu
24*e6a39506SNobuhiro Iwamatsuproperties:
25*e6a39506SNobuhiro Iwamatsu  compatible:
26*e6a39506SNobuhiro Iwamatsu    oneOf:
27*e6a39506SNobuhiro Iwamatsu      - items:
28*e6a39506SNobuhiro Iwamatsu          - enum:
29*e6a39506SNobuhiro Iwamatsu              - toshiba,visconti-dwmac
30*e6a39506SNobuhiro Iwamatsu          - const: snps,dwmac-4.20a
31*e6a39506SNobuhiro Iwamatsu
32*e6a39506SNobuhiro Iwamatsu  reg:
33*e6a39506SNobuhiro Iwamatsu    maxItems: 1
34*e6a39506SNobuhiro Iwamatsu
35*e6a39506SNobuhiro Iwamatsu  clocks:
36*e6a39506SNobuhiro Iwamatsu    items:
37*e6a39506SNobuhiro Iwamatsu      - description: main clock
38*e6a39506SNobuhiro Iwamatsu      - description: PHY reference clock
39*e6a39506SNobuhiro Iwamatsu
40*e6a39506SNobuhiro Iwamatsu  clock-names:
41*e6a39506SNobuhiro Iwamatsu    items:
42*e6a39506SNobuhiro Iwamatsu      - const: stmmaceth
43*e6a39506SNobuhiro Iwamatsu      - const: phy_ref_clk
44*e6a39506SNobuhiro Iwamatsu
45*e6a39506SNobuhiro Iwamatsurequired:
46*e6a39506SNobuhiro Iwamatsu  - compatible
47*e6a39506SNobuhiro Iwamatsu  - reg
48*e6a39506SNobuhiro Iwamatsu  - clocks
49*e6a39506SNobuhiro Iwamatsu  - clock-names
50*e6a39506SNobuhiro Iwamatsu
51*e6a39506SNobuhiro IwamatsuunevaluatedProperties: false
52*e6a39506SNobuhiro Iwamatsu
53*e6a39506SNobuhiro Iwamatsuexamples:
54*e6a39506SNobuhiro Iwamatsu  - |
55*e6a39506SNobuhiro Iwamatsu    #include <dt-bindings/interrupt-controller/arm-gic.h>
56*e6a39506SNobuhiro Iwamatsu
57*e6a39506SNobuhiro Iwamatsu    soc {
58*e6a39506SNobuhiro Iwamatsu        #address-cells = <2>;
59*e6a39506SNobuhiro Iwamatsu        #size-cells = <2>;
60*e6a39506SNobuhiro Iwamatsu
61*e6a39506SNobuhiro Iwamatsu        piether: ethernet@28000000 {
62*e6a39506SNobuhiro Iwamatsu            compatible = "toshiba,visconti-dwmac", "snps,dwmac-4.20a";
63*e6a39506SNobuhiro Iwamatsu            reg = <0 0x28000000 0 0x10000>;
64*e6a39506SNobuhiro Iwamatsu            interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
65*e6a39506SNobuhiro Iwamatsu            interrupt-names = "macirq";
66*e6a39506SNobuhiro Iwamatsu            clocks = <&clk300mhz>, <&clk125mhz>;
67*e6a39506SNobuhiro Iwamatsu            clock-names = "stmmaceth", "phy_ref_clk";
68*e6a39506SNobuhiro Iwamatsu            snps,txpbl = <4>;
69*e6a39506SNobuhiro Iwamatsu            snps,rxpbl = <4>;
70*e6a39506SNobuhiro Iwamatsu            snps,tso;
71*e6a39506SNobuhiro Iwamatsu            phy-mode = "rgmii-id";
72*e6a39506SNobuhiro Iwamatsu            phy-handle = <&phy0>;
73*e6a39506SNobuhiro Iwamatsu
74*e6a39506SNobuhiro Iwamatsu            mdio0 {
75*e6a39506SNobuhiro Iwamatsu                #address-cells = <0x1>;
76*e6a39506SNobuhiro Iwamatsu                #size-cells = <0x0>;
77*e6a39506SNobuhiro Iwamatsu                compatible = "snps,dwmac-mdio";
78*e6a39506SNobuhiro Iwamatsu
79*e6a39506SNobuhiro Iwamatsu                phy0: ethernet-phy@1 {
80*e6a39506SNobuhiro Iwamatsu                    device_type = "ethernet-phy";
81*e6a39506SNobuhiro Iwamatsu                    reg = <0x1>;
82*e6a39506SNobuhiro Iwamatsu                };
83*e6a39506SNobuhiro Iwamatsu            };
84*e6a39506SNobuhiro Iwamatsu        };
85*e6a39506SNobuhiro Iwamatsu    };
86