ipq40xx: Lyra: update RGB LED-Controller node for 5.10+
[openwrt/staging/chunkeey.git] / target / linux / ipq40xx / files / arch / arm / boot / dts / qcom-ipq4019-map-ac2200.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 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 enable_ext_pa_high {
181 gpio-hog;
182 gpios = <44 GPIO_ACTIVE_HIGH>,
183 <46 GPIO_ACTIVE_HIGH>;
184 output-high;
185 bias-pull-down;
186 line-name = "enable external PA output-high";
187 };
188 enable_ext_pa_low {
189 gpio-hog;
190 gpios = <45 GPIO_ACTIVE_HIGH>,
191 <47 GPIO_ACTIVE_HIGH>;
192 output-low;
193 bias-pull-down;
194 line-name = "enable external PA output-low";
195 };
196 };
197
198 &cryptobam {
199 status = "okay";
200 };
201
202 &blsp_dma {
203 status = "okay";
204 };
205
206 &qpic_bam {
207 status = "okay";
208 };
209
210 &wifi0 {
211 status = "okay";
212 qcom,ath10k-calibration-variant = "ASUS-MAP-AC2200";
213 };
214
215 &wifi1 {
216 status = "okay";
217 qcom,ath10k-calibration-variant = "ASUS-MAP-AC2200";
218 ieee80211-freq-limit = <5470000 5875000>;
219 };
220
221 &pcie0 {
222 status = "okay";
223 perst-gpio = <&tlmm 38 GPIO_ACTIVE_LOW>;
224 wake-gpio = <&tlmm 50 GPIO_ACTIVE_LOW>;
225
226 bridge@0,0 {
227 reg = <0x00000000 0 0 0 0>;
228 #address-cells = <3>;
229 #size-cells = <2>;
230 ranges;
231
232 wifi2: wifi@1,0 {
233 compatible = "qcom,ath10k";
234 status = "okay";
235 reg = <0x00010000 0 0 0 0>;
236 qcom,ath10k-calibration-variant = "ASUS-MAP-AC2200";
237 ieee80211-freq-limit = <5170000 5350000>;
238 };
239 };
240 };
241
242 &usb2_hs_phy {
243 /* Bluetooth module attached via USB */
244 status = "okay";
245 };
246
247 &blsp1_i2c3 {
248 pinctrl-0 = <&i2c_0_pins>;
249 pinctrl-names = "default";
250 status = "okay";
251
252 led-controller@32 {
253 /* 9-channel RGB LED controller */
254 compatible = "national,lp5523";
255 reg = <0x32>;
256 clock-mode = /bits/ 8 <1>;
257 #address-cells = <1>;
258 #size-cells = <0>;
259
260 /*
261 * There is only one single extremely bright RGB-LED.
262 * The RGB-color channels are running in parallel to
263 * increase the current delivery capabilities beyond
264 * what a single PWM-output of the controller can do.
265 */
266
267 led_blue0: led@0 {
268 chan-name = "blue-0";
269 led-cur = /bits/ 8 <0xfa>;
270 max-cur = /bits/ 8 <0xff>;
271 reg = <0>;
272 color = <LED_COLOR_ID_BLUE>;
273 function-enumerator = <0>;
274 };
275
276 led@1 {
277 chan-name = "blue-1";
278 led-cur = /bits/ 8 <0xfa>;
279 max-cur = /bits/ 8 <0xff>;
280 reg = <1>;
281 color = <LED_COLOR_ID_BLUE>;
282 function-enumerator = <1>;
283 };
284
285 led@2 {
286 chan-name = "blue-2";
287 led-cur = /bits/ 8 <0xfa>;
288 max-cur = /bits/ 8 <0xff>;
289 reg = <2>;
290 color = <LED_COLOR_ID_BLUE>;
291 function-enumerator = <2>;
292 };
293
294 led_green0: led@3 {
295 chan-name = "green-0";
296 led-cur = /bits/ 8 <0xfa>;
297 max-cur = /bits/ 8 <0xff>;
298 reg = <3>;
299 color = <LED_COLOR_ID_GREEN>;
300 function-enumerator = <0>;
301 };
302
303 led@4 {
304 chan-name = "green-1";
305 led-cur = /bits/ 8 <0xfa>;
306 max-cur = /bits/ 8 <0xff>;
307 reg = <4>;
308 color = <LED_COLOR_ID_GREEN>;
309 function-enumerator = <1>;
310 };
311
312 led@5 {
313 chan-name = "green-2";
314 led-cur = /bits/ 8 <0xfa>;
315 max-cur = /bits/ 8 <0xff>;
316 reg = <5>;
317 color = <LED_COLOR_ID_GREEN>;
318 function-enumerator = <2>;
319 };
320
321 led_red0: led@6 {
322 chan-name = "red-0";
323 led-cur = /bits/ 8 <0xfa>;
324 max-cur = /bits/ 8 <0xff>;
325 reg = <6>;
326 color = <LED_COLOR_ID_RED>;
327 function-enumerator = <0>;
328 };
329
330 led@7 {
331 chan-name = "red-1";
332 led-cur = /bits/ 8 <0xfa>;
333 max-cur = /bits/ 8 <0xff>;
334 reg = <7>;
335 color = <LED_COLOR_ID_RED>;
336 function-enumerator = <1>;
337 };
338
339 led@8 {
340 chan-name = "red-2";
341 led-cur = /bits/ 8 <0xfa>;
342 max-cur = /bits/ 8 <0xff>;
343 reg = <8>;
344 color = <LED_COLOR_ID_RED>;
345 function-enumerator = <2>;
346 };
347 };
348 };
349
350 &blsp1_uart1 {
351 pinctrl-0 = <&serial_pins>;
352 pinctrl-names = "default";
353 status = "okay";
354 };