87e0d103b71b53b0dca9f81cd07005b2f726ec39
[openwrt/staging/jow.git] / target / linux / ipq40xx / files / arch / arm / boot / dts / qcom-ipq4019-r619ac.dtsi
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 #include <dt-bindings/leds/common.h>
8
9 / {
10 chosen {
11 bootargs-append = " ubi.mtd=ubi root=/dev/ubiblock0_1";
12 };
13
14 aliases {
15 led-boot = &led_sys;
16 led-failsafe = &led_sys;
17 led-running = &led_sys;
18 led-upgrade = &led_sys;
19 label-mac-device = &gmac0;
20 };
21
22 soc {
23 rng@22000 {
24 status = "okay";
25 };
26
27 mdio@90000 {
28 status = "okay";
29 pinctrl-0 = <&mdio_pins>;
30 pinctrl-names = "default";
31 };
32
33 ess-psgmii@98000 {
34 status = "okay";
35 };
36
37 tcsr@1949000 {
38 compatible = "qcom,tcsr";
39 reg = <0x1949000 0x100>;
40 qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
41 };
42
43 tcsr@194b000 {
44 compatible = "qcom,tcsr";
45 reg = <0x194b000 0x100>;
46 qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
47 };
48
49 ess_tcsr@1953000 {
50 compatible = "qcom,tcsr";
51 reg = <0x1953000 0x1000>;
52 qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
53 };
54
55 tcsr@1957000 {
56 compatible = "qcom,tcsr";
57 reg = <0x1957000 0x100>;
58 qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
59 };
60
61 usb2@60f8800 {
62 status = "okay";
63 };
64
65 usb3@8af8800 {
66 status = "okay";
67 };
68
69 crypto@8e3a000 {
70 status = "okay";
71 };
72
73 watchdog@b017000 {
74 status = "okay";
75 };
76
77 ess-switch@c000000 {
78 status = "okay";
79 };
80
81 edma@c080000 {
82 status = "okay";
83 };
84 };
85
86 leds {
87 compatible = "gpio-leds";
88
89 led_sys: led-0 {
90 label = "blue:sys";
91 gpios = <&tlmm 39 GPIO_ACTIVE_HIGH>;
92 color = <LED_COLOR_ID_BLUE>;
93 function = LED_FUNCTION_POWER;
94 };
95
96 led-1 {
97 label = "blue:wlan2g";
98 gpios = <&tlmm 32 GPIO_ACTIVE_HIGH>;
99 linux,default-trigger = "phy0tpt";
100 color = <LED_COLOR_ID_BLUE>;
101 function = LED_FUNCTION_WLAN;
102 function-enumerator = <0>;
103 };
104
105 led-2 {
106 label = "blue:wlan5g";
107 gpios = <&tlmm 50 GPIO_ACTIVE_HIGH>;
108 linux,default-trigger = "phy1tpt";
109 color = <LED_COLOR_ID_BLUE>;
110 function = LED_FUNCTION_WLAN;
111 function-enumerator = <1>;
112 };
113 };
114
115 keys {
116 compatible = "gpio-keys";
117
118 reset {
119 label = "reset";
120 gpios = <&tlmm 18 GPIO_ACTIVE_LOW>;
121 linux,code = <KEY_RESTART>;
122 };
123 };
124 };
125
126 &blsp_dma {
127 status = "okay";
128 };
129
130 &blsp1_spi1 {
131 status = "okay";
132
133 flash@0 {
134 reg = <0>;
135 compatible = "jedec,spi-nor";
136 spi-max-frequency = <24000000>;
137
138 partitions {
139 compatible = "fixed-partitions";
140 #address-cells = <1>;
141 #size-cells = <1>;
142
143 partition@0 {
144 label = "SBL1";
145 reg = <0x0 0x40000>;
146 read-only;
147 };
148
149 partition@40000 {
150 label = "MIBIB";
151 reg = <0x40000 0x20000>;
152 read-only;
153 };
154
155 partition@60000 {
156 label = "QSEE";
157 reg = <0x60000 0x60000>;
158 read-only;
159 };
160
161 partition@c0000 {
162 label = "CDT";
163 reg = <0xc0000 0x10000>;
164 read-only;
165 };
166
167 partition@d0000 {
168 label = "DDRPARAMS";
169 reg = <0xd0000 0x10000>;
170 read-only;
171 };
172
173 partition@e0000 {
174 label = "APPSBLENV";
175 reg = <0xe0000 0x10000>;
176 read-only;
177 };
178
179 partition@f0000 {
180 label = "APPSBL";
181 reg = <0xf0000 0x80000>;
182 read-only;
183 };
184
185 partition@170000 {
186 label = "ART";
187 reg = <0x170000 0x10000>;
188 read-only;
189 compatible = "nvmem-cells";
190 #address-cells = <1>;
191 #size-cells = <1>;
192
193 precal_art_1000: precal@1000 {
194 reg = <0x1000 0x2f20>;
195 };
196
197 precal_art_5000: precal@5000 {
198 reg = <0x5000 0x2f20>;
199 };
200 };
201 };
202 };
203 };
204
205 &nand {
206 status = "okay";
207
208 nand@0 {
209 partitions {
210 compatible = "fixed-partitions";
211 #address-cells = <1>;
212 #size-cells = <1>;
213
214 nand_rootfs: partition@0 {
215 label = "ubi";
216 /* reg defined in 64M/128M variant dts. */
217 };
218 };
219 };
220 };
221
222 &blsp1_uart1 {
223 pinctrl-0 = <&serial_0_pins>;
224 pinctrl-names = "default";
225 status = "okay";
226 };
227
228 &cryptobam {
229 status = "okay";
230 };
231
232 &pcie0 {
233 status = "okay";
234 pinctrl-names = "default";
235 pinctrl-0 = <&pcie_pins>;
236 perst-gpio = <&tlmm 4 GPIO_ACTIVE_LOW>;
237 wake-gpio = <&tlmm 40 GPIO_ACTIVE_HIGH>;
238
239 /* Free slot for use */
240 bridge@0,0 {
241 reg = <0x00000000 0 0 0 0>;
242 #address-cells = <3>;
243 #size-cells = <2>;
244 ranges;
245 };
246 };
247
248 &qpic_bam {
249 status = "okay";
250 };
251
252 &sdhci {
253 pinctrl-0 = <&sd_0_pins>;
254 pinctrl-names = "default";
255 vqmmc-supply = <&vqmmc>;
256 status = "okay";
257 };
258
259 &tlmm {
260 pcie_pins: pcie_pinmux {
261 mux {
262 pins = "gpio2";
263 function = "gpio";
264 output-low;
265 bias-pull-down;
266 };
267 };
268
269 mdio_pins: mdio_pinmux {
270 mux_1 {
271 pins = "gpio6";
272 function = "mdio";
273 bias-pull-up;
274 };
275
276 mux_2 {
277 pins = "gpio7";
278 function = "mdc";
279 bias-pull-up;
280 };
281 };
282
283 sd_0_pins: sd_0_pinmux {
284 mux_1 {
285 pins = "gpio23", "gpio24", "gpio25", "gpio26", "gpio28";
286 function = "sdio";
287 drive-strength = <10>;
288 };
289
290 mux_2 {
291 pins = "gpio27";
292 function = "sdio";
293 drive-strength = <16>;
294 };
295 };
296
297 serial_0_pins: serial0-pinmux {
298 mux {
299 pins = "gpio16", "gpio17";
300 function = "blsp_uart0";
301 bias-disable;
302 };
303 };
304 };
305
306 &ethphy0 {
307 qcom,single-led-1000;
308 qcom,single-led-100;
309 qcom,single-led-10;
310 };
311
312 &ethphy1 {
313 qcom,single-led-1000;
314 qcom,single-led-100;
315 qcom,single-led-10;
316 };
317
318 &ethphy2 {
319 qcom,single-led-1000;
320 qcom,single-led-100;
321 qcom,single-led-10;
322 };
323
324 &ethphy3 {
325 qcom,single-led-1000;
326 qcom,single-led-100;
327 qcom,single-led-10;
328 };
329
330 &ethphy4 {
331 qcom,single-led-1000;
332 qcom,single-led-100;
333 qcom,single-led-10;
334 };
335
336 &usb3_ss_phy {
337 status = "okay";
338 };
339
340 &usb3_hs_phy {
341 status = "okay";
342 };
343
344 &usb2_hs_phy {
345 status = "okay";
346 };
347
348 &vqmmc {
349 status = "okay";
350 };
351
352 &wifi0 {
353 status = "okay";
354 nvmem-cell-names = "pre-calibration";
355 nvmem-cells = <&precal_art_1000>;
356 qcom,ath10k-calibration-variant = "P&W-R619AC";
357 };
358
359 &wifi1 {
360 status = "okay";
361 nvmem-cell-names = "pre-calibration";
362 nvmem-cells = <&precal_art_5000>;
363 qcom,ath10k-calibration-variant = "P&W-R619AC";
364 };