base-files: reduce IPv6 ULA prefix generation to a single call
[openwrt/staging/stintel.git] / target / linux / ipq806x / files-6.1 / arch / arm / boot / dts / qcom-ipq8064-r7500.dts
1 #include "qcom-ipq8064-v1.0.dtsi"
2
3 #include <dt-bindings/input/input.h>
4 #include <dt-bindings/leds/common.h>
5 #include <dt-bindings/soc/qcom,tcsr.h>
6
7 / {
8 model = "Netgear Nighthawk X4 R7500";
9 compatible = "netgear,r7500", "qcom,ipq8064";
10
11 memory@0 {
12 reg = <0x42000000 0xe000000>;
13 device_type = "memory";
14 };
15
16 reserved-memory {
17 #address-cells = <1>;
18 #size-cells = <1>;
19 ranges;
20 rsvd@41200000 {
21 reg = <0x41200000 0x300000>;
22 no-map;
23 };
24 };
25
26 aliases {
27 mdio-gpio0 = &mdio0;
28
29 led-boot = &power_white;
30 led-failsafe = &power_amber;
31 led-running = &power_white;
32 led-upgrade = &power_amber;
33 };
34
35 chosen {
36 bootargs = "rootfstype=squashfs noinitrd";
37 };
38
39 keys {
40 compatible = "gpio-keys";
41 pinctrl-0 = <&button_pins>;
42 pinctrl-names = "default";
43
44 wifi {
45 label = "wifi";
46 gpios = <&qcom_pinmux 6 GPIO_ACTIVE_LOW>;
47 linux,code = <KEY_RFKILL>;
48 debounce-interval = <60>;
49 wakeup-source;
50 };
51
52 reset {
53 label = "reset";
54 gpios = <&qcom_pinmux 54 GPIO_ACTIVE_LOW>;
55 linux,code = <KEY_RESTART>;
56 debounce-interval = <60>;
57 wakeup-source;
58 };
59
60 wps {
61 label = "wps";
62 gpios = <&qcom_pinmux 65 GPIO_ACTIVE_LOW>;
63 linux,code = <KEY_WPS_BUTTON>;
64 debounce-interval = <60>;
65 wakeup-source;
66 };
67 };
68
69 leds {
70 compatible = "gpio-leds";
71 pinctrl-0 = <&led_pins>;
72 pinctrl-names = "default";
73
74 usb1 {
75 label = "white:usb1";
76 gpios = <&qcom_pinmux 7 GPIO_ACTIVE_HIGH>;
77 };
78
79 usb2 {
80 label = "white:usb2";
81 gpios = <&qcom_pinmux 8 GPIO_ACTIVE_HIGH>;
82 };
83
84 power_amber: power_amber {
85 function = LED_FUNCTION_POWER;
86 color = <LED_COLOR_ID_AMBER>;
87 gpios = <&qcom_pinmux 9 GPIO_ACTIVE_HIGH>;
88 };
89
90 wan_white {
91 function = LED_FUNCTION_WAN;
92 color = <LED_COLOR_ID_WHITE>;
93 gpios = <&qcom_pinmux 22 GPIO_ACTIVE_HIGH>;
94 };
95
96 wan_amber {
97 function = LED_FUNCTION_WAN;
98 color = <LED_COLOR_ID_AMBER>;
99 gpios = <&qcom_pinmux 23 GPIO_ACTIVE_HIGH>;
100 };
101
102 wps {
103 function = LED_FUNCTION_WPS;
104 color = <LED_COLOR_ID_WHITE>;
105 gpios = <&qcom_pinmux 24 GPIO_ACTIVE_HIGH>;
106 };
107
108 esata {
109 label = "white:esata";
110 gpios = <&qcom_pinmux 26 GPIO_ACTIVE_HIGH>;
111 };
112
113 power_white: power_white {
114 function = LED_FUNCTION_POWER;
115 color = <LED_COLOR_ID_WHITE>;
116 gpios = <&qcom_pinmux 53 GPIO_ACTIVE_HIGH>;
117 default-state = "keep";
118 };
119
120 wifi {
121 label = "white:wifi";
122 gpios = <&qcom_pinmux 64 GPIO_ACTIVE_HIGH>;
123 };
124 };
125 };
126
127 &qcom_pinmux {
128 button_pins: button_pins {
129 mux {
130 pins = "gpio6", "gpio54", "gpio65";
131 function = "gpio";
132 drive-strength = <2>;
133 bias-pull-up;
134 };
135 };
136
137 led_pins: led_pins {
138 mux {
139 pins = "gpio7", "gpio8", "gpio9", "gpio22", "gpio23",
140 "gpio24","gpio26", "gpio53", "gpio64";
141 function = "gpio";
142 drive-strength = <2>;
143 bias-pull-up;
144 };
145 };
146 };
147
148 &gsbi5 {
149 status = "disabled";
150
151 spi@1a280000 {
152 status = "disabled";
153 };
154 };
155
156 &hs_phy_0 {
157 status = "okay";
158 };
159
160 &ss_phy_0 {
161 status = "okay";
162 };
163
164 &usb3_0 {
165 status = "okay";
166 };
167
168 &hs_phy_1 {
169 status = "okay";
170 };
171
172 &ss_phy_1 {
173 status = "okay";
174 };
175
176 &usb3_1 {
177 status = "okay";
178 };
179
180 &pcie0 {
181 status = "okay";
182 };
183
184 &pcie1 {
185 status = "okay";
186 max-link-speed = <1>;
187 };
188
189 &nand {
190 status = "okay";
191
192 nand@0 {
193 reg = <0>;
194 compatible = "qcom,nandcs";
195
196 nand-ecc-strength = <4>;
197 nand-bus-width = <8>;
198 nand-ecc-step-size = <512>;
199
200 nand-is-boot-medium;
201 qcom,boot-partitions = <0x0 0x1180000>;
202
203 partitions {
204 compatible = "fixed-partitions";
205 #address-cells = <1>;
206 #size-cells = <1>;
207
208 qcadata@0 {
209 label = "qcadata";
210 reg = <0x0000000 0x0c80000>;
211 read-only;
212 };
213
214 APPSBL@c80000 {
215 label = "APPSBL";
216 reg = <0x0c80000 0x0500000>;
217 read-only;
218 };
219
220 APPSBLENV@1180000 {
221 label = "APPSBLENV";
222 reg = <0x1180000 0x0080000>;
223 read-only;
224 };
225
226 art: art@1200000 {
227 label = "art";
228 reg = <0x1200000 0x0140000>;
229 read-only;
230
231 nvmem-layout {
232 compatible = "fixed-layout";
233 #address-cells = <1>;
234 #size-cells = <1>;
235
236 macaddr_art_0: macaddr@0 {
237 reg = <0x0 0x6>;
238 };
239
240 macaddr_art_6: macaddr@6 {
241 reg = <0x6 0x6>;
242 };
243 };
244 };
245
246 kernel@1340000 {
247 label = "kernel";
248 reg = <0x1340000 0x0400000>;
249 };
250
251 ubi@1740000 {
252 label = "ubi";
253 reg = <0x1740000 0x1600000>;
254 };
255
256 netgear@2d40000 {
257 label = "netgear";
258 reg = <0x2d40000 0x0c00000>;
259 read-only;
260 };
261
262 reserve@3940000 {
263 label = "reserve";
264 reg = <0x3940000 0x46c0000>;
265 read-only;
266 };
267 };
268 };
269 };
270
271 &mdio0 {
272 status = "okay";
273
274 pinctrl-0 = <&mdio0_pins>;
275 pinctrl-names = "default";
276
277 switch@10 {
278 compatible = "qca,qca8337";
279 #address-cells = <1>;
280 #size-cells = <0>;
281 reg = <0x10>;
282
283 ports {
284 #address-cells = <1>;
285 #size-cells = <0>;
286
287 port@0 {
288 reg = <0>;
289 label = "cpu";
290 ethernet = <&gmac1>;
291 phy-mode = "rgmii";
292 tx-internal-delay-ps = <1000>;
293 rx-internal-delay-ps = <1000>;
294
295 fixed-link {
296 speed = <1000>;
297 full-duplex;
298 };
299 };
300
301 port@1 {
302 reg = <1>;
303 label = "lan1";
304 phy-mode = "internal";
305 phy-handle = <&phy_port1>;
306 };
307
308 port@2 {
309 reg = <2>;
310 label = "lan2";
311 phy-mode = "internal";
312 phy-handle = <&phy_port2>;
313 };
314
315 port@3 {
316 reg = <3>;
317 label = "lan3";
318 phy-mode = "internal";
319 phy-handle = <&phy_port3>;
320 };
321
322 port@4 {
323 reg = <4>;
324 label = "lan4";
325 phy-mode = "internal";
326 phy-handle = <&phy_port4>;
327 };
328
329 port@5 {
330 reg = <5>;
331 label = "wan";
332 phy-mode = "internal";
333 phy-handle = <&phy_port5>;
334 };
335
336 port@6 {
337 reg = <6>;
338 label = "cpu";
339 ethernet = <&gmac2>;
340 phy-mode = "sgmii";
341 qca,sgmii-enable-pll;
342
343 fixed-link {
344 speed = <1000>;
345 full-duplex;
346 };
347 };
348 };
349
350 mdio {
351 #address-cells = <1>;
352 #size-cells = <0>;
353
354 phy_port1: phy@0 {
355 reg = <0>;
356 };
357
358 phy_port2: phy@1 {
359 reg = <1>;
360 };
361
362 phy_port3: phy@2 {
363 reg = <2>;
364 };
365
366 phy_port4: phy@3 {
367 reg = <3>;
368 };
369
370 phy_port5: phy@4 {
371 reg = <4>;
372 };
373 };
374 };
375 };
376
377 &gmac1 {
378 status = "okay";
379 phy-mode = "rgmii";
380 qcom,id = <1>;
381
382 pinctrl-0 = <&rgmii2_pins>;
383 pinctrl-names = "default";
384
385 nvmem-cells = <&macaddr_art_6>;
386 nvmem-cell-names = "mac-address";
387
388 fixed-link {
389 speed = <1000>;
390 full-duplex;
391 };
392 };
393
394 &gmac2 {
395 status = "okay";
396 phy-mode = "sgmii";
397 qcom,id = <2>;
398
399 nvmem-cells = <&macaddr_art_0>;
400 nvmem-cell-names = "mac-address";
401
402 fixed-link {
403 speed = <1000>;
404 full-duplex;
405 };
406 };
407
408 &tcsr {
409 qcom,usb-ctrl-select = <TCSR_USB_SELECT_USB3_DUAL>;
410 compatible = "qcom,tcsr";
411 };
412
413 &adm_dma {
414 status = "okay";
415 };