ipq40xx: switch default to 6.6
[openwrt/staging/blocktrron.git] / target / linux / ipq40xx / files-6.1 / arch / arm / boot / dts / qcom-ipq4028-wpj428.dts
1 /* Copyright (c) 2015, The Linux Foundation. All rights reserved.
2 * Copyright (c) 2017, Christian Mehlis <christian@m3hlis.de>
3 * Copyright (c) 2017-2018, Sven Eckelmann <sven.eckelmann@openmesh.com>
4 *
5 * Permission to use, copy, modify, and/or distribute this software for any
6 * purpose with or without fee is hereby granted, provided that the above
7 * copyright notice and this permission notice appear in all copies.
8 *
9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 *
17 */
18
19 #include "qcom-ipq4019.dtsi"
20 #include <dt-bindings/gpio/gpio.h>
21 #include <dt-bindings/input/input.h>
22 #include <dt-bindings/soc/qcom,tcsr.h>
23
24 / {
25 model = "Compex WPJ428";
26 compatible = "compex,wpj428";
27
28 chosen {
29 /*
30 * There's a chance that SPI reads fail even though the data itself is alright.
31 * The read result is cached and squashfs can't recover.
32 * Just panic when that happens and hope that next time it doesn't.
33 */
34 bootargs-append = " rootflags=errors=panic";
35 };
36
37 soc {
38 rng@22000 {
39 status = "okay";
40 };
41
42 mdio@90000 {
43 status = "okay";
44 pinctrl-0 = <&mdio_pins>;
45 pinctrl-names = "default";
46 reset-gpios = <&tlmm 59 GPIO_ACTIVE_LOW>;
47 reset-delay-us = <2000>;
48 };
49
50 tcsr@194b000 {
51 /* select hostmode */
52 compatible = "qcom,tcsr";
53 reg = <0x194b000 0x100>;
54 qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
55 status = "okay";
56 };
57
58 tcsr@1949000 {
59 compatible = "qcom,tcsr";
60 reg = <0x1949000 0x100>;
61 qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
62 };
63
64 ess_tcsr@1953000 {
65 compatible = "qcom,tcsr";
66 reg = <0x1953000 0x1000>;
67 qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
68 };
69
70 tcsr@1957000 {
71 compatible = "qcom,tcsr";
72 reg = <0x1957000 0x100>;
73 qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
74 };
75
76 usb2: usb2@60f8800 {
77 status = "okay";
78 };
79
80 usb3: usb3@8af8800 {
81 status = "okay";
82 };
83
84 crypto@8e3a000 {
85 status = "okay";
86 };
87
88 watchdog@b017000 {
89 status = "okay";
90 };
91 };
92
93 keys {
94 compatible = "gpio-keys";
95
96 reset {
97 label = "reset";
98 gpios = <&tlmm 63 GPIO_ACTIVE_LOW>;
99 linux,code = <KEY_RESTART>;
100 };
101 };
102
103 aliases {
104 led-boot = &status;
105 led-failsafe = &status;
106 led-upgrade = &status;
107 };
108
109 leds {
110 compatible = "gpio-leds";
111
112 status: rss4 {
113 label = "green:rss4";
114 gpios = <&tlmm 5 GPIO_ACTIVE_HIGH>;
115 };
116
117 rss3 {
118 label = "green:rss3";
119 gpios = <&tlmm 4 GPIO_ACTIVE_HIGH>;
120 };
121 };
122
123 beeper: beeper {
124 compatible = "gpio-beeper";
125 gpios = <&tlmm 58 GPIO_ACTIVE_HIGH>;
126 };
127 };
128
129 &tlmm {
130 mdio_pins: mdio_pinmux {
131 mux_1 {
132 pins = "gpio53";
133 function = "mdio";
134 bias-pull-up;
135 };
136
137 mux_2 {
138 pins = "gpio52";
139 function = "mdc";
140 bias-pull-up;
141 };
142 };
143
144 serial_pins: serial_pinmux {
145 mux {
146 pins = "gpio60", "gpio61";
147 function = "blsp_uart0";
148 bias-disable;
149 };
150 };
151
152 spi_0_pins: spi_0_pinmux {
153 pin {
154 function = "blsp_spi0";
155 pins = "gpio55", "gpio56", "gpio57";
156 drive-strength = <12>;
157 bias-disable;
158 };
159 pin_cs {
160 function = "gpio";
161 pins = "gpio54";
162 drive-strength = <2>;
163 bias-disable;
164 output-high;
165 };
166 };
167 };
168
169 &blsp_dma {
170 status = "okay";
171 };
172
173 &blsp1_spi1 {
174 pinctrl-0 = <&spi_0_pins>;
175 pinctrl-names = "default";
176 status = "okay";
177 cs-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>;
178
179 m25p80@0 {
180 compatible = "jedec,spi-nor";
181 reg = <0>;
182 spi-max-frequency = <24000000>;
183
184 partitions {
185 compatible = "fixed-partitions";
186 #address-cells = <1>;
187 #size-cells = <1>;
188
189 partition0@0 {
190 label = "0:SBL1";
191 reg = <0x00000000 0x00040000>;
192 read-only;
193 };
194 partition1@40000 {
195 label = "0:MIBIB";
196 reg = <0x00040000 0x00020000>;
197 read-only;
198 };
199 partition2@60000 {
200 label = "0:QSEE";
201 reg = <0x00060000 0x00060000>;
202 read-only;
203 };
204 partition3@c0000 {
205 label = "0:CDT";
206 reg = <0x000c0000 0x00010000>;
207 read-only;
208 };
209 partition4@d0000 {
210 label = "0:DDRPARAMS";
211 reg = <0x000d0000 0x00010000>;
212 read-only;
213 };
214 partition5@e0000 {
215 label = "0:APPSBLENV"; /* uboot env*/
216 reg = <0x000e0000 0x00010000>;
217 read-only;
218 };
219 partition5@f0000 {
220 label = "0:APPSBL"; /* uboot */
221 reg = <0x000f0000 0x00080000>;
222 read-only;
223 };
224 partition5@170000 {
225 label = "0:ART";
226 reg = <0x00170000 0x00010000>;
227 read-only;
228
229 nvmem-layout {
230 compatible = "fixed-layout";
231 #address-cells = <1>;
232 #size-cells = <1>;
233
234 macaddr_art_e010: mac-address@e010 {
235 reg = <0xe010 0x6>;
236 };
237
238 macaddr_art_e018: mac-address@e018 {
239 reg = <0xe018 0x6>;
240 };
241
242 precal_art_1000: precal@1000 {
243 reg = <0x1000 0x2f20>;
244 };
245
246 precal_art_5000: precal@5000 {
247 reg = <0x5000 0x2f20>;
248 };
249 };
250 };
251 partition6@180000 {
252 compatible = "denx,fit";
253 label = "firmware";
254 reg = <0x00180000 0x01e80000>;
255 };
256 };
257 };
258 };
259
260 &blsp1_uart1 {
261 pinctrl-0 = <&serial_pins>;
262 pinctrl-names = "default";
263 status = "okay";
264 };
265
266 &cryptobam {
267 status = "okay";
268 };
269
270 &gmac {
271 status = "okay";
272 };
273
274 &switch {
275 status = "okay";
276 };
277
278 &swport4 {
279 status = "okay";
280 label = "lan1";
281
282 nvmem-cells = <&macaddr_art_e018>;
283 nvmem-cell-names = "mac-address";
284 };
285
286 &swport5 {
287 status = "okay";
288 label = "lan2";
289
290 nvmem-cells = <&macaddr_art_e010>;
291 nvmem-cell-names = "mac-address";
292 };
293
294 &usb3_ss_phy {
295 status = "okay";
296 };
297
298 &usb3_hs_phy {
299 status = "okay";
300 };
301
302 &usb2_hs_phy {
303 status = "okay";
304 };
305
306 &wifi0 {
307 status = "okay";
308 nvmem-cell-names = "pre-calibration";
309 nvmem-cells = <&precal_art_1000>;
310 };
311
312 &wifi1 {
313 status = "okay";
314 nvmem-cell-names = "pre-calibration";
315 nvmem-cells = <&precal_art_5000>;
316 };