ipq40xx: dts: Unify naming of gpio-keys nodes
[openwrt/openwrt.git] / target / linux / ipq40xx / files-4.14 / 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", "qcom,ipq4019";
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 mdio@90000 {
30 status = "okay";
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 dwc3@6000000 {
65 #address-cells = <1>;
66 #size-cells = <0>;
67
68 usb2_port1: port@1 {
69 reg = <1>;
70 #trigger-source-cells = <0>;
71 };
72 };
73 };
74
75 usb3@8af8800 {
76 status = "okay";
77
78 dwc3@8a00000 {
79 #address-cells = <1>;
80 #size-cells = <0>;
81
82 usb3_port1: port@1 {
83 reg = <1>;
84 #trigger-source-cells = <0>;
85 };
86
87 usb3_port2: port@2 {
88 reg = <2>;
89 #trigger-source-cells = <0>;
90 };
91 };
92 };
93
94 crypto@8e3a000 {
95 status = "okay";
96 };
97
98 wifi@a000000 {
99 status = "okay";
100 qcom,ath10k-calibration-variant = "RT-AC58U";
101 };
102
103 wifi@a800000 {
104 status = "okay";
105 qcom,ath10k-calibration-variant = "RT-AC58U";
106 };
107
108 watchdog@b017000 {
109 status = "okay";
110 };
111
112 ess-switch@c000000 {
113 status = "okay";
114 };
115
116 edma@c080000 {
117 status = "okay";
118 };
119 };
120
121 keys {
122 compatible = "gpio-keys";
123
124 reset {
125 label = "reset";
126 gpios = <&tlmm 4 GPIO_ACTIVE_LOW>;
127 linux,code = <KEY_RESTART>;
128 };
129
130 wps {
131 label = "wps";
132 gpios = <&tlmm 63 GPIO_ACTIVE_LOW>;
133 linux,code = <KEY_WPS_BUTTON>;
134 };
135 };
136
137 gpio-leds {
138 compatible = "gpio-leds";
139
140 power: status {
141 label = "rt-ac58u:blue:status";
142 gpios = <&tlmm 3 GPIO_ACTIVE_HIGH>;
143 };
144
145 wan {
146 label = "rt-ac58u:blue:wan";
147 gpios = <&tlmm 1 GPIO_ACTIVE_HIGH>;
148 };
149
150 wlan2G {
151 label = "rt-ac58u:blue:wlan2G";
152 gpios = <&tlmm 58 GPIO_ACTIVE_HIGH>;
153 };
154
155 wan5G {
156 label = "rt-ac58u:blue:wlan5G";
157 gpios = <&tlmm 5 GPIO_ACTIVE_HIGH>;
158 };
159
160 usb {
161 label = "rt-ac58u:blue:usb";
162 gpios = <&tlmm 0 GPIO_ACTIVE_HIGH>;
163 trigger-sources = <&usb3_port1>, <&usb3_port2>, <&usb2_port1>;
164 linux,default-trigger = "usbport";
165 };
166
167 lan {
168 label = "rt-ac58u:blue:lan";
169 gpios = <&tlmm 2 GPIO_ACTIVE_HIGH>;
170 };
171 };
172 };
173
174 &cryptobam {
175 status = "okay";
176 };
177
178 &blsp_dma {
179 status = "okay";
180 };
181
182 &tlmm {
183 serial_pins: serial_pinmux {
184 mux {
185 pins = "gpio60", "gpio61";
186 function = "blsp_uart0";
187 bias-disable;
188 };
189 };
190
191 spi_0_pins: spi_0_pinmux {
192 mux {
193 function = "blsp_spi0";
194 pins = "gpio55", "gpio56", "gpio57";
195 drive-strength = <12>;
196 bias-disable;
197 };
198
199 mux_cs {
200 function = "gpio";
201 pins = "gpio54", "gpio59";
202 drive-strength = <2>;
203 bias-disable;
204 output-high;
205 };
206 };
207 };
208
209 &blsp1_spi1 { /* BLSP1 QUP1 */
210 pinctrl-0 = <&spi_0_pins>;
211 pinctrl-names = "default";
212 status = "okay";
213 cs-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>,
214 <&tlmm 59 GPIO_ACTIVE_HIGH>;
215
216 flash@0 {
217 #address-cells = <1>;
218 #size-cells = <0>;
219 /*
220 * U-boot looks for "n25q128a11" node,
221 * if we don't have it, it will spit out the following warning:
222 * "ipq: fdt fixup unable to find compatible node".
223 */
224 compatible = "jedec,spi-nor";
225 reg = <0>;
226 linux,modalias = "m25p80", "mx25l1606e", "n25q128a11";
227 spi-max-frequency = <24000000>;
228
229 partitions {
230 compatible = "fixed-partitions";
231 #address-cells = <1>;
232 #size-cells = <1>;
233
234 partition0@0 {
235 label = "SBL1";
236 reg = <0x00000000 0x00040000>;
237 read-only;
238 };
239 partition1@40000 {
240 label = "MIBIB";
241 reg = <0x00040000 0x00020000>;
242 read-only;
243 };
244 partition2@60000 {
245 label = "QSEE";
246 reg = <0x00060000 0x00060000>;
247 read-only;
248 };
249 partition3@c0000 {
250 label = "CDT";
251 reg = <0x000c0000 0x00010000>;
252 read-only;
253 };
254 partition4@d0000 {
255 label = "DDRPARAMS";
256 reg = <0x000d0000 0x00010000>;
257 read-only;
258 };
259 partition5@e0000 {
260 label = "APPSBLENV"; /* uboot env*/
261 reg = <0x000e0000 0x00010000>;
262 read-only;
263 };
264 partition5@f0000 {
265 label = "APPSBL"; /* uboot */
266 reg = <0x000f0000 0x00080000>;
267 read-only;
268 };
269 partition5@170000 {
270 label = "ART";
271 reg = <0x00170000 0x00010000>;
272 read-only;
273 };
274 /* 0x00180000 - 0x00200000 unused */
275 };
276 };
277
278 flash@1 {
279 #address-cells = <1>;
280 #size-cells = <0>;
281 compatible = "spinand,mt29f";
282 reg = <1>;
283 spi-max-frequency = <24000000>;
284
285 /*
286 * U-boot looks for "spinand,mt29f" node,
287 * if we don't have it, it will spit out the following warning:
288 * "ipq: fdt fixup unable to find compatible node".
289 */
290
291 partitions {
292 compatible = "fixed-partitions";
293 #address-cells = <1>;
294 #size-cells = <1>;
295
296 partition@0 {
297 label = "ubi";
298 reg = <0x00000000 0x08000000>;
299 };
300 };
301 };
302 };
303
304 &blsp1_uart1 {
305 pinctrl-0 = <&serial_pins>;
306 pinctrl-names = "default";
307 status = "okay";
308 };
309
310 &usb3_ss_phy {
311 status = "okay";
312 };
313
314 &usb3_hs_phy {
315 status = "okay";
316 };
317
318 &usb2_hs_phy {
319 status = "okay";
320 };