ipq40xx: switch default to 6.6
[openwrt/staging/stintel.git] / target / linux / ipq40xx / files-6.1 / arch / arm / boot / dts / qcom-ipq40x9-dr40x9.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2
3 #include "qcom-ipq4019.dtsi"
4 #include <dt-bindings/gpio/gpio.h>
5 #include <dt-bindings/input/input.h>
6 #include <dt-bindings/soc/qcom,tcsr.h>
7
8 / {
9 model = "Wallystech DR40X9";
10 compatible = "wallys,dr40x9";
11
12 chosen {
13 bootargs-append = " ubi.mtd=ubi root=/dev/ubiblock0_1";
14 };
15
16 soc {
17 counter@4a1000 {
18 compatible = "qcom,qca-gcnt";
19 reg = <0x4a1000 0x4>;
20 };
21
22 tcsr@1949000 {
23 compatible = "qcom,tcsr";
24 reg = <0x1949000 0x100>;
25 qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
26 };
27
28 tcsr@194b000 {
29 status = "okay";
30
31 /* select hostmode */
32 compatible = "qcom,tcsr";
33 reg = <0x194b000 0x100>;
34 qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
35 };
36
37 ess_tcsr@1953000 {
38 compatible = "qcom,tcsr";
39 reg = <0x1953000 0x1000>;
40 qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
41 };
42
43 tcsr@1957000 {
44 compatible = "qcom,tcsr";
45 reg = <0x1957000 0x100>;
46 qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
47 };
48 };
49
50 keys {
51 compatible = "gpio-keys";
52
53 reset {
54 label = "reset";
55 gpios = <&tlmm 18 GPIO_ACTIVE_LOW>;
56 linux,code = <KEY_RESTART>;
57 };
58 };
59
60 leds {
61 compatible = "gpio-leds";
62
63 wlan2g {
64 label = "dr4029:green:wlan2g";
65 gpios = <&tlmm 32 GPIO_ACTIVE_LOW>;
66 linux,default-trigger = "phy0tpt";
67 };
68
69 wlan5g {
70 label = "dr4029:green:wlan5g";
71 gpios = <&tlmm 50 GPIO_ACTIVE_LOW>;
72 linux,default-trigger = "phy1tpt";
73 };
74
75 wlan2g-strength {
76 label = "dr4029:green:wlan2g-strength";
77 gpios = <&tlmm 36 GPIO_ACTIVE_LOW>;
78 };
79
80 wlan5g-strength {
81 label = "dr4029:green:wlan5g-strength";
82 gpios = <&tlmm 39 GPIO_ACTIVE_LOW>;
83 };
84 };
85 };
86
87 &tlmm {
88 mdio_pins: mdio_pinmux {
89 mux_1 {
90 pins = "gpio6";
91 function = "mdio";
92 bias-pull-up;
93 };
94 mux_2 {
95 pins = "gpio7";
96 function = "mdc";
97 bias-pull-up;
98 };
99 };
100
101 serial0_pins: serial0_pinmux {
102 mux {
103 pins = "gpio16", "gpio17";
104 function = "blsp_uart0";
105 bias-disable;
106 };
107 };
108
109 serial1_pins: serial1_pinmux {
110 mux {
111 pins = "gpio8", "gpio9";
112 function = "blsp_uart1";
113 bias-disable;
114 };
115 };
116
117 spi_0_pins: spi_0_pinmux {
118 pinmux {
119 function = "blsp_spi0";
120 pins = "gpio13", "gpio14", "gpio15";
121 drive-strength = <12>;
122 bias-disable;
123 };
124 pinmux_cs {
125 function = "gpio";
126 pins = "gpio12";
127 drive-strength = <2>;
128 bias-disable;
129 output-high;
130 };
131 };
132
133 nand_pins: nand_pins {
134 pullups {
135 pins = "gpio52", "gpio53", "gpio58", "gpio59";
136 function = "qpic";
137 bias-pull-up;
138 };
139
140 pulldowns {
141 pins = "gpio54", "gpio55", "gpio56", "gpio57",
142 "gpio60", "gpio62", "gpio63", "gpio64",
143 "gpio65", "gpio66", "gpio67", "gpio68",
144 "gpio69";
145 function = "qpic";
146 bias-pull-down;
147 };
148 };
149
150 sd_pins: sd_pins {
151 pinmux {
152 function = "sdio";
153 pins = "gpio23", "gpio24", "gpio25", "gpio26",
154 "gpio28", "gpio29", "gpio30", "gpio31";
155 drive-strength = <10>;
156 };
157 pinmux_sd_clk {
158 function = "sdio";
159 pins = "gpio27";
160 drive-strength = <16>;
161 };
162 pinmux_sd7 {
163 function = "sdio";
164 pins = "gpio32";
165 drive-strength = <10>;
166 bias-disable;
167 };
168 };
169 };
170
171 &blsp_dma {
172 status = "okay";
173 };
174
175 &blsp1_spi1 {
176 status = "okay";
177
178 pinctrl-0 = <&spi_0_pins>;
179 pinctrl-names = "default";
180
181 cs-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>;
182
183 flash@0 {
184 compatible = "jedec,spi-nor";
185 spi-max-frequency = <24000000>;
186 reg = <0>;
187
188 partitions {
189 compatible = "fixed-partitions";
190 #address-cells = <1>;
191 #size-cells = <1>;
192
193 partition0@0 {
194 label = "0:SBL1";
195 reg = <0x00000000 0x00040000>;
196 read-only;
197 };
198
199 partition1@40000 {
200 label = "0:MIBIB";
201 reg = <0x00040000 0x00020000>;
202 read-only;
203 };
204
205 partition2@60000 {
206 label = "0:QSEE";
207 reg = <0x00060000 0x00060000>;
208 read-only;
209 };
210
211 partition3@c0000 {
212 label = "0:CDT";
213 reg = <0x000c0000 0x00010000>;
214 read-only;
215 };
216
217 partition4@d0000 {
218 label = "0:DDRPARAMS";
219 reg = <0x000d0000 0x00010000>;
220 read-only;
221 };
222
223 partition5@e0000 {
224 label = "0:APPSBLENV"; /* uboot env */
225 reg = <0x000e0000 0x00010000>;
226 read-only;
227 };
228
229 partition6@f0000 {
230 label = "0:APPSBL"; /* uboot */
231 reg = <0x000f0000 0x00080000>;
232 read-only;
233 };
234
235 partition7@170000 {
236 label = "0:ART";
237 reg = <0x00170000 0x00010000>;
238 read-only;
239
240 nvmem-layout {
241 compatible = "fixed-layout";
242 #address-cells = <1>;
243 #size-cells = <1>;
244
245 macaddr_art_0: mac-address@0 {
246 reg = <0x0 0x6>;
247 };
248
249 macaddr_art_6: mac-address@6 {
250 reg = <0x6 0x6>;
251 };
252
253 precal_art_1000: precal@1000 {
254 reg = <0x1000 0x2f20>;
255 };
256
257 macaddr_art_1006: mac-address@1006 {
258 reg = <0x1006 0x6>;
259 };
260
261 precal_art_5000: precal@5000 {
262 reg = <0x5000 0x2f20>;
263 };
264
265 macaddr_art_5006: mac-address@5006 {
266 reg = <0x5006 0x6>;
267 };
268 };
269 };
270
271 partition8@180000 {
272 label = "0:CONFIG";
273 reg = <0x00180000 0x00010000>;
274 read-only;
275 };
276 };
277 };
278 };
279
280 &qpic_bam {
281 status = "okay";
282 };
283
284 &nand {
285 status = "okay";
286
287 pinctrl-0 = <&nand_pins>;
288 pinctrl-names = "default";
289
290 nand@0 {
291 partitions {
292 compatible = "fixed-partitions";
293 #address-cells = <1>;
294 #size-cells = <1>;
295
296 partition@0 {
297 label = "ubi";
298 reg = <0x00000000 0x04000000>;
299 };
300 };
301 };
302 };
303
304 &blsp1_uart1 {
305 status = "okay";
306 pinctrl-0 = <&serial0_pins>;
307 pinctrl-names = "default";
308 };
309
310 &blsp1_uart2 {
311 status = "okay";
312 pinctrl-0 = <&serial1_pins>;
313 pinctrl-names = "default";
314 };
315
316 &crypto {
317 status = "okay";
318 };
319
320 &cryptobam {
321 num-channels = <4>;
322 qcom,num-ees = <2>;
323 status = "okay";
324 };
325
326 &mdio {
327 status = "okay";
328 pinctrl-0 = <&mdio_pins>;
329 pinctrl-names = "default";
330 reset-gpios = <&tlmm 41 GPIO_ACTIVE_LOW>;
331 reset-delay-us = <2000>;
332 };
333
334 &pcie0 {
335 status = "okay";
336
337 perst-gpio = <&tlmm 38 GPIO_ACTIVE_LOW>;
338 wake-gpio = <&tlmm 40 GPIO_ACTIVE_LOW>;
339
340 /* Unpolulated slot */
341 bridge@0,0 {
342 reg = <0x00000000 0 0 0 0>;
343 #address-cells = <3>;
344 #size-cells = <2>;
345 ranges;
346 };
347 };
348
349 &vqmmc {
350 status = "okay";
351 };
352
353 &sdhci {
354 status = "okay";
355 pinctrl-0 = <&sd_pins>;
356 pinctrl-names = "default";
357 cd-gpios = <&tlmm 22 GPIO_ACTIVE_LOW>;
358 vqmmc-supply = <&vqmmc>;
359 };
360
361 &gmac {
362 status = "okay";
363 };
364
365 &switch {
366 status = "okay";
367 };
368
369 &swport4 {
370 status = "okay";
371 label = "wan";
372 nvmem-cells = <&macaddr_art_0>;
373 nvmem-cell-names = "mac-address";
374 };
375
376 &swport5 {
377 status = "okay";
378 label = "lan";
379 nvmem-cells = <&macaddr_art_6>;
380 nvmem-cell-names = "mac-address";
381 };
382
383 &wifi0 {
384 status = "okay";
385 nvmem-cells = <&precal_art_1000>, <&macaddr_art_1006>;
386 nvmem-cell-names = "pre-calibration", "mac-address";
387 qcom,ath10k-calibration-variant = "Wallys-DR40X9";
388 };
389
390 &wifi1 {
391 status = "okay";
392 nvmem-cell-names = "pre-calibration", "mac-address";
393 nvmem-cells = <&precal_art_5000>, <&macaddr_art_5006>;
394 qcom,ath10k-calibration-variant = "Wallys-DR40X9";
395 };
396
397 &usb2 {
398 status = "okay";
399 };
400
401 &usb2_hs_phy {
402 status = "okay";
403 };
404
405 &usb3 {
406 status = "okay";
407 };
408
409 &usb3_ss_phy {
410 status = "okay";
411 };
412
413 &usb3_hs_phy {
414 status = "okay";
415 };
416
417 &prng {
418 status = "okay";
419 };
420
421 &watchdog {
422 status = "okay";
423 };
424