ipq40xx: add support for ASUS Lyra
[openwrt/openwrt.git] / target / linux / ipq40xx / files-4.19 / arch / arm / boot / dts / qcom-ipq4019-map-ac2200.dts
1 // SPDX-License-Identifier: GPL-2.0+ OR MIT
2 /dts-v1/;
3
4 #include "qcom-ipq4019.dtsi"
5 #include <dt-bindings/gpio/gpio.h>
6 #include <dt-bindings/input/input.h>
7 #include <dt-bindings/soc/qcom,tcsr.h>
8
9 / {
10 model = "ASUS Lyra MAP-AC2200";
11 compatible = "asus,map-ac2200";
12
13 aliases {
14 led-boot = &led_blue0;
15 led-failsafe = &led_red0;
16 led-running = &led_blue0;
17 led-upgrade = &led_red0;
18 };
19
20 soc {
21 rng@22000 {
22 status = "okay";
23 };
24
25 mdio@90000 {
26 status = "okay";
27 };
28
29 ess-psgmii@98000 {
30 status = "okay";
31 };
32
33 tcsr@1949000 {
34 compatible = "qcom,tcsr";
35 reg = <0x1949000 0x100>;
36 qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
37 };
38
39 ess_tcsr@1953000 {
40 compatible = "qcom,tcsr";
41 reg = <0x1953000 0x1000>;
42 qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
43 };
44
45 tcsr@1957000 {
46 compatible = "qcom,tcsr";
47 reg = <0x1957000 0x100>;
48 qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
49 };
50
51 usb2@60f8800 {
52 status = "okay";
53 };
54
55 crypto@8e3a000 {
56 status = "okay";
57 };
58
59 watchdog@b017000 {
60 status = "okay";
61 };
62
63 ess-switch@c000000 {
64 status = "okay";
65 };
66
67 edma@c080000 {
68 status = "okay";
69 };
70 };
71
72 keys {
73 compatible = "gpio-keys";
74
75 reset {
76 label = "reset";
77 gpios = <&tlmm 34 GPIO_ACTIVE_LOW>;
78 linux,code = <KEY_RESTART>;
79 };
80
81 wps {
82 label = "wps";
83 gpios = <&tlmm 18 GPIO_ACTIVE_LOW>;
84 linux,code = <KEY_WPS_BUTTON>;
85 };
86 };
87 };
88
89 &nand {
90 pinctrl-0 = <&nand_pins>;
91 pinctrl-names = "default";
92 status = "okay";
93
94 nand@0 {
95 partitions {
96 compatible = "fixed-partitions";
97 #address-cells = <1>;
98 #size-cells = <1>;
99
100 partition@0 {
101 label = "SBL1";
102 reg = <0x0 0x80000>;
103 read-only;
104 };
105
106 partition@80000 {
107 label = "MIBIB";
108 reg = <0x80000 0x80000>;
109 read-only;
110 };
111
112 partition@100000 {
113 label = "QSEE";
114 reg = <0x100000 0x100000>;
115 read-only;
116 };
117
118 partition@200000 {
119 label = "CDT";
120 reg = <0x200000 0x80000>;
121 read-only;
122 };
123
124 partition@280000 {
125 label = "APPSBL";
126 reg = <0x280000 0x140000>;
127 read-only;
128 };
129
130 partition@3c0000 {
131 label = "APPSBLENV";
132 reg = <0x3c0000 0x40000>;
133 read-only;
134 };
135
136 partition@400000 {
137 label = "ubi";
138 reg = <0x400000 0x7c00000>;
139 };
140 };
141 };
142 };
143
144 &tlmm {
145 i2c_0_pins: i2c_0_pinmux {
146 pinmux {
147 function = "blsp_i2c0";
148 pins = "gpio20", "gpio21";
149 drive-strength = <16>;
150 bias-disable;
151 };
152 };
153
154 serial_pins: serial_pinmux {
155 mux {
156 pins = "gpio16", "gpio17";
157 function = "blsp_uart0";
158 bias-disable;
159 };
160 };
161
162 nand_pins: nand_pins {
163 pullups {
164 pins = "gpio52", "gpio53", "gpio58",
165 "gpio59";
166 function = "qpic";
167 bias-pull-up;
168 };
169
170 pulldowns {
171 pins = "gpio54", "gpio55", "gpio56",
172 "gpio57", "gpio60", "gpio61",
173 "gpio62", "gpio63", "gpio64",
174 "gpio65", "gpio66", "gpio67",
175 "gpio68", "gpio69";
176 function = "qpic";
177 bias-pull-down;
178 };
179 };
180 };
181
182 &cryptobam {
183 status = "okay";
184 };
185
186 &blsp_dma {
187 status = "okay";
188 };
189
190 &qpic_bam {
191 status = "okay";
192 };
193
194 &wifi0 {
195 status = "okay";
196 qcom,ath10k-calibration-variant = "ASUS-MAP-AC2200";
197 };
198
199 &wifi1 {
200 status = "okay";
201 qcom,ath10k-calibration-variant = "ASUS-MAP-AC2200";
202 };
203
204 &pcie0 {
205 status = "okay";
206 perst-gpio = <&tlmm 38 GPIO_ACTIVE_LOW>;
207 wake-gpio = <&tlmm 50 GPIO_ACTIVE_LOW>;
208
209 bridge@0,0 {
210 reg = <0x00000000 0 0 0 0>;
211 #address-cells = <3>;
212 #size-cells = <2>;
213 ranges;
214
215 wifi2: wifi@1,0 {
216 compatible = "qcom,ath10k";
217 status = "okay";
218 reg = <0x00010000 0 0 0 0>;
219 qcom,ath10k-calibration-variant = "ASUS-MAP-AC2200";
220 };
221 };
222 };
223
224 &usb2_hs_phy {
225 /* Bluetooth module attached via USB */
226 status = "okay";
227 };
228
229 &blsp1_i2c3 {
230 pinctrl-0 = <&i2c_0_pins>;
231 pinctrl-names = "default";
232 status = "okay";
233
234 led-controller@32 {
235 /* 9-channel RGB LED controller */
236 compatible = "national,lp5523";
237 reg = <0x32>;
238 clock-mode = [01];
239
240 led_blue0: blue0 {
241 chan-name = "blue0";
242 label = "map-ac2200:blue:chan0";
243 led-cur = [fa];
244 max-cur = [ff];
245 };
246
247 blue1 {
248 chan-name = "blue1";
249 label = "map-ac2200:blue:chan1";
250 led-cur = [fa];
251 max-cur = [ff];
252 };
253
254 blue2 {
255 chan-name = "blue2";
256 label = "map-ac2200:blue:chan2";
257 led-cur = [fa];
258 max-cur = [ff];
259 };
260
261 led_green0: green0 {
262 chan-name = "green0";
263 label = "map-ac2200:green:chan0";
264 led-cur = [fa];
265 max-cur = [ff];
266 };
267
268 green1 {
269 chan-name = "green1";
270 label = "map-ac2200:green:chan1";
271 led-cur = [fa];
272 max-cur = [ff];
273 };
274
275 green2 {
276 chan-name = "green2";
277 label = "map-ac2200:green:chan2";
278 led-cur = [fa];
279 max-cur = [ff];
280 };
281
282 led_red0: red0 {
283 chan-name = "red0";
284 label = "map-ac2200:red:chan0";
285 led-cur = [fa];
286 max-cur = [ff];
287 };
288
289 red1 {
290 chan-name = "red1";
291 label = "map-ac2200:red:chan1";
292 led-cur = [fa];
293 max-cur = [ff];
294 };
295
296 red2 {
297 chan-name = "red2";
298 label = "map-ac2200:red:chan2";
299 led-cur = [fa];
300 max-cur = [ff];
301 };
302 };
303 };
304
305 &blsp1_uart1 {
306 pinctrl-0 = <&serial_pins>;
307 pinctrl-names = "default";
308 status = "okay";
309 };