xref: /linux/Documentation/devicetree/bindings/net/realtek,rtl9301-mdio.yaml (revision 1a9239bb4253f9076b5b4b2a1a4e8d7defd77a95)
1*96757457SChris Packham# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*96757457SChris Packham%YAML 1.2
3*96757457SChris Packham---
4*96757457SChris Packham$id: http://devicetree.org/schemas/net/realtek,rtl9301-mdio.yaml#
5*96757457SChris Packham$schema: http://devicetree.org/meta-schemas/core.yaml#
6*96757457SChris Packham
7*96757457SChris Packhamtitle: Realtek RTL9300 MDIO Controller
8*96757457SChris Packham
9*96757457SChris Packhammaintainers:
10*96757457SChris Packham  - Chris Packham <chris.packham@alliedtelesis.co.nz>
11*96757457SChris Packham
12*96757457SChris Packhamproperties:
13*96757457SChris Packham  compatible:
14*96757457SChris Packham    oneOf:
15*96757457SChris Packham      - items:
16*96757457SChris Packham          - enum:
17*96757457SChris Packham              - realtek,rtl9302b-mdio
18*96757457SChris Packham              - realtek,rtl9302c-mdio
19*96757457SChris Packham              - realtek,rtl9303-mdio
20*96757457SChris Packham          - const: realtek,rtl9301-mdio
21*96757457SChris Packham      - const: realtek,rtl9301-mdio
22*96757457SChris Packham
23*96757457SChris Packham  '#address-cells':
24*96757457SChris Packham    const: 1
25*96757457SChris Packham
26*96757457SChris Packham  '#size-cells':
27*96757457SChris Packham    const: 0
28*96757457SChris Packham
29*96757457SChris Packham  reg:
30*96757457SChris Packham    maxItems: 1
31*96757457SChris Packham
32*96757457SChris PackhampatternProperties:
33*96757457SChris Packham  '^mdio-bus@[0-3]$':
34*96757457SChris Packham    $ref: mdio.yaml#
35*96757457SChris Packham
36*96757457SChris Packham    properties:
37*96757457SChris Packham      reg:
38*96757457SChris Packham        maxItems: 1
39*96757457SChris Packham
40*96757457SChris Packham    required:
41*96757457SChris Packham      - reg
42*96757457SChris Packham
43*96757457SChris Packham    patternProperties:
44*96757457SChris Packham      '^ethernet-phy@[a-f0-9]+$':
45*96757457SChris Packham        type: object
46*96757457SChris Packham        $ref: ethernet-phy.yaml#
47*96757457SChris Packham        unevaluatedProperties: false
48*96757457SChris Packham
49*96757457SChris Packham    unevaluatedProperties: false
50*96757457SChris Packham
51*96757457SChris Packhamrequired:
52*96757457SChris Packham  - compatible
53*96757457SChris Packham  - reg
54*96757457SChris Packham
55*96757457SChris PackhamunevaluatedProperties: false
56*96757457SChris Packham
57*96757457SChris Packhamexamples:
58*96757457SChris Packham  - |
59*96757457SChris Packham    mdio-controller@ca00 {
60*96757457SChris Packham      compatible = "realtek,rtl9301-mdio";
61*96757457SChris Packham      reg = <0xca00 0x200>;
62*96757457SChris Packham      #address-cells = <1>;
63*96757457SChris Packham      #size-cells = <0>;
64*96757457SChris Packham
65*96757457SChris Packham      mdio-bus@0 {
66*96757457SChris Packham        reg = <0>;
67*96757457SChris Packham        #address-cells = <1>;
68*96757457SChris Packham        #size-cells = <0>;
69*96757457SChris Packham
70*96757457SChris Packham        ethernet-phy@0 {
71*96757457SChris Packham          compatible = "ethernet-phy-ieee802.3-c45";
72*96757457SChris Packham          reg = <0>;
73*96757457SChris Packham        };
74*96757457SChris Packham      };
75*96757457SChris Packham
76*96757457SChris Packham      mdio-bus@1 {
77*96757457SChris Packham        reg = <1>;
78*96757457SChris Packham        #address-cells = <1>;
79*96757457SChris Packham        #size-cells = <0>;
80*96757457SChris Packham
81*96757457SChris Packham        ethernet-phy@0 {
82*96757457SChris Packham          compatible = "ethernet-phy-ieee802.3-c45";
83*96757457SChris Packham          reg = <0>;
84*96757457SChris Packham        };
85*96757457SChris Packham      };
86*96757457SChris Packham    };
87