ipq40xx: remove mac-address-increment
[openwrt/staging/hauke.git] / target / linux / ipq40xx / files / arch / arm / boot / dts / qcom-ipq4018-wac510.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2 /* Copyright (c) 2020, Robert Marko <robimarko@gmail.com> */
3
4 #include "qcom-ipq4019.dtsi"
5 #include <dt-bindings/gpio/gpio.h>
6 #include <dt-bindings/input/input.h>
7 #include <dt-bindings/soc/qcom,tcsr.h>
8 #include <dt-bindings/leds/common.h>
9
10 / {
11 model = "Netgear WAC510";
12 compatible = "netgear,wac510";
13
14 aliases {
15 led-boot = &led_power_amber;
16 led-failsafe = &led_power_amber;
17 led-running = &led_power_green;
18 led-upgrade = &led_power_amber;
19 ethernet1 = &swport5;
20 };
21
22 chosen {
23 bootargs-append = " root=/dev/ubiblock0_1";
24 };
25
26 soc {
27 rng@22000 {
28 status = "okay";
29 };
30
31 counter@4a1000 {
32 compatible = "qcom,qca-gcnt";
33 reg = <0x4a1000 0x4>;
34 };
35
36 tcsr@1949000 {
37 compatible = "qcom,tcsr";
38 reg = <0x1949000 0x100>;
39 qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
40 };
41
42 ess_tcsr@1953000 {
43 compatible = "qcom,tcsr";
44 reg = <0x1953000 0x1000>;
45 qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
46 };
47
48 tcsr@1957000 {
49 compatible = "qcom,tcsr";
50 reg = <0x1957000 0x100>;
51 qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
52 };
53
54 crypto@8e3a000 {
55 status = "okay";
56 };
57
58 watchdog@b017000 {
59 status = "okay";
60 };
61 };
62
63 keys {
64 compatible = "gpio-keys";
65
66 reset {
67 label = "reset";
68 gpios = <&tlmm 63 GPIO_ACTIVE_LOW>;
69 linux,code = <KEY_RESTART>;
70 };
71 };
72
73 led_spi {
74 compatible = "spi-gpio";
75 #address-cells = <1>;
76 #size-cells = <0>;
77
78 sck-gpios = <&tlmm 5 GPIO_ACTIVE_HIGH>;
79 mosi-gpios = <&tlmm 4 GPIO_ACTIVE_HIGH>;
80 num-chipselects = <0>;
81
82 ssr: ssr@0 {
83 compatible = "fairchild,74hc595";
84 reg = <0>;
85 gpio-controller;
86 #gpio-cells = <2>;
87 registers-number = <1>;
88 spi-max-frequency = <1000000>;
89 };
90 };
91
92 leds {
93 compatible = "gpio-leds";
94
95 led_power_amber: led-0 {
96 label = "amber:power";
97 color = <LED_COLOR_ID_AMBER>;
98 function = LED_FUNCTION_POWER;
99 gpios = <&ssr 6 GPIO_ACTIVE_LOW>;
100 panic-indicator;
101 };
102
103 led_power_green: led-1 {
104 label = "green:power";
105 color = <LED_COLOR_ID_GREEN>;
106 function = LED_FUNCTION_POWER;
107 gpios = <&ssr 5 GPIO_ACTIVE_LOW>;
108 };
109
110 led-2 {
111 /* 2.4GHz blue - activity */
112 color = <LED_COLOR_ID_BLUE>;
113 function = LED_FUNCTION_WLAN;
114 function-enumerator = <0>;
115 gpios = <&ssr 4 GPIO_ACTIVE_LOW>;
116 linux,default-trigger = "phy0tpt";
117 };
118
119 led-3 {
120 /* 2.4GHz green - link */
121 color = <LED_COLOR_ID_GREEN>;
122 function = LED_FUNCTION_WLAN;
123 function-enumerator = <0>;
124 gpios = <&ssr 3 GPIO_ACTIVE_LOW>;
125 linux,default-trigger = "phy0radio";
126 };
127
128 led-4 {
129 /* 5GHz blue - activity */
130 color = <LED_COLOR_ID_BLUE>;
131 function = LED_FUNCTION_WLAN;
132 function-enumerator = <1>;
133 gpios = <&ssr 2 GPIO_ACTIVE_LOW>;
134 linux,default-trigger = "phy1tpt";
135 };
136
137 led-5 {
138 /* 5GHz green - link */
139 color = <LED_COLOR_ID_GREEN>;
140 function = LED_FUNCTION_WLAN;
141 function-enumerator = <1>;
142 gpios = <&ssr 1 GPIO_ACTIVE_LOW>;
143 linux,default-trigger = "phy1radio";
144 };
145
146 led-6 {
147 color = <LED_COLOR_ID_GREEN>;
148 function = LED_FUNCTION_ACTIVITY;
149 gpios = <&ssr 0 GPIO_ACTIVE_LOW>;
150 };
151 };
152 };
153
154 &qpic_bam {
155 status = "okay";
156 };
157
158 &tlmm {
159 mdio_pins: mdio_pinmux {
160 mux_1 {
161 pins = "gpio53";
162 function = "mdio";
163 bias-pull-up;
164 };
165
166 mux_2 {
167 pins = "gpio52";
168 function = "mdc";
169 bias-pull-up;
170 };
171 };
172
173 serial_pins: serial_pinmux {
174 mux {
175 pins = "gpio60", "gpio61";
176 function = "blsp_uart0";
177 bias-disable;
178 };
179 };
180
181 spi_0_pins: spi_0_pinmux {
182 pinmux {
183 function = "blsp_spi0";
184 pins = "gpio55", "gpio56", "gpio57";
185 drive-strength = <12>;
186 bias-disable;
187 };
188
189 pinmux_cs {
190 function = "gpio";
191 pins = "gpio54", "gpio59";
192 drive-strength = <2>;
193 bias-disable;
194 output-high;
195 };
196 };
197 };
198
199 &blsp_dma {
200 status = "okay";
201 };
202
203 &blsp1_spi1 {
204 status = "okay";
205
206 pinctrl-0 = <&spi_0_pins>;
207 pinctrl-names = "default";
208 cs-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>,
209 <&tlmm 59 GPIO_ACTIVE_HIGH>;
210
211 flash@0 {
212 compatible = "jedec,spi-nor";
213 spi-max-frequency = <50000000>;
214 reg = <0>;
215
216 partitions {
217 compatible = "fixed-partitions";
218 #address-cells = <1>;
219 #size-cells = <1>;
220
221 partition@0 {
222 label = "0:SBL1";
223 reg = <0x00000000 0x00040000>;
224 read-only;
225 };
226
227 partition@40000 {
228 label = "0:MIBIB";
229 reg = <0x00040000 0x00020000>;
230 read-only;
231 };
232
233 partition@60000 {
234 label = "0:QSEE";
235 reg = <0x00060000 0x00060000>;
236 read-only;
237 };
238
239 partition@c0000 {
240 label = "0:CDT";
241 reg = <0x000c0000 0x00010000>;
242 read-only;
243 };
244
245 partition@d0000 {
246 label = "0:DDRPARAMS";
247 reg = <0x000d0000 0x00010000>;
248 read-only;
249 };
250
251 partition@e0000 {
252 label = "0:APPSBLENV";
253 reg = <0x000e0000 0x00010000>;
254 };
255
256 partition@f0000 {
257 label = "0:APPSBL";
258 reg = <0x000f0000 0x000f0000>;
259 read-only;
260 };
261
262 partition@1e0000 {
263 label = "0:MANUDATA";
264 reg = <0x001e0000 0x00010000>;
265 read-only;
266
267 nvmem-layout {
268 compatible = "fixed-layout";
269 #address-cells = <1>;
270 #size-cells = <1>;
271
272 macaddr_manudata_6: macaddr@6 {
273 compatible = "mac-base";
274 reg = <0x6 0x6>;
275 #nvmem-cell-cells = <1>;
276 };
277 };
278 };
279
280 partition@1f0000 {
281 label = "0:ART";
282 reg = <0x001f0000 0x00010000>;
283 read-only;
284
285 nvmem-layout {
286 compatible = "fixed-layout";
287 #address-cells = <1>;
288 #size-cells = <1>;
289
290 precal_art_1000: precal@1000 {
291 reg = <0x1000 0x2f20>;
292 };
293
294 precal_art_5000: precal@5000 {
295 reg = <0x5000 0x2f20>;
296 };
297 };
298 };
299 };
300 };
301
302 nand@1 {
303 compatible = "spi-nand";
304 reg = <1>;
305 spi-max-frequency = <48000000>;
306
307 partitions {
308 compatible = "fixed-partitions";
309 #address-cells = <1>;
310 #size-cells = <1>;
311
312 partition@0 {
313 label = "rootfs";
314 reg = <0x00000000 0x03800000>;
315 };
316
317 partition@3800000 {
318 label = "rootfs_1";
319 reg = <0x03800000 0x03800000>;
320 };
321
322 partition@7000000 {
323 label = "var_config";
324 reg = <0x07000000 0x00f00000>;
325 read-only;
326 };
327
328 partition@7f00000 {
329 label = "Oops_log";
330 reg = <0x07f00000 0x000c0000>;
331 read-only;
332 };
333 };
334 };
335 };
336
337 &blsp1_uart1 {
338 status = "okay";
339
340 pinctrl-0 = <&serial_pins>;
341 pinctrl-names = "default";
342 };
343
344 &cryptobam {
345 status = "okay";
346 };
347
348 &gmac {
349 status = "okay";
350 };
351
352 &switch {
353 status = "okay";
354 };
355
356 &swport4 {
357 status = "okay";
358
359 label = "lan";
360 };
361
362 &swport5 {
363 status = "okay";
364 };
365
366 &mdio {
367 status = "okay";
368
369 pinctrl-0 = <&mdio_pins>;
370 pinctrl-names = "default";
371 reset-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>;
372 reset-delay-us = <2000>;
373 };
374
375 &wifi0 {
376 status = "okay";
377 nvmem-cell-names = "pre-calibration", "mac-address";
378 nvmem-cells = <&precal_art_1000>, <&macaddr_manudata_6 0>;
379 qcom,ath10k-calibration-variant = "Netgear-WAC510";
380 };
381
382 &wifi1 {
383 status = "okay";
384 nvmem-cell-names = "pre-calibration", "mac-address";
385 nvmem-cells = <&precal_art_5000>, <&macaddr_manudata_6 16>;
386 qcom,ath10k-calibration-variant = "Netgear-WAC510";
387 };