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