1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (c) 2022, Alexander Martinz <amartinz@shiftphones.com>
4 * Copyright (c) 2022, Caleb Connolly <caleb@connolly.tech>
5 * Copyright (c) 2022, Dylan Van Assche <me@dylanvanassche.be>
10 #include <dt-bindings/gpio/gpio.h>
11 #include <dt-bindings/leds/common.h>
12 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
13 #include "sdm845.dtsi"
14 #include "pm8998.dtsi"
15 #include "pmi8998.dtsi"
18 model = "SHIFT SHIFT6mq";
19 compatible = "shift,axolotl", "qcom,sdm845";
20 qcom,msm-id = <321 0x20001>;
21 qcom,board-id = <11 0>;
24 display0 = &framebuffer0;
33 stdout-path = "serial0";
35 /* Use framebuffer setup by the bootloader. */
36 framebuffer0: framebuffer@9d400000 {
37 compatible = "simple-framebuffer";
38 reg = <0x0 0x9d400000 0x0 (1080 * 2160 * 4)>;
41 stride = <(1080 * 4)>;
47 compatible = "gpio-keys";
50 pinctrl-names = "default";
51 pinctrl-0 = <&volume_up_gpio>;
55 linux,code = <KEY_VOLUMEUP>;
56 gpios = <&pm8998_gpio 6 GPIO_ACTIVE_LOW>;
57 debounce-interval = <15>;
62 framebuffer_region@9d400000 {
63 reg = <0x0 0x9d400000 0x0 (1080 * 2160 * 4)>;
67 ramoops: ramoops@b0000000 {
68 compatible = "ramoops";
69 reg = <0 0xb0000000 0 0x00400000>;
70 record-size = <0x40000>;
71 console-size = <0x40000>;
72 ftrace-size = <0x40000>;
73 pmsg-size = <0x200000>;
79 compatible = "simple-battery";
81 charge-full-design-microamp-hours = <3850000>;
82 voltage-min-design-microvolt = <3600000>;
83 voltage-max-design-microvolt = <4400000>;
86 vph_pwr: vph-pwr-regulator {
87 compatible = "regulator-fixed";
88 regulator-name = "vph_pwr";
89 regulator-min-microvolt = <3700000>;
90 regulator-max-microvolt = <3700000>;
93 vreg_s4a_1p8: pm8998-smps4 {
94 compatible = "regulator-fixed";
95 regulator-name = "vreg_s4a_1p8";
97 regulator-min-microvolt = <1800000>;
98 regulator-max-microvolt = <1800000>;
103 vin-supply = <&vph_pwr>;
109 firmware-name = "/*(DEBLOBBED)*/";
114 compatible = "qcom,pm8998-rpmh-regulators";
117 vdd-s1-supply = <&vph_pwr>;
118 vdd-s2-supply = <&vph_pwr>;
119 vdd-s3-supply = <&vph_pwr>;
120 vdd-s4-supply = <&vph_pwr>;
121 vdd-s5-supply = <&vph_pwr>;
122 vdd-s6-supply = <&vph_pwr>;
123 vdd-s7-supply = <&vph_pwr>;
124 vdd-s8-supply = <&vph_pwr>;
125 vdd-s9-supply = <&vph_pwr>;
126 vdd-s10-supply = <&vph_pwr>;
127 vdd-s11-supply = <&vph_pwr>;
128 vdd-s12-supply = <&vph_pwr>;
129 vdd-s13-supply = <&vph_pwr>;
130 vdd-l1-l27-supply = <&vreg_s7a_1p025>;
131 vdd-l2-l8-l17-supply = <&vreg_s3a_1p35>;
132 vdd-l3-l11-supply = <&vreg_s7a_1p025>;
133 vdd-l4-l5-supply = <&vreg_s7a_1p025>;
134 vdd-l6-supply = <&vph_pwr>;
135 vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>;
136 vdd-l9-supply = <&vreg_bob>;
137 vdd-l10-l23-l25-supply = <&vreg_bob>;
138 vdd-l13-l19-l21-supply = <&vreg_bob>;
139 vdd-l16-l28-supply = <&vreg_bob>;
140 vdd-l18-l22-supply = <&vreg_bob>;
141 vdd-l20-l24-supply = <&vreg_bob>;
142 vdd-l26-supply = <&vreg_s3a_1p35>;
143 vin-lvs-1-2-supply = <&vreg_s4a_1p8>;
145 vreg_s2a_1p125: smps2 {
146 regulator-min-microvolt = <1100000>;
147 regulator-max-microvolt = <1100000>;
150 vreg_s3a_1p35: smps3 {
151 regulator-min-microvolt = <1352000>;
152 regulator-max-microvolt = <1352000>;
155 vreg_s5a_2p04: smps5 {
156 regulator-min-microvolt = <1904000>;
157 regulator-max-microvolt = <2040000>;
160 vreg_s7a_1p025: smps7 {
161 regulator-min-microvolt = <900000>;
162 regulator-max-microvolt = <1028000>;
183 vreg_l1a_0p875: ldo1 {
184 regulator-min-microvolt = <880000>;
185 regulator-max-microvolt = <880000>;
186 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
191 regulator-min-microvolt = <1200000>;
192 regulator-max-microvolt = <1200000>;
193 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
198 regulator-min-microvolt = <1000000>;
199 regulator-max-microvolt = <1000000>;
200 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
207 regulator-min-microvolt = <800000>;
208 regulator-max-microvolt = <800000>;
209 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
214 regulator-min-microvolt = <1856000>;
215 regulator-max-microvolt = <1856000>;
216 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
220 regulator-min-microvolt = <1800000>;
221 regulator-max-microvolt = <1800000>;
222 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
226 regulator-min-microvolt = <1200000>;
227 regulator-max-microvolt = <1248000>;
228 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
232 regulator-min-microvolt = <1704000>;
233 regulator-max-microvolt = <2928000>;
234 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
237 vreg_l10a_1p8: ldo10 {
238 regulator-min-microvolt = <1704000>;
239 regulator-max-microvolt = <2928000>;
240 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
243 vreg_l11a_1p0: ldo11 {
244 regulator-min-microvolt = <1000000>;
245 regulator-max-microvolt = <1048000>;
246 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
256 vreg_l12a_1p8: ldo12 {
257 regulator-min-microvolt = <1800000>;
258 regulator-max-microvolt = <1800000>;
259 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
263 vreg_l13a_2p95: ldo13 {
264 regulator-min-microvolt = <1800000>;
265 regulator-max-microvolt = <2960000>;
266 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
269 vreg_l14a_1p88: ldo14 {
270 regulator-min-microvolt = <1800000>;
271 regulator-max-microvolt = <1800000>;
272 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
275 vreg_l15a_1p8: ldo15 {
276 regulator-min-microvolt = <1800000>;
277 regulator-max-microvolt = <1800000>;
278 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
281 vreg_l16a_2p7: ldo16 {
282 regulator-min-microvolt = <2704000>;
283 regulator-max-microvolt = <2704000>;
284 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
287 vreg_l17a_1p3: ldo17 {
288 regulator-min-microvolt = <1304000>;
289 regulator-max-microvolt = <1304000>;
290 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
293 vreg_l18a_2p7: ldo18 {
294 regulator-min-microvolt = <2704000>;
295 regulator-max-microvolt = <2960000>;
296 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
299 vreg_l19a_3p0: ldo19 {
300 regulator-min-microvolt = <2856000>;
301 regulator-max-microvolt = <3104000>;
302 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
305 vreg_l20a_2p95: ldo20 {
306 regulator-min-microvolt = <2704000>;
307 regulator-max-microvolt = <2960000>;
308 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
311 vreg_l21a_2p95: ldo21 {
312 regulator-min-microvolt = <2704000>;
313 regulator-max-microvolt = <2960000>;
314 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
317 vreg_l22a_2p85: ldo22 {
318 regulator-min-microvolt = <2864000>;
319 regulator-max-microvolt = <3312000>;
320 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
323 vreg_l23a_3p3: ldo23 {
324 regulator-min-microvolt = <3000000>;
325 regulator-max-microvolt = <3312000>;
326 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
330 vreg_l24a_3p075: ldo24 {
331 regulator-min-microvolt = <3088000>;
332 regulator-max-microvolt = <3088000>;
333 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
336 vreg_l25a_3p3: ldo25 {
337 regulator-min-microvolt = <3300000>;
338 regulator-max-microvolt = <3312000>;
339 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
355 vreg_l26a_1p2: ldo26 {
356 regulator-min-microvolt = <1200000>;
357 regulator-max-microvolt = <1200000>;
358 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
361 vreg_l28a_3p0: ldo28 {
362 regulator-min-microvolt = <2856000>;
363 regulator-max-microvolt = <3008000>;
364 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
367 vreg_lvs1a_1p8: lvs1 {
368 regulator-min-microvolt = <1800000>;
369 regulator-max-microvolt = <1800000>;
372 vreg_lvs2a_1p8: lvs2 {
373 regulator-min-microvolt = <1800000>;
374 regulator-max-microvolt = <1800000>;
379 compatible = "qcom,pmi8998-rpmh-regulators";
382 vdd-bob-supply = <&vph_pwr>;
385 regulator-min-microvolt = <3312000>;
386 regulator-max-microvolt = <3600000>;
387 regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
388 regulator-allow-bypass;
393 compatible = "qcom,pm8005-rpmh-regulators";
396 vdd-s1-supply = <&vph_pwr>;
397 vdd-s2-supply = <&vph_pwr>;
398 vdd-s3-supply = <&vph_pwr>;
399 vdd-s4-supply = <&vph_pwr>;
401 vreg_s3c_0p6: smps3 {
402 regulator-min-microvolt = <600000>;
403 regulator-max-microvolt = <600000>;
410 firmware-name = "/*(DEBLOBBED)*/";
415 vdda-supply = <&vdda_mipi_dsi0_1p2>;
418 compatible = "visionox,rm69299-shift";
421 vdda-supply = <&vreg_l14a_1p88>;
422 vdd3p3-supply = <&vreg_l28a_3p0>;
424 #address-cells = <1>;
427 reset-gpios = <&tlmm 6 GPIO_ACTIVE_HIGH>;
429 pinctrl-names = "default", "sleep";
430 pinctrl-0 = <&sde_dsi_active &sde_te_active>;
431 pinctrl-1 = <&sde_dsi_suspend &sde_te_suspend>;
434 panel_in_0: endpoint {
435 remote-endpoint = <&dsi0_out>;
442 remote-endpoint = <&panel_in_0>;
443 data-lanes = <0 1 2 3>;
448 vdds-supply = <&vdda_mipi_dsi0_pll>;
452 protected-clocks = <GCC_QSPI_CORE_CLK>,
453 <GCC_QSPI_CORE_CLK_SRC>,
454 <GCC_QSPI_CNOC_PERIPH_AHB_CLK>,
455 <GCC_LPASS_Q6_AXI_CLK>,
456 <GCC_LPASS_SWAY_CLK>;
467 memory-region = <&gpu_mem>;
468 firmware-name = "/*(DEBLOBBED)*/";
476 compatible = "focaltech,fts8719";
479 interrupt-parent = <&tlmm>;
480 interrupts = <125 0x2>;
481 vdd-supply = <&vreg_l28a_3p0>;
482 vcc-i2c-supply = <&vreg_l14a_1p88>;
484 pinctrl-names = "default", "suspend";
485 pinctrl-0 = <&ts_int_active &ts_reset_active>;
486 pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>;
488 reset-gpio = <&tlmm 99 GPIO_ACTIVE_HIGH>;
489 irq-gpio = <&tlmm 125 GPIO_TRANSITORY>;
490 touchscreen-size-x = <1080>;
491 touchscreen-size-y = <2160>;
492 focaltech,max-touch-number = <5>;
499 memory-region = <&ipa_fw_mem>;
500 firmware-name = "/*(DEBLOBBED)*/";
509 firmware-name = "/*(DEBLOBBED)*/", "/*(DEBLOBBED)*/";
513 volume_up_gpio: pm8998-gpio6-state {
519 qcom,drive-strength = <0>;
525 volume_down_resin: resin {
526 compatible = "qcom,pm8941-resin";
527 interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>;
530 linux,code = <KEY_VOLUMEDOWN>;
538 color = <LED_COLOR_ID_RGB>;
539 function = LED_FUNCTION_STATUS;
541 #address-cells = <1>;
546 color = <LED_COLOR_ID_BLUE>;
551 color = <LED_COLOR_ID_GREEN>;
556 color = <LED_COLOR_ID_RED>;
564 drive-strength = <2>;
570 drive-strength = <2>;
584 gpio-reserved-ranges = <0 4>, <81 4>;
586 sde_dsi_active: sde-dsi-active {
588 pins = "gpio6", "gpio11";
593 pins = "gpio6", "gpio11";
594 drive-strength = <8>;
599 sde_dsi_suspend: sde-dsi-suspend {
601 pins = "gpio6", "gpio11";
606 pins = "gpio6", "gpio11";
607 drive-strength = <2>;
612 sde_te_active: sde-te-active {
615 function = "mdp_vsync";
620 drive-strength = <2>;
625 sde_te_suspend: sde-te-suspend {
628 function = "mdp_vsync";
633 drive-strength = <2>;
638 ts_int_active: ts-int-active {
646 drive-strength = <8>;
652 ts_int_suspend: ts-int-suspend {
660 drive-strength = <2>;
666 ts_reset_active: ts-reset-active {
674 drive-strength = <8>;
679 ts_reset_suspend: ts-reset-suspend {
687 drive-strength = <2>;
697 compatible = "qcom,wcn3990-bt";
699 vddio-supply = <&vreg_s4a_1p8>;
700 vddxo-supply = <&vreg_l7a_1p8>;
701 vddrf-supply = <&vreg_l17a_1p3>;
702 vddch0-supply = <&vreg_l25a_3p3>;
703 max-speed = <3200000>;
714 reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>;
716 vcc-supply = <&vreg_l20a_2p95>;
717 vcc-max-microamp = <600000>;
723 vdda-phy-supply = <&vdda_ufs1_core>;
724 vdda-pll-supply = <&vdda_ufs1_1p2>;
732 dr_mode = "peripheral";
738 vdd-supply = <&vreg_l1a_0p875>;
739 vdda-phy-dpdm-supply = <&vreg_l24a_3p075>;
740 vdda-pll-supply = <&vreg_l12a_1p8>;
746 vdda-phy-supply = <&vreg_l26a_1p2>;
747 vdda-pll-supply = <&vreg_l1a_0p875>;
752 firmware-name = "/*(DEBLOBBED)*/";
758 vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>;
759 vdd-1.3-rfa-supply = <&vreg_l17a_1p3>;
760 vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
761 vdd-3.3-ch0-supply = <&vreg_l25a_3p3>;
762 vdd-3.3-ch1-supply = <&vreg_l23a_3p3>;
764 qcom,snoc-host-cap-8bit-quirk;