Last active 1735916005

JIaxyga's Avatar JIaxyga revised this gist 1735916005. Go to revision

1 file changed, 819 insertions

gistfile1.txt(file created)

@@ -0,0 +1,819 @@
1 + // SPDX-License-Identifier: BSD-3-Clause
2 + /*
3 + * Copyright (c) 2025, Danila Tikhonov <[email protected]>
4 + */
5 + /dts-v1/;
6 +
7 + #include <dt-bindings/leds/common.h>
8 + #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
9 + #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
10 +
11 + #include "sm8475.dtsi"
12 + #include "pm8350.dtsi"
13 + #include "pm8350b.dtsi"
14 + #include "pm8350c.dtsi"
15 + #include "pm8450.dtsi"
16 + #include "pmk8350.dtsi"
17 + #include "pmr735a.dtsi"
18 +
19 + /delete-node/ &video_mem;
20 + /delete-node/ &adsp_mem;
21 + /delete-node/ &rmtfs_mem;
22 +
23 + / {
24 + model = "Nothing Phone (2)";
25 + compatible = "nothing,pong", "qcom,sm8475";
26 + chassis-type = "handset";
27 +
28 + aliases {
29 + hsuart0 = &uart20;
30 + serial0 = &uart7;
31 + };
32 +
33 + chosen {
34 + #address-cells = <2>;
35 + #size-cells = <2>;
36 + ranges;
37 +
38 + bootargs = "PMOS_NOSPLASH console=tty0 clk_ignore_unused pd_ignore_unused";
39 +
40 + framebuffer: framebuffer@b8000000 {
41 + compatible = "simple-framebuffer";
42 + reg = <0x0 0xb8000000 0x0 0x2b00000>;
43 + width = <1080>;
44 + height = <2412>;
45 + stride = <(1080 * 4)>;
46 + format = "a8r8g8b8";
47 +
48 + clocks = <&gcc GCC_DISP_HF_AXI_CLK>;
49 + };
50 + };
51 +
52 + /* goodix,fingerprint */
53 +
54 + gpio-keys {
55 + compatible = "gpio-keys";
56 +
57 + pinctrl-0 = <&volume_up_n>;
58 + pinctrl-names = "default";
59 +
60 + key-volume-up {
61 + label = "Volume Up";
62 + linux,code = <KEY_VOLUMEUP>;
63 + gpios = <&pm8350_gpios 6 GPIO_ACTIVE_LOW>;
64 + debounce-interval = <15>;
65 + linux,can-disable;
66 + wakeup-source;
67 + };
68 + };
69 +
70 + reserved-memory {
71 + adsp_mem: memory@85700000 {
72 + reg = <0x0 0x85700000 0x0 0x2800000>;
73 + no-map;
74 + };
75 +
76 + ramoops@85200000 {
77 + compatible = "ramoops";
78 + reg = <0x0 0x85200000 0x0 0x400000>;
79 +
80 + record-size = <0x200000>;
81 + pmsg-size = <0x200000>;
82 + console-size = <0x200000>;
83 + no-map;
84 + };
85 +
86 + video_mem: memory@9fd00000 {
87 + reg = <0x0 0x9fd00000 0x0 0x700000>;
88 + no-map;
89 + };
90 +
91 + splash_region@b8000000 {
92 + reg = <0x0 0xb8000000 0x0 0x2b00000>;
93 + no-map;
94 + };
95 +
96 + /*
97 + * bootloader_log_region: reg = <0x0 0xa7605000 0x0 0x8000>;
98 + * splash_region: reg = <0x0 0xb8000000 0x0 0x2b00000>;
99 + */
100 +
101 + rmtfs_mem: memory@fc700000 {
102 + compatible = "qcom,rmtfs-mem";
103 + reg = <0x0 0xf3300000 0x0 0x280000>;
104 + no-map;
105 +
106 + qcom,client-id = <1>;
107 + qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>;
108 + };
109 + };
110 +
111 + vph_pwr: vph-pwr-regulator {
112 + compatible = "regulator-fixed";
113 + regulator-name = "vph_pwr";
114 + regulator-min-microvolt = <3700000>;
115 + regulator-max-microvolt = <3700000>;
116 +
117 + regulator-always-on;
118 + regulator-boot-on;
119 + };
120 + };
121 +
122 + &apps_rsc {
123 + regulators-0 {
124 + compatible = "qcom,pm8350-rpmh-regulators";
125 + qcom,pmic-id = "b";
126 +
127 + vdd-s1-supply = <&vph_pwr>;
128 + vdd-s2-supply = <&vph_pwr>;
129 + vdd-s3-supply = <&vph_pwr>;
130 + vdd-s4-supply = <&vph_pwr>;
131 + vdd-s5-supply = <&vph_pwr>;
132 + vdd-s6-supply = <&vph_pwr>;
133 + vdd-s7-supply = <&vph_pwr>;
134 + vdd-s8-supply = <&vph_pwr>;
135 + vdd-s9-supply = <&vph_pwr>;
136 + vdd-s10-supply = <&vph_pwr>;
137 + vdd-s11-supply = <&vph_pwr>;
138 + vdd-s12-supply = <&vph_pwr>;
139 +
140 + vdd-l1-l4-supply = <&pm8350_s11>;
141 + vdd-l2-l7-supply = <&vreg_bob>;
142 + vdd-l3-l5-supply = <&pm8350_s11>;
143 + vdd-l6-l9-l10-supply = <&pm8350_s12>;
144 +
145 + /*
146 + * ARC regulators:
147 + * s5 - gfx.lvl
148 + * l8 - lcx.lvl
149 + */
150 +
151 + pm8350_s10: smps10 {
152 + regulator-name = "pm8350_s10";
153 + regulator-min-microvolt = <1800000>;
154 + regulator-max-microvolt = <1800000>;
155 + };
156 +
157 + pm8350_s11: smps11 {
158 + regulator-name = "pm8350_s11";
159 + regulator-min-microvolt = <382000>;
160 + regulator-max-microvolt = <1170000>;
161 + };
162 +
163 + pm8350_s12: smps12 {
164 + regulator-name = "pm8350_s12";
165 + regulator-min-microvolt = <1224000>;
166 + regulator-max-microvolt = <2040000>;
167 + };
168 +
169 + pm8350_l1: ldo1 {
170 + regulator-name = "pm8350_l1";
171 + regulator-min-microvolt = <830000>;
172 + regulator-max-microvolt = <920000>;
173 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
174 + };
175 +
176 + pm8350_l2: ldo2 {
177 + regulator-name = "pm8350_l2";
178 + regulator-min-microvolt = <2700000>;
179 + regulator-max-microvolt = <3300000>;
180 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
181 + };
182 +
183 + pm8350_l3: ldo3 {
184 + regulator-name = "pm8350_l3";
185 + regulator-min-microvolt = <870000>;
186 + regulator-max-microvolt = <970000>;
187 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
188 + };
189 +
190 + pm8350_l5: ldo5 {
191 + regulator-name = "pm8350_l5";
192 + regulator-min-microvolt = <720000>;
193 + regulator-max-microvolt = <958000>;
194 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
195 + };
196 +
197 + pm8350_l6: ldo6 {
198 + regulator-name = "pm8350_l6";
199 + regulator-min-microvolt = <1200000>;
200 + regulator-max-microvolt = <1216000>;
201 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
202 + };
203 +
204 + pm8350_l7: ldo7 {
205 + regulator-name = "pm8350_l7";
206 + regulator-min-microvolt = <2400000>;
207 + regulator-max-microvolt = <3544000>;
208 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
209 + };
210 +
211 + pm8350_l9: ldo9 {
212 + regulator-name = "pm8350_l9";
213 + regulator-min-microvolt = <1200000>;
214 + regulator-max-microvolt = <1304000>;
215 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
216 + };
217 + };
218 +
219 + regulators-1 {
220 + compatible = "qcom,pm8350c-rpmh-regulators";
221 + qcom,pmic-id = "c";
222 +
223 + vdd-s1-supply = <&vph_pwr>;
224 + vdd-s2-supply = <&vph_pwr>;
225 + vdd-s3-supply = <&vph_pwr>;
226 + vdd-s4-supply = <&vph_pwr>;
227 + vdd-s5-supply = <&vph_pwr>;
228 + vdd-s6-supply = <&vph_pwr>;
229 + vdd-s7-supply = <&vph_pwr>;
230 + vdd-s8-supply = <&vph_pwr>;
231 + vdd-s9-supply = <&vph_pwr>;
232 + vdd-s10-supply = <&vph_pwr>;
233 +
234 + vdd-l1-l12-supply = <&pm8350c_s1>;
235 + vdd-l2-l8-supply = <&pm8350c_s1>;
236 + vdd-l3-l4-l5-l7-l13-supply = <&vreg_bob>;
237 + vdd-l6-l9-l11-supply = <&vreg_bob>;
238 + vdd-l10-supply = <&pm8350_s12>;
239 +
240 + vdd-bob-supply = <&vph_pwr>;
241 +
242 + /*
243 + * ARC regulators:
244 + * s2 - mxc.lvl
245 + * s4 - mss.lvl
246 + * s6 - cx.lvl
247 + */
248 +
249 + pm8350c_s1: smps1 {
250 + regulator-name = "pm8350c_s1";
251 + regulator-min-microvolt = <1900000>;
252 + regulator-max-microvolt = <2024000>;
253 + };
254 +
255 + pm8350c_s10: smps10 {
256 + regulator-name = "pm8350c_s10";
257 + regulator-min-microvolt = <1052000>;
258 + regulator-max-microvolt = <1170000>;
259 + };
260 +
261 + vreg_bob: bob {
262 + regulator-name = "vreg_bob";
263 + regulator-min-microvolt = <3008000>;
264 + regulator-max-microvolt = <3960000>;
265 + regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
266 + };
267 +
268 + pm8350c_l2: ldo2 {
269 + regulator-name = "pm8350c_l2";
270 + regulator-min-microvolt = <1800000>;
271 + regulator-max-microvolt = <1980000>;
272 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
273 + };
274 +
275 + pm8350c_l3: ldo3 {
276 + regulator-name = "pm8350c_l3";
277 + regulator-min-microvolt = <2700000>;
278 + regulator-max-microvolt = <3544000>;
279 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
280 + };
281 +
282 + pm8350c_l4: ldo4 {
283 + regulator-name = "pm8350c_l4";
284 + regulator-min-microvolt = <1620000>;
285 + regulator-max-microvolt = <3300000>;
286 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
287 + };
288 +
289 + pm8350c_l5: ldo5 {
290 + regulator-name = "pm8350c_l5";
291 + regulator-min-microvolt = <1620000>;
292 + regulator-max-microvolt = <3300000>;
293 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
294 + };
295 +
296 + pm8350c_l6: ldo6 {
297 + regulator-name = "pm8350c_l6";
298 + regulator-min-microvolt = <1800000>;
299 + regulator-max-microvolt = <3544000>;
300 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
301 + };
302 +
303 + pm8350c_l7: ldo7 {
304 + regulator-name = "pm8350c_l7";
305 + regulator-min-microvolt = <3000000>;
306 + regulator-max-microvolt = <3544000>;
307 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
308 + };
309 +
310 + pm8350c_l8: ldo8 {
311 + regulator-name = "pm8350c_l8";
312 + regulator-min-microvolt = <1800000>;
313 + regulator-max-microvolt = <2000000>;
314 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
315 + };
316 +
317 + pm8350c_l9: ldo9 {
318 + regulator-name = "pm8350c_l9";
319 + regulator-min-microvolt = <2700000>;
320 + regulator-max-microvolt = <3544000>;
321 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
322 + };
323 +
324 + pm8350c_l10: ldo10 {
325 + regulator-name = "pm8350c_l10";
326 + regulator-min-microvolt = <1200000>;
327 + regulator-max-microvolt = <1304000>;
328 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
329 + };
330 +
331 + pm8350c_l12: ldo12 {
332 + regulator-name = "pm8350c_l12";
333 + regulator-min-microvolt = <1800000>;
334 + regulator-max-microvolt = <1980000>;
335 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
336 + };
337 +
338 + pm8350c_l13: ldo13 {
339 + regulator-name = "pm8350c_l13";
340 + regulator-min-microvolt = <2700000>;
341 + regulator-max-microvolt = <3544000>;
342 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
343 + };
344 + };
345 +
346 + regulators-2 {
347 + compatible = "qcom,pm8450-rpmh-regulators";
348 + qcom,pmic-id = "h";
349 +
350 + vdd-s1-supply = <&vph_pwr>;
351 + vdd-s2-supply = <&vph_pwr>;
352 + vdd-s3-supply = <&vph_pwr>;
353 + vdd-s4-supply = <&vph_pwr>;
354 + vdd-s5-supply = <&vph_pwr>;
355 + vdd-s6-supply = <&vph_pwr>;
356 +
357 + vdd-l2-supply = <&vreg_bob>;
358 + vdd-l3-supply = <&vreg_bob>;
359 + vdd-l4-supply = <&vreg_bob>;
360 +
361 + /*
362 + * ARC regulators:
363 + * S2 - ebi.lvl
364 + * S4 - mmcx.lvl
365 + * S6 - mx.lvl
366 + * L1 - lmx.lvl
367 + */
368 +
369 + pm8450_s3: smps3 {
370 + regulator-name = "pm8450_s3";
371 + regulator-min-microvolt = <470000>;
372 + regulator-max-microvolt = <570000>;
373 + };
374 +
375 + pm8450_l2: ldo2 {
376 + regulator-name = "pm8450_l2";
377 + regulator-min-microvolt = <820000>;
378 + regulator-max-microvolt = <958000>;
379 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
380 + };
381 +
382 + pm8450_l3: ldo3 {
383 + regulator-name = "pm8450_l3";
384 + regulator-min-microvolt = <866000>;
385 + regulator-max-microvolt = <958000>;
386 + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
387 + };
388 + };
389 +
390 + regulators-3 {
391 + compatible = "qcom,pmr735a-rpmh-regulators";
392 + qcom,pmic-id = "e";
393 +
394 + vdd-s1-supply = <&vph_pwr>;
395 + vdd-s2-supply = <&vph_pwr>;
396 + vdd-s3-supply = <&vph_pwr>;
397 +
398 + vdd-l1-l2-supply = <&pmr735a_s2>;
399 + vdd-l3-supply = <&pmr735a_s1>;
400 + vdd-l4-supply = <&pm8350c_s1>;
401 + vdd-l5-l6-supply = <&pm8350c_s1>;
402 + vdd-l7-bob-supply = <&vreg_bob>;
403 +
404 + pmr735a_s1: smps1 {
405 + regulator-name = "pmr735a_s1";
406 + regulator-min-microvolt = <1200000>;
407 + regulator-max-microvolt = <1296000>;
408 + };
409 +
410 + pmr735a_s2: smps2 {
411 + regulator-name = "pmr735a_s2";
412 + regulator-min-microvolt = <500000>;
413 + regulator-max-microvolt = <1040000>;
414 + };
415 +
416 + pmr735a_s3: smps3 {
417 + regulator-name = "pmr735a_s3";
418 + regulator-min-microvolt = <300000>;
419 + regulator-max-microvolt = <2352000>;
420 + };
421 +
422 + pmr735a_l1: ldo1 {
423 + regulator-name = "pmr735a_l1";
424 + regulator-min-microvolt = <800000>;
425 + regulator-max-microvolt = <880000>;
426 + };
427 +
428 + pmr735a_l2: ldo2 {
429 + regulator-name = "pmr735a_l2";
430 + regulator-min-microvolt = <480000>;
431 + regulator-max-microvolt = <1200000>;
432 + };
433 +
434 + pmr735a_l3: ldo3 {
435 + regulator-name = "pmr735a_l3";
436 + regulator-min-microvolt = <1200000>;
437 + regulator-max-microvolt = <1200000>;
438 + };
439 +
440 + pmr735a_l4: ldo4 {
441 + regulator-name = "pmr735a_l4";
442 + regulator-min-microvolt = <1776000>;
443 + regulator-max-microvolt = <1776000>;
444 + };
445 +
446 + pmr735a_l5: ldo5 {
447 + regulator-name = "pmr735a_l5";
448 + regulator-min-microvolt = <880000>;
449 + regulator-max-microvolt = <920000>;
450 + };
451 +
452 + pmr735a_l6: ldo6 {
453 + regulator-name = "pmr735a_l6";
454 + regulator-min-microvolt = <1200000>;
455 + regulator-max-microvolt = <1200000>;
456 + };
457 +
458 + pmr735a_l7: ldo7 {
459 + regulator-name = "pmr735a_l7";
460 + regulator-min-microvolt = <2800000>;
461 + regulator-max-microvolt = <2800000>;
462 + };
463 + };
464 + };
465 +
466 + &dispcc {
467 + status = "okay";
468 + };
469 +
470 + &gpi_dma0 {
471 + status = "okay";
472 + };
473 +
474 + &gpi_dma1 {
475 + status = "okay";
476 + };
477 +
478 + &gpi_dma2 {
479 + status = "okay";
480 + };
481 +
482 + &gpu {
483 + status = "okay";
484 +
485 + zap-shader {
486 + firmware-name = "qcom/a730_zap.mbn";
487 + };
488 + };
489 +
490 + &i2c5 {
491 + clock-frequency = <100000>;
492 + status = "okay";
493 +
494 + /* nq@64 rtc6226 */
495 +
496 + fsa4480: typec-mux@42 {
497 + compatible = "fcs,fsa4480";
498 + reg = <0x42>;
499 +
500 + mode-switch;
501 + orientation-switch;
502 +
503 + port {
504 + fsa4480_ept: endpoint {
505 + //remote-endpoint = <&typec_controller>;
506 + };
507 + };
508 + };
509 +
510 + /* redriver@1c onnn,redriver */
511 + /* aw20036_led@3a awinic,aw20036_led */
512 +
513 + nxp_eusb2_repeater: repeater@4f {
514 + compatible = "nxp,eusb2-repeater";
515 + reg = <0x4f>;
516 +
517 + vdd18-supply = <&pm8350_s10>;
518 + vdd3-supply = <&pm8350_l2>;
519 +
520 + reset-gpio = <&pm8350c_gpios 7 GPIO_ACTIVE_HIGH>;
521 + pinctrl-names = "default";
522 + pinctrl-0 = <&eusb2_reset_default>;
523 +
524 + qcom,param-override-seq = <64 6 34 7 100 8>;
525 + /*
526 + * Rx squelch detection threshold to 110mV (default is 125mV);
527 + * Tx Deemphasis to 2dB, Tx Deemphasis bit duration to 0.8UI
528 + * (default is 0 for both);
529 + * Output Voltage Swing to 550mV (default is 450mV);
530 + */
531 + #phy-cells = <0>;
532 + };
533 + };
534 +
535 + &i2c9 {
536 + clock-frequency = <1000000>;
537 + status = "okay";
538 +
539 + /* nq@28 qcom,sn-nci */
540 + };
541 +
542 + &i2c13 {
543 + clock-frequency = <1000000>;
544 + status = "okay";
545 +
546 + /* tfa98xx@34 */
547 + /* tfa98xx@35 */
548 + };
549 +
550 + &i2c18 {
551 + clock-frequency = <1000000>;
552 + status = "okay";
553 +
554 + /* haptic_hv@5a awinic,aw8692x */
555 + };
556 +
557 + &mdss {
558 + status = "okay";
559 + };
560 +
561 + &mdss_dsi0 {
562 + vdda-supply = <&pm8350_l6>;
563 +
564 + status = "okay";
565 +
566 + panel@0 {
567 + compatible = "mdss,nt37705-visionox-amoled-120hz";
568 + reg = <0>;
569 +
570 + reset-gpios = <&tlmm 0 GPIO_ACTIVE_LOW>;
571 + te-gpios = <&tlmm 86 GPIO_ACTIVE_HIGH>;
572 +
573 + vdd-supply = <&pm8350c_l13>;
574 + vddio-supply = <&pm8350c_l12>;
575 +
576 + pinctrl-0 = <&disp_reset_n_active>, <&mdp_vsync_active>;
577 + pinctrl-1 = <&disp_reset_n_suspend>, <&mdp_vsync_suspend>;
578 + pinctrl-names = "default", "sleep";
579 +
580 + port {
581 + panel_in: endpoint {
582 + remote-endpoint = <&mdss_dsi0_out>;
583 + };
584 + };
585 + };
586 + };
587 +
588 + &mdss_dsi0_out {
589 + remote-endpoint = <&panel_in>;
590 + data-lanes = <0 1 2 3>;
591 + };
592 +
593 + &mdss_dsi0_phy {
594 + vdds-supply = <&pm8350_l5>;
595 + status = "okay";
596 + };
597 +
598 + &pon_pwrkey {
599 + status = "okay";
600 + };
601 +
602 + &pon_resin {
603 + linux,code = <KEY_VOLUMEDOWN>;
604 +
605 + status = "okay";
606 + };
607 +
608 + &pm8350_gpios {
609 + volume_up_n: volume-up-n-state {
610 + pins = "gpio6";
611 + function = PMIC_GPIO_FUNC_NORMAL;
612 + bias-pull-up;
613 + input-enable;
614 + power-source = <1>;
615 + };
616 + };
617 +
618 + &pm8350c_flash {
619 + status = "okay";
620 +
621 + led-0 {
622 + function = LED_FUNCTION_FLASH;
623 + color = <LED_COLOR_ID_YELLOW>;
624 + led-sources = <1>, <4>;
625 + led-max-microamp = <500000>;
626 + flash-max-microamp = <1500000>;
627 + flash-max-timeout-us = <1280000>;
628 + };
629 + };
630 +
631 + &pm8350c_gpios {
632 + eusb2_reset_default: eusb2-reset-default-state {
633 + pins = "gpio7";
634 + function = PMIC_GPIO_FUNC_NORMAL;
635 + input-enable;
636 + output-enable;
637 + bias-disable;
638 + power-source = <1>; /* 1.8V */
639 + qcom,drive-strength = <PMIC_GPIO_STRENGTH_MED>;
640 + };
641 + };
642 +
643 + &pmk8350_rtc {
644 + status = "okay";
645 + };
646 +
647 + &qupv3_id_0 {
648 + status = "okay";
649 + };
650 +
651 + &qupv3_id_1 {
652 + status = "okay";
653 + };
654 +
655 + &qupv3_id_2 {
656 + status = "okay";
657 + };
658 +
659 + &remoteproc_adsp {
660 + firmware-name = "qcom/sm8475/pong/adsp.mbn";
661 + status = "okay";
662 + };
663 +
664 + &remoteproc_cdsp {
665 + firmware-name = "qcom/sm8475/pong/cdsp.mbn";
666 + status = "okay";
667 + };
668 +
669 + &remoteproc_mpss {
670 + firmware-name = "qcom/sm8475/pong/modem.mbn";
671 + status = "okay";
672 + };
673 +
674 + &remoteproc_slpi {
675 + firmware-name = "qcom/sm8475/pong/slpi.mbn";
676 + status = "okay";
677 + };
678 +
679 + &qup_spi4_data_clk {
680 + drive-strength = <6>;
681 + bias-disable;
682 + };
683 +
684 + &spi4 {
685 + status = "okay";
686 +
687 + touchscreen@0 {
688 + compatible = "goodix,gt9916";
689 + reg = <0>;
690 +
691 + interrupt-parent = <&tlmm>;
692 + interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
693 +
694 + reset-gpios = <&tlmm 20 GPIO_ACTIVE_LOW>;
695 +
696 + avdd-supply = <&pm8350c_l3>;
697 + vddio-supply = <&pm8350c_l12>;
698 +
699 + spi-max-frequency = <20000000>;
700 +
701 + touchscreen-size-x = <1080>;
702 + touchscreen-size-y = <2412>;
703 +
704 + pinctrl-names = "default";
705 + pinctrl-0 = <&ts_irq>, <&ts_reset>;
706 + };
707 + };
708 +
709 + &tlmm {
710 + /* Reserved I/Os for FP */
711 + gpio-reserved-ranges = <28 4>;
712 +
713 + disp_reset_n_active: disp0-reset-n-active-state {
714 + pins = "gpio0";
715 + function = "gpio";
716 + drive-strength = <8>;
717 + bias-disable;
718 + };
719 +
720 + disp_reset_n_suspend: disp0-reset-n-suspend-state {
721 + pins = "gpio0";
722 + function = "gpio";
723 + drive-strength = <2>;
724 + bias-pull-down;
725 + };
726 +
727 + ts_irq: ts-irq-state {
728 + pins = "gpio21";
729 + function = "gpio";
730 + drive-strength = <8>;
731 + bias-pull-up;
732 + };
733 +
734 + ts_reset: ts-reset-state {
735 + pins = "gpio20";
736 + function = "gpio";
737 + drive-strength = <8>;
738 + bias-pull-up;
739 + };
740 +
741 + glyph_irq: glyph-irq-state {
742 + pins = "gpio60";
743 + function = "gpio";
744 + drive-strength = <8>;
745 + bias-pull-up;
746 + };
747 +
748 + glyph_reset: glyph-reset-state {
749 + pins = "gpio44";
750 + function = "gpio";
751 + drive-strength = <8>;
752 + bias-disable;
753 + };
754 +
755 + mdp_vsync_active: mdp-vsync-active-state {
756 + pins = "gpio86", "gpio87";
757 + function = "mdp_vsync";
758 + drive-strength = <2>;
759 + bias-pull-down;
760 + };
761 +
762 + mdp_vsync_suspend: mdp-vsync-suspend-state {
763 + pins = "gpio86", "gpio87";
764 + function = "mdp_vsync";
765 + drive-strength = <2>;
766 + bias-pull-down;
767 + };
768 + };
769 +
770 + &uart7 {
771 + status = "okay";
772 + };
773 +
774 + &uart20 {
775 + status = "okay";
776 +
777 + /* Bluetooth */
778 + };
779 +
780 + &ufs_mem_hc {
781 + reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>;
782 +
783 + vcc-supply = <&pm8350_l7>;
784 + vcc-max-microamp = <1100000>;
785 + vccq-supply = <&pm8350_l9>;
786 + vccq-max-microamp = <1200000>;
787 +
788 + status = "okay";
789 + };
790 +
791 + &ufs_mem_phy {
792 + vdda-phy-supply = <&pm8350_l5>;
793 + vdda-pll-supply = <&pm8350c_l10>;
794 +
795 + status = "okay";
796 + };
797 +
798 + &usb_1 {
799 + /* USB 2.0 only */
800 + qcom,select-utmi-as-pipe-clk;
801 + status = "okay";
802 + };
803 +
804 + &usb_1_dwc3 {
805 + dr_mode = "peripheral";
806 + maximum-speed = "high-speed";
807 + /* Remove USB3 phy */
808 + phys = <&usb_1_hsphy>;
809 + phy-names = "usb2-phy";
810 + };
811 +
812 + &usb_1_hsphy {
813 + vdd-supply = <&pm8350_l5>;
814 + vdda12-supply = <&pm8350c_l10>;
815 +
816 + phys = <&nxp_eusb2_repeater>;
817 +
818 + status = "okay";
819 + };
Newer Older