rtl838x: d-link_dgs-1210: refactor common family bits
[openwrt/staging/wigyori.git] / target / linux / rtl838x / dts / rtl8382_d-link_dgs-1210-16.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2
3 #include "rtl8382_d-link_dgs-1210.dtsi"
4
5 / {
6 compatible = "d-link,dgs-1210-16", "realtek,rtl838x-soc";
7 model = "D-Link DGS-1210-16";
8 };
9
10 &ethernet0 {
11 mdio: mdio-bus {
12 compatible = "realtek,rtl838x-mdio";
13 regmap = <&ethernet0>;
14 #address-cells = <1>;
15 #size-cells = <0>;
16
17 /* External phy RTL8218B */
18 phy0: ethernet-phy@0 {
19 reg = <0>;
20 compatible = "ethernet-phy-ieee802.3-c22";
21 };
22 phy1: ethernet-phy@1 {
23 reg = <1>;
24 compatible = "ethernet-phy-ieee802.3-c22";
25 };
26 phy2: ethernet-phy@2 {
27 reg = <2>;
28 compatible = "ethernet-phy-ieee802.3-c22";
29 };
30 phy3: ethernet-phy@3 {
31 reg = <3>;
32 compatible = "ethernet-phy-ieee802.3-c22";
33 };
34 phy4: ethernet-phy@4 {
35 reg = <4>;
36 compatible = "ethernet-phy-ieee802.3-c22";
37 };
38 phy5: ethernet-phy@5 {
39 reg = <5>;
40 compatible = "ethernet-phy-ieee802.3-c22";
41 };
42 phy6: ethernet-phy@6 {
43 reg = <6>;
44 compatible = "ethernet-phy-ieee802.3-c22";
45 };
46 phy7: ethernet-phy@7 {
47 reg = <7>;
48 compatible = "ethernet-phy-ieee802.3-c22";
49 };
50
51 /* Internal phy RTL8218B */
52 phy8: ethernet-phy@8 {
53 reg = <8>;
54 compatible = "ethernet-phy-ieee802.3-c22";
55 phy-is-integrated;
56 };
57 phy9: ethernet-phy@9 {
58 reg = <9>;
59 compatible = "ethernet-phy-ieee802.3-c22";
60 phy-is-integrated;
61 };
62 phy10: ethernet-phy@10 {
63 reg = <10>;
64 compatible = "ethernet-phy-ieee802.3-c22";
65 phy-is-integrated;
66 };
67 phy11: ethernet-phy@11 {
68 reg = <11>;
69 compatible = "ethernet-phy-ieee802.3-c22";
70 phy-is-integrated;
71 };
72 phy12: ethernet-phy@12 {
73 reg = <12>;
74 compatible = "ethernet-phy-ieee802.3-c22";
75 phy-is-integrated;
76 };
77 phy13: ethernet-phy@13 {
78 reg = <13>;
79 compatible = "ethernet-phy-ieee802.3-c22";
80 phy-is-integrated;
81 };
82 phy14: ethernet-phy@14 {
83 reg = <14>;
84 compatible = "ethernet-phy-ieee802.3-c22";
85 phy-is-integrated;
86 };
87 phy15: ethernet-phy@15 {
88 reg = <15>;
89 compatible = "ethernet-phy-ieee802.3-c22";
90 phy-is-integrated;
91 };
92
93 /* External phy: RTL8214FC */
94 phy24: ethernet-phy@24 {
95 compatible = "ethernet-phy-ieee802.3-c22";
96 sfp;
97 media = "fibre";
98 reg = <24>;
99 };
100 phy25: ethernet-phy@25 {
101 compatible = "ethernet-phy-ieee802.3-c22";
102 sfp;
103 media = "fibre";
104 reg = <25>;
105 };
106 phy26: ethernet-phy@26 {
107 compatible = "ethernet-phy-ieee802.3-c22";
108 sfp;
109 media = "fibre";
110 reg = <26>;
111 };
112 phy27: ethernet-phy@27 {
113 compatible = "ethernet-phy-ieee802.3-c22";
114 sfp;
115 media = "fibre";
116 reg = <27>;
117 };
118 };
119 };
120
121 &switch0 {
122 ports {
123 #address-cells = <1>;
124 #size-cells = <0>;
125
126 port@0 {
127 reg = <0>;
128 label = "lan1";
129 phy-handle = <&phy0>;
130 phy-mode = "qsgmii";
131 };
132 port@1 {
133 reg = <1>;
134 label = "lan2";
135 phy-handle = <&phy1>;
136 phy-mode = "qsgmii";
137 };
138 port@2 {
139 reg = <2>;
140 label = "lan3";
141 phy-handle = <&phy2>;
142 phy-mode = "qsgmii";
143 };
144 port@3 {
145 reg = <3>;
146 label = "lan4";
147 phy-handle = <&phy3>;
148 phy-mode = "qsgmii";
149 };
150 port@4 {
151 reg = <4>;
152 label = "lan5";
153 phy-handle = <&phy4>;
154 phy-mode = "qsgmii";
155 };
156 port@5 {
157 reg = <5>;
158 label = "lan6";
159 phy-handle = <&phy5>;
160 phy-mode = "qsgmii";
161 };
162 port@6 {
163 reg = <6>;
164 label = "lan7";
165 phy-handle = <&phy6>;
166 phy-mode = "qsgmii";
167 };
168 port@7 {
169 reg = <7>;
170 label = "lan8";
171 phy-handle = <&phy7>;
172 phy-mode = "qsgmii";
173 };
174 port@8 {
175 reg = <8>;
176 label = "lan9";
177 phy-handle = <&phy8>;
178 phy-mode = "internal";
179 };
180 port@9 {
181 reg = <9>;
182 label = "lan10";
183 phy-handle = <&phy9>;
184 phy-mode = "internal";
185 };
186 port@10 {
187 reg = <10>;
188 label = "lan11";
189 phy-handle = <&phy10>;
190 phy-mode = "internal";
191 };
192 port@11 {
193 reg = <11>;
194 label = "lan12";
195 phy-handle = <&phy11>;
196 phy-mode = "internal";
197 };
198 port@12 {
199 reg = <12>;
200 label = "lan13";
201 phy-handle = <&phy12>;
202 phy-mode = "internal";
203 };
204 port@13 {
205 reg = <13>;
206 label = "lan14";
207 phy-handle = <&phy13>;
208 phy-mode = "internal";
209 };
210 port@14 {
211 reg = <14>;
212 label = "lan15";
213 phy-handle = <&phy14>;
214 phy-mode = "internal";
215 };
216 port@15 {
217 reg = <15>;
218 label = "lan16";
219 phy-handle = <&phy15>;
220 phy-mode = "internal";
221 };
222
223 port@24 {
224 reg = <24>;
225 label = "lan17";
226 phy-handle = <&phy24>;
227 phy-mode = "qsgmii";
228 };
229 port@25 {
230 reg = <25>;
231 label = "lan18";
232 phy-handle = <&phy25>;
233 phy-mode = "qsgmii";
234 };
235 port@26 {
236 reg = <26>;
237 label = "lan19";
238 phy-handle = <&phy26>;
239 phy-mode = "qsgmii";
240 };
241 port@27 {
242 reg = <27>;
243 label = "lan20";
244 phy-handle = <&phy27>;
245 phy-mode = "qsgmii";
246 };
247 port@28 {
248 ethernet = <&ethernet0>;
249 reg = <28>;
250 phy-mode = "internal";
251 fixed-link {
252 speed = <1000>;
253 full-duplex;
254 };
255 };
256 };
257 };