ipq40xx: use existing labels for watchdog node
[openwrt/openwrt.git] / target / linux / ipq40xx / files-6.6 / arch / arm / boot / dts / qcom / qcom-ipq4018-rt-ac58u.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 #include <dt-bindings/leds/common.h>
8
9 / {
10 model = "ASUS RT-AC58U";
11 compatible = "asus,rt-ac58u";
12
13 memory {
14 device_type = "memory";
15 reg = <0x80000000 0x8000000>;
16 };
17
18 aliases {
19 led-boot = &led_power;
20 led-failsafe = &led_power;
21 led-running = &led_power;
22 led-upgrade = &led_power;
23 };
24
25 soc {
26 rng@22000 {
27 status = "okay";
28 };
29
30 mdio@90000 {
31 status = "okay";
32 };
33
34 tcsr@1949000 {
35 compatible = "qcom,tcsr";
36 reg = <0x1949000 0x100>;
37 qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
38 };
39
40 tcsr@194b000 {
41 compatible = "qcom,tcsr";
42 reg = <0x194b000 0x100>;
43 qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
44 };
45
46 ess_tcsr@1953000 {
47 compatible = "qcom,tcsr";
48 reg = <0x1953000 0x1000>;
49 qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
50 };
51
52 tcsr@1957000 {
53 compatible = "qcom,tcsr";
54 reg = <0x1957000 0x100>;
55 qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
56 };
57
58 crypto@8e3a000 {
59 status = "okay";
60 };
61 };
62
63 keys {
64 compatible = "gpio-keys";
65
66 reset {
67 label = "reset";
68 gpios = <&tlmm 4 GPIO_ACTIVE_LOW>;
69 linux,code = <KEY_RESTART>;
70 };
71
72 wps {
73 label = "wps";
74 gpios = <&tlmm 63 GPIO_ACTIVE_LOW>;
75 linux,code = <KEY_WPS_BUTTON>;
76 };
77 };
78
79 leds {
80 compatible = "gpio-leds";
81
82 led_power: led-0 {
83 color = <LED_COLOR_ID_BLUE>;
84 function = LED_FUNCTION_POWER;
85 gpios = <&tlmm 3 GPIO_ACTIVE_HIGH>;
86 panic-indicator;
87 };
88
89 led-1 {
90 color = <LED_COLOR_ID_BLUE>;
91 function = LED_FUNCTION_WAN;
92 gpios = <&tlmm 1 GPIO_ACTIVE_HIGH>;
93 /*
94 * linux,default-trigger = "90000.mdio-1:04:link";
95 * sadly still lacks rx+tx
96 */
97 };
98
99 led-2 {
100 color = <LED_COLOR_ID_BLUE>;
101 function = LED_FUNCTION_WLAN;
102 function-enumerator = <2>;
103 gpios = <&tlmm 58 GPIO_ACTIVE_HIGH>;
104 linux,default-trigger = "phy0tpt";
105 };
106
107 led-3 {
108 color = <LED_COLOR_ID_BLUE>;
109 function = LED_FUNCTION_WLAN;
110 function-enumerator = <5>;
111 gpios = <&tlmm 5 GPIO_ACTIVE_HIGH>;
112 linux,default-trigger = "phy1tpt";
113 };
114
115 led-4 {
116 color = <LED_COLOR_ID_BLUE>;
117 function = LED_FUNCTION_USB;
118 gpios = <&tlmm 0 GPIO_ACTIVE_HIGH>;
119 trigger-sources = <&usb3_port1>, <&usb3_port2>;
120 linux,default-trigger = "usbport";
121 };
122
123 led-5 {
124 color = <LED_COLOR_ID_BLUE>;
125 function = LED_FUNCTION_LAN;
126 gpios = <&tlmm 2 GPIO_ACTIVE_HIGH>;
127 };
128 };
129 };
130
131 &watchdog {
132 status = "okay";
133 };
134
135 &cryptobam {
136 status = "okay";
137 };
138
139 &blsp_dma {
140 status = "okay";
141 };
142
143 &tlmm {
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 mux {
154 function = "blsp_spi0";
155 pins = "gpio55", "gpio56", "gpio57";
156 drive-strength = <12>;
157 bias-disable;
158 };
159
160 mux_cs {
161 function = "gpio";
162 pins = "gpio54", "gpio59";
163 drive-strength = <2>;
164 bias-disable;
165 output-high;
166 };
167 };
168 };
169
170 &blsp1_spi1 { /* BLSP1 QUP1 */
171 pinctrl-0 = <&spi_0_pins>;
172 pinctrl-names = "default";
173 status = "okay";
174 cs-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>,
175 <&tlmm 59 GPIO_ACTIVE_HIGH>;
176
177 flash@0 {
178 /*
179 * U-boot looks for "n25q128a11" node,
180 * if we don't have it, it will spit out the following warning:
181 * "ipq: fdt fixup unable to find compatible node".
182 */
183 compatible = "jedec,spi-nor";
184 reg = <0>;
185 linux,modalias = "m25p80", "mx25l1606e", "n25q128a11";
186 spi-max-frequency = <30000000>;
187
188 partitions {
189 compatible = "fixed-partitions";
190 #address-cells = <1>;
191 #size-cells = <1>;
192
193 partition@0 {
194 label = "SBL1";
195 reg = <0x00000000 0x00040000>;
196 read-only;
197 };
198 partition@40000 {
199 label = "MIBIB";
200 reg = <0x00040000 0x00020000>;
201 read-only;
202 };
203 partition@60000 {
204 label = "QSEE";
205 reg = <0x00060000 0x00060000>;
206 read-only;
207 };
208 partition@c0000 {
209 label = "CDT";
210 reg = <0x000c0000 0x00010000>;
211 read-only;
212 };
213 partition@d0000 {
214 label = "DDRPARAMS";
215 reg = <0x000d0000 0x00010000>;
216 read-only;
217 };
218 partition@e0000 {
219 label = "APPSBLENV"; /* uboot env*/
220 reg = <0x000e0000 0x00010000>;
221 read-only;
222 };
223 partition@f0000 {
224 label = "APPSBL"; /* uboot */
225 reg = <0x000f0000 0x00080000>;
226 read-only;
227 };
228 partition@170000 {
229 label = "ART";
230 reg = <0x00170000 0x00010000>;
231 read-only;
232 };
233 /* 0x00180000 - 0x00200000 unused */
234 };
235 };
236
237 spi-nand@1 {
238 compatible = "spi-nand";
239 reg = <1>;
240 spi-max-frequency = <30000000>;
241
242 /*
243 * U-boot looks for "spinand,mt29f" node,
244 * if we don't have it, it will spit out the following warning:
245 * "ipq: fdt fixup unable to find compatible node".
246 */
247
248 partitions {
249 compatible = "fixed-partitions";
250 #address-cells = <1>;
251 #size-cells = <1>;
252
253 partition@0 {
254 label = "ubi";
255 reg = <0x00000000 0x08000000>;
256 };
257 };
258 };
259 };
260
261 &blsp1_uart1 {
262 pinctrl-0 = <&serial_pins>;
263 pinctrl-names = "default";
264 status = "okay";
265 };
266
267 &usb3_ss_phy {
268 status = "okay";
269 };
270
271 &usb3_hs_phy {
272 status = "okay";
273 };
274
275 &usb3 {
276 status = "okay";
277 };
278
279 &usb3_dwc {
280 #address-cells = <1>;
281 #size-cells = <0>;
282
283 usb3_port1: port@1 {
284 reg = <1>;
285 #trigger-source-cells = <0>;
286 };
287
288 usb3_port2: port@2 {
289 reg = <2>;
290 #trigger-source-cells = <0>;
291 };
292 };
293
294 &gmac {
295 status = "okay";
296 };
297
298 &switch {
299 status = "okay";
300 };
301
302 &swport1 {
303 status = "okay";
304 };
305
306 &swport2 {
307 status = "okay";
308 };
309
310 &swport3 {
311 status = "okay";
312 };
313
314 &swport4 {
315 status = "okay";
316 };
317
318 &swport5 {
319 status = "okay";
320 };
321
322 &wifi0 {
323 status = "okay";
324 qcom,ath10k-calibration-variant = "RT-AC58U";
325 };
326
327 &wifi1 {
328 status = "okay";
329 qcom,ath10k-calibration-variant = "RT-AC58U";
330 };