xref: /freebsd/sys/contrib/device-tree/Bindings/net/brcm,unimac-mdio.yaml (revision 354d7675fe12ace9cde344cb79c7ded792802f88)
1*354d7675SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2*354d7675SEmmanuel Vadot%YAML 1.2
3*354d7675SEmmanuel Vadot---
4*354d7675SEmmanuel Vadot$id: http://devicetree.org/schemas/net/brcm,unimac-mdio.yaml#
5*354d7675SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*354d7675SEmmanuel Vadot
7*354d7675SEmmanuel Vadottitle: Broadcom UniMAC MDIO bus controller
8*354d7675SEmmanuel Vadot
9*354d7675SEmmanuel Vadotmaintainers:
10*354d7675SEmmanuel Vadot  - Rafał Miłecki <rafal@milecki.pl>
11*354d7675SEmmanuel Vadot
12*354d7675SEmmanuel VadotallOf:
13*354d7675SEmmanuel Vadot  - $ref: mdio.yaml#
14*354d7675SEmmanuel Vadot
15*354d7675SEmmanuel Vadotproperties:
16*354d7675SEmmanuel Vadot  compatible:
17*354d7675SEmmanuel Vadot    enum:
18*354d7675SEmmanuel Vadot      - brcm,genet-mdio-v1
19*354d7675SEmmanuel Vadot      - brcm,genet-mdio-v2
20*354d7675SEmmanuel Vadot      - brcm,genet-mdio-v3
21*354d7675SEmmanuel Vadot      - brcm,genet-mdio-v4
22*354d7675SEmmanuel Vadot      - brcm,genet-mdio-v5
23*354d7675SEmmanuel Vadot      - brcm,unimac-mdio
24*354d7675SEmmanuel Vadot
25*354d7675SEmmanuel Vadot  reg:
26*354d7675SEmmanuel Vadot    minItems: 1
27*354d7675SEmmanuel Vadot    items:
28*354d7675SEmmanuel Vadot      - description: base register
29*354d7675SEmmanuel Vadot      - description: indirect accesses to larger than 16-bits MDIO transactions
30*354d7675SEmmanuel Vadot
31*354d7675SEmmanuel Vadot  reg-names:
32*354d7675SEmmanuel Vadot    minItems: 1
33*354d7675SEmmanuel Vadot    items:
34*354d7675SEmmanuel Vadot      - const: mdio
35*354d7675SEmmanuel Vadot      - const: mdio_indir_rw
36*354d7675SEmmanuel Vadot
37*354d7675SEmmanuel Vadot  interrupts:
38*354d7675SEmmanuel Vadot    oneOf:
39*354d7675SEmmanuel Vadot      - description: >
40*354d7675SEmmanuel Vadot          Interrupt shared with the Ethernet MAC or Ethernet switch this MDIO
41*354d7675SEmmanuel Vadot          block is integrated from
42*354d7675SEmmanuel Vadot      - items:
43*354d7675SEmmanuel Vadot          - description: |
44*354d7675SEmmanuel Vadot              "mdio done" interrupt
45*354d7675SEmmanuel Vadot          - description: |
46*354d7675SEmmanuel Vadot              "mdio error" interrupt
47*354d7675SEmmanuel Vadot
48*354d7675SEmmanuel Vadot  interrupt-names:
49*354d7675SEmmanuel Vadot    oneOf:
50*354d7675SEmmanuel Vadot      - const: mdio_done_error
51*354d7675SEmmanuel Vadot      - items:
52*354d7675SEmmanuel Vadot          - const: mdio_done
53*354d7675SEmmanuel Vadot          - const: mdio_error
54*354d7675SEmmanuel Vadot
55*354d7675SEmmanuel Vadot  clocks:
56*354d7675SEmmanuel Vadot    description: A reference to the clock supplying the MDIO bus controller
57*354d7675SEmmanuel Vadot
58*354d7675SEmmanuel Vadot  clock-frequency:
59*354d7675SEmmanuel Vadot    description: >
60*354d7675SEmmanuel Vadot      The MDIO bus clock that must be output by the MDIO bus hardware, if
61*354d7675SEmmanuel Vadot      absent, the default hardware values are used
62*354d7675SEmmanuel Vadot
63*354d7675SEmmanuel VadotunevaluatedProperties: false
64*354d7675SEmmanuel Vadot
65*354d7675SEmmanuel Vadotrequired:
66*354d7675SEmmanuel Vadot  - reg
67*354d7675SEmmanuel Vadot  - reg-names
68*354d7675SEmmanuel Vadot  - '#address-cells'
69*354d7675SEmmanuel Vadot  - '#size-cells'
70*354d7675SEmmanuel Vadot
71*354d7675SEmmanuel Vadotexamples:
72*354d7675SEmmanuel Vadot  - |
73*354d7675SEmmanuel Vadot    mdio@403c0 {
74*354d7675SEmmanuel Vadot        compatible = "brcm,unimac-mdio";
75*354d7675SEmmanuel Vadot        reg = <0x403c0 0x8>, <0x40300 0x18>;
76*354d7675SEmmanuel Vadot        reg-names = "mdio", "mdio_indir_rw";
77*354d7675SEmmanuel Vadot        #address-cells = <1>;
78*354d7675SEmmanuel Vadot        #size-cells = <0>;
79*354d7675SEmmanuel Vadot
80*354d7675SEmmanuel Vadot        ethernet-phy@0 {
81*354d7675SEmmanuel Vadot            compatible = "ethernet-phy-ieee802.3-c22";
82*354d7675SEmmanuel Vadot            reg = <0>;
83*354d7675SEmmanuel Vadot        };
84*354d7675SEmmanuel Vadot    };
85