blob: 7c90a43905319b9ec48914add537f6eea889a7e9 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/net/brcm,bcmgenet.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Broadcom BCM7xxx Ethernet Controller (GENET)
8
9maintainers:
10 - Doug Berger <opendmb@gmail.com>
11 - Florian Fainelli <f.fainelli@gmail.com>
12
13properties:
14 compatible:
15 enum:
16 - brcm,genet-v1
17 - brcm,genet-v2
18 - brcm,genet-v3
19 - brcm,genet-v4
20 - brcm,genet-v5
21 - brcm,bcm2711-genet-v5
22 - brcm,bcm7712-genet-v5
23
24 reg:
25 maxItems: 1
26
27 interrupts:
28 minItems: 2
29 items:
30 - description: general purpose interrupt line
31 - description: RX and TX rings interrupt line
32 - description: Wake-on-LAN interrupt line
33
34
35 clocks:
36 minItems: 1
37 items:
38 - description: main clock
39 - description: EEE clock
40 - description: Wake-on-LAN clock
41
42 clock-names:
43 minItems: 1
44 items:
45 - const: enet
46 - const: enet-eee
47 - const: enet-wol
48
49 "#address-cells":
50 const: 1
51
52 "#size-cells":
53 const: 1
54
55patternProperties:
56 "^mdio@[0-9a-f]+$":
57 type: object
58 $ref: brcm,unimac-mdio.yaml
59
60 description:
61 GENET internal UniMAC MDIO bus
62
63required:
64 - reg
65 - interrupts
66 - phy-mode
67 - "#address-cells"
68 - "#size-cells"
69
70allOf:
71 - $ref: ethernet-controller.yaml
72
73unevaluatedProperties: false
74
75examples:
76 - |
77 ethernet@f0b60000 {
78 phy-mode = "internal";
79 phy-handle = <&phy1>;
80 mac-address = [ 00 10 18 36 23 1a ];
81 compatible = "brcm,genet-v4";
82 reg = <0xf0b60000 0xfc4c>;
83 interrupts = <0x0 0x14 0x0>, <0x0 0x15 0x0>;
84 #address-cells = <1>;
85 #size-cells = <1>;
86
87 mdio0: mdio@e14 {
88 compatible = "brcm,genet-mdio-v4";
89 #address-cells = <1>;
90 #size-cells = <0>;
91 reg = <0xe14 0x8>;
92
93 phy1: ethernet-phy@1 {
94 max-speed = <1000>;
95 reg = <1>;
96 compatible = "ethernet-phy-ieee802.3-c22";
97 };
98 };
99 };
100
101 - |
102 ethernet@f0b80000 {
103 phy-mode = "moca";
104 fixed-link = <1 0 1000 0 0>;
105 mac-address = [ 00 10 18 36 24 1a ];
106 compatible = "brcm,genet-v4";
107 #address-cells = <1>;
108 #size-cells = <1>;
109 reg = <0xf0b80000 0xfc4c>;
110 interrupts = <0x0 0x16 0x0>, <0x0 0x17 0x0>;
111
112 mdio1: mdio@e14 {
113 compatible = "brcm,genet-mdio-v4";
114 #address-cells = <1>;
115 #size-cells = <0>;
116 reg = <0xe14 0x8>;
117 };
118 };
119
120 - |
121 ethernet@f0ba0000 {
122 phy-mode = "rgmii";
123 phy-handle = <&phy0>;
124 mac-address = [ 00 10 18 36 26 1a ];
125 compatible = "brcm,genet-v4";
126 #address-cells = <1>;
127 #size-cells = <1>;
128 reg = <0xf0ba0000 0xfc4c>;
129 interrupts = <0x0 0x18 0x0>, <0x0 0x19 0x0>;
130
131 mdio2: mdio@e14 {
132 compatible = "brcm,genet-mdio-v4";
133 #address-cells = <1>;
134 #size-cells = <0>;
135 reg = <0xe14 0x8>;
136
137 phy0: ethernet-phy@0 {
138 max-speed = <1000>;
139 reg = <0>;
140 compatible = "ethernet-phy-ieee802.3-c22";
141 };
142 };
143 };