xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/sdm845-google-common.dtsi (revision 69ed3df4f588860308677cda76cbcce1f19a54c9)
10cd4430aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only
20cd4430aSEmmanuel Vadot
30cd4430aSEmmanuel Vadot/dts-v1/;
40cd4430aSEmmanuel Vadot
50cd4430aSEmmanuel Vadot#include <dt-bindings/arm/qcom,ids.h>
60cd4430aSEmmanuel Vadot#include <dt-bindings/dma/qcom-gpi.h>
70cd4430aSEmmanuel Vadot#include <dt-bindings/input/linux-event-codes.h>
80cd4430aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
90cd4430aSEmmanuel Vadot#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
100cd4430aSEmmanuel Vadot
110cd4430aSEmmanuel Vadot#include "sdm845.dtsi"
120cd4430aSEmmanuel Vadot#include "pm8998.dtsi"
130cd4430aSEmmanuel Vadot#include "pmi8998.dtsi"
140cd4430aSEmmanuel Vadot
150cd4430aSEmmanuel Vadot/delete-node/ &mpss_region;
160cd4430aSEmmanuel Vadot/delete-node/ &venus_mem;
170cd4430aSEmmanuel Vadot/delete-node/ &cdsp_mem;
180cd4430aSEmmanuel Vadot/delete-node/ &mba_region;
190cd4430aSEmmanuel Vadot/delete-node/ &slpi_mem;
200cd4430aSEmmanuel Vadot/delete-node/ &spss_mem;
210cd4430aSEmmanuel Vadot/delete-node/ &rmtfs_mem;
220cd4430aSEmmanuel Vadot
230cd4430aSEmmanuel Vadot/ {
240cd4430aSEmmanuel Vadot	chassis-type = "handset";
250cd4430aSEmmanuel Vadot	qcom,board-id = <0x00021505 0>;
260cd4430aSEmmanuel Vadot	qcom,msm-id = <QCOM_ID_SDM845 0x20001>;
270cd4430aSEmmanuel Vadot
280cd4430aSEmmanuel Vadot	aliases {
290cd4430aSEmmanuel Vadot		serial0 = &uart9;
300cd4430aSEmmanuel Vadot		serial1 = &uart6;
310cd4430aSEmmanuel Vadot	};
320cd4430aSEmmanuel Vadot
330cd4430aSEmmanuel Vadot	battery: battery {
340cd4430aSEmmanuel Vadot		compatible = "simple-battery";
350cd4430aSEmmanuel Vadot	};
360cd4430aSEmmanuel Vadot
370cd4430aSEmmanuel Vadot	chosen {
380cd4430aSEmmanuel Vadot		#address-cells = <2>;
390cd4430aSEmmanuel Vadot		#size-cells = <2>;
400cd4430aSEmmanuel Vadot		ranges;
410cd4430aSEmmanuel Vadot
420cd4430aSEmmanuel Vadot		stdout-path = "serial0:115200n8";
430cd4430aSEmmanuel Vadot
440cd4430aSEmmanuel Vadot		/* Use display framebuffer as setup by bootloader */
450cd4430aSEmmanuel Vadot		framebuffer0: framebuffer-0 {
460cd4430aSEmmanuel Vadot			compatible = "simple-framebuffer";
470cd4430aSEmmanuel Vadot			memory-region = <&cont_splash_mem>;
480cd4430aSEmmanuel Vadot
490cd4430aSEmmanuel Vadot			format = "a8r8g8b8";
500cd4430aSEmmanuel Vadot		};
510cd4430aSEmmanuel Vadot	};
520cd4430aSEmmanuel Vadot
530cd4430aSEmmanuel Vadot	reserved-memory {
540cd4430aSEmmanuel Vadot		cont_splash_mem: splash@9d400000 {
550cd4430aSEmmanuel Vadot			reg = <0 0x9d400000 0 0x02400000>;
560cd4430aSEmmanuel Vadot			no-map;
570cd4430aSEmmanuel Vadot		};
580cd4430aSEmmanuel Vadot
590cd4430aSEmmanuel Vadot		mpss_region: memory@8e000000 {
600cd4430aSEmmanuel Vadot			reg = <0 0x8e000000 0 0x9800000>;
610cd4430aSEmmanuel Vadot			no-map;
620cd4430aSEmmanuel Vadot		};
630cd4430aSEmmanuel Vadot
640cd4430aSEmmanuel Vadot		venus_mem: venus@97800000 {
650cd4430aSEmmanuel Vadot			reg = <0 0x97800000 0 0x500000>;
660cd4430aSEmmanuel Vadot			no-map;
670cd4430aSEmmanuel Vadot		};
680cd4430aSEmmanuel Vadot
690cd4430aSEmmanuel Vadot		cdsp_mem: cdsp-mem@97D00000 {
700cd4430aSEmmanuel Vadot			reg = <0 0x97D00000 0 0x800000>;
710cd4430aSEmmanuel Vadot			no-map;
720cd4430aSEmmanuel Vadot		};
730cd4430aSEmmanuel Vadot
740cd4430aSEmmanuel Vadot		mba_region: mba@98500000 {
750cd4430aSEmmanuel Vadot			reg = <0 0x98500000 0 0x200000>;
760cd4430aSEmmanuel Vadot			no-map;
770cd4430aSEmmanuel Vadot		};
780cd4430aSEmmanuel Vadot
790cd4430aSEmmanuel Vadot		slpi_mem: slpi@98700000 {
800cd4430aSEmmanuel Vadot			reg = <0 0x98700000 0 0x1400000>;
810cd4430aSEmmanuel Vadot			no-map;
820cd4430aSEmmanuel Vadot		};
830cd4430aSEmmanuel Vadot
840cd4430aSEmmanuel Vadot		spss_mem: spss@99B00000 {
850cd4430aSEmmanuel Vadot			reg = <0 0x99B00000 0 0x100000>;
860cd4430aSEmmanuel Vadot			no-map;
870cd4430aSEmmanuel Vadot		};
880cd4430aSEmmanuel Vadot
890cd4430aSEmmanuel Vadot		rmtfs_mem: rmtfs-region@f2700000 {
900cd4430aSEmmanuel Vadot			compatible = "qcom,rmtfs-mem";
910cd4430aSEmmanuel Vadot			reg = <0 0xf2700000 0 0x202000>;
920cd4430aSEmmanuel Vadot			qcom,use-guard-pages;
930cd4430aSEmmanuel Vadot			no-map;
940cd4430aSEmmanuel Vadot
950cd4430aSEmmanuel Vadot			qcom,client-id = <1>;
960cd4430aSEmmanuel Vadot			qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>;
970cd4430aSEmmanuel Vadot		};
980cd4430aSEmmanuel Vadot	};
990cd4430aSEmmanuel Vadot
1000cd4430aSEmmanuel Vadot	gpio-keys {
1010cd4430aSEmmanuel Vadot		compatible = "gpio-keys";
1020cd4430aSEmmanuel Vadot		label = "Volume keys";
1030cd4430aSEmmanuel Vadot		autorepeat;
1040cd4430aSEmmanuel Vadot
1050cd4430aSEmmanuel Vadot		pinctrl-0 = <&volume_up_gpio>;
1060cd4430aSEmmanuel Vadot		pinctrl-names = "default";
1070cd4430aSEmmanuel Vadot
1080cd4430aSEmmanuel Vadot		key-vol-up {
1090cd4430aSEmmanuel Vadot			label = "Volume Up";
1100cd4430aSEmmanuel Vadot			linux,code = <KEY_VOLUMEUP>;
1110cd4430aSEmmanuel Vadot			gpios = <&pm8998_gpios 6 GPIO_ACTIVE_LOW>;
1120cd4430aSEmmanuel Vadot			debounce-interval = <15>;
1130cd4430aSEmmanuel Vadot		};
1140cd4430aSEmmanuel Vadot	};
1150cd4430aSEmmanuel Vadot
1160cd4430aSEmmanuel Vadot	vph_pwr: regulator-vph-pwr {
1170cd4430aSEmmanuel Vadot		compatible = "regulator-fixed";
1180cd4430aSEmmanuel Vadot		regulator-name = "vph_pwr";
1190cd4430aSEmmanuel Vadot		regulator-min-microvolt = <3700000>;
1200cd4430aSEmmanuel Vadot		regulator-max-microvolt = <3700000>;
1210cd4430aSEmmanuel Vadot	};
1220cd4430aSEmmanuel Vadot
1230cd4430aSEmmanuel Vadot	vreg_s4a_1p8: regulator-vreg-s4a-1p8 {
1240cd4430aSEmmanuel Vadot		compatible = "regulator-fixed";
1250cd4430aSEmmanuel Vadot		regulator-name = "vreg_s4a_1p8";
1260cd4430aSEmmanuel Vadot
1270cd4430aSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
1280cd4430aSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
1290cd4430aSEmmanuel Vadot		regulator-always-on;
1300cd4430aSEmmanuel Vadot		regulator-boot-on;
1310cd4430aSEmmanuel Vadot
1320cd4430aSEmmanuel Vadot		vin-supply = <&vph_pwr>;
1330cd4430aSEmmanuel Vadot	};
134*69ed3df4SEmmanuel Vadot
135*69ed3df4SEmmanuel Vadot	wcn3990-pmu {
136*69ed3df4SEmmanuel Vadot		compatible = "qcom,wcn3990-pmu";
137*69ed3df4SEmmanuel Vadot
138*69ed3df4SEmmanuel Vadot		vddio-supply = <&vreg_s4a_1p8>;
139*69ed3df4SEmmanuel Vadot		vddxo-supply = <&vreg_l7a_1p8>;
140*69ed3df4SEmmanuel Vadot		vddrf-supply = <&vreg_l17a_1p3>;
141*69ed3df4SEmmanuel Vadot		vddch0-supply = <&vreg_l25a_3p3>;
142*69ed3df4SEmmanuel Vadot
143*69ed3df4SEmmanuel Vadot		regulators {
144*69ed3df4SEmmanuel Vadot			vreg_pmu_io: ldo0 {
145*69ed3df4SEmmanuel Vadot				regulator-name = "vreg_pmu_io";
146*69ed3df4SEmmanuel Vadot			};
147*69ed3df4SEmmanuel Vadot
148*69ed3df4SEmmanuel Vadot			vreg_pmu_xo: ldo1 {
149*69ed3df4SEmmanuel Vadot				regulator-name = "vreg_pmu_xo";
150*69ed3df4SEmmanuel Vadot			};
151*69ed3df4SEmmanuel Vadot
152*69ed3df4SEmmanuel Vadot			vreg_pmu_rf: ldo2 {
153*69ed3df4SEmmanuel Vadot				regulator-name = "vreg_pmu_rf";
154*69ed3df4SEmmanuel Vadot			};
155*69ed3df4SEmmanuel Vadot
156*69ed3df4SEmmanuel Vadot			vreg_pmu_ch0: ldo3 {
157*69ed3df4SEmmanuel Vadot				regulator-name = "vreg_pmu_ch0";
158*69ed3df4SEmmanuel Vadot			};
159*69ed3df4SEmmanuel Vadot		};
160*69ed3df4SEmmanuel Vadot	};
1610cd4430aSEmmanuel Vadot};
1620cd4430aSEmmanuel Vadot
1630cd4430aSEmmanuel Vadot&adsp_pas {
1640cd4430aSEmmanuel Vadot	firmware-name = "qcom/sdm845/Google/blueline/adsp.mbn";
1650cd4430aSEmmanuel Vadot
1660cd4430aSEmmanuel Vadot	status = "okay";
1670cd4430aSEmmanuel Vadot};
1680cd4430aSEmmanuel Vadot
1690cd4430aSEmmanuel Vadot&apps_rsc {
1700cd4430aSEmmanuel Vadot	regulators-0 {
1710cd4430aSEmmanuel Vadot		compatible = "qcom,pm8998-rpmh-regulators";
1720cd4430aSEmmanuel Vadot		qcom,pmic-id = "a";
1730cd4430aSEmmanuel Vadot
1740cd4430aSEmmanuel Vadot		vdd-s1-supply = <&vph_pwr>;
1750cd4430aSEmmanuel Vadot		vdd-s2-supply = <&vph_pwr>;
1760cd4430aSEmmanuel Vadot		vdd-s3-supply = <&vph_pwr>;
1770cd4430aSEmmanuel Vadot		vdd-s4-supply = <&vph_pwr>;
1780cd4430aSEmmanuel Vadot		vdd-s5-supply = <&vph_pwr>;
1790cd4430aSEmmanuel Vadot		vdd-s6-supply = <&vph_pwr>;
1800cd4430aSEmmanuel Vadot		vdd-s7-supply = <&vph_pwr>;
1810cd4430aSEmmanuel Vadot		vdd-s8-supply = <&vph_pwr>;
1820cd4430aSEmmanuel Vadot		vdd-s9-supply = <&vph_pwr>;
1830cd4430aSEmmanuel Vadot		vdd-s10-supply = <&vph_pwr>;
1840cd4430aSEmmanuel Vadot		vdd-s11-supply = <&vph_pwr>;
1850cd4430aSEmmanuel Vadot		vdd-s12-supply = <&vph_pwr>;
1860cd4430aSEmmanuel Vadot		vdd-s13-supply = <&vph_pwr>;
1870cd4430aSEmmanuel Vadot		vdd-l1-l27-supply = <&vreg_s7a_1p025>;
1880cd4430aSEmmanuel Vadot		vdd-l2-l8-l17-supply = <&vreg_s3a_1p35>;
1890cd4430aSEmmanuel Vadot		vdd-l3-l11-supply = <&vreg_s7a_1p025>;
1900cd4430aSEmmanuel Vadot		vdd-l4-l5-supply = <&vreg_s7a_1p025>;
1910cd4430aSEmmanuel Vadot		vdd-l6-supply = <&vph_pwr>;
1920cd4430aSEmmanuel Vadot		vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>;
1930cd4430aSEmmanuel Vadot		vdd-l9-supply = <&vreg_bob>;
1940cd4430aSEmmanuel Vadot		vdd-l10-l23-l25-supply = <&vreg_bob>;
1950cd4430aSEmmanuel Vadot		vdd-l13-l19-l21-supply = <&vreg_bob>;
1960cd4430aSEmmanuel Vadot		vdd-l16-l28-supply = <&vreg_bob>;
1970cd4430aSEmmanuel Vadot		vdd-l18-l22-supply = <&vreg_bob>;
1980cd4430aSEmmanuel Vadot		vdd-l20-l24-supply = <&vreg_bob>;
1990cd4430aSEmmanuel Vadot		vdd-l26-supply = <&vreg_s3a_1p35>;
2000cd4430aSEmmanuel Vadot		vin-lvs-1-2-supply = <&vreg_s4a_1p8>;
2010cd4430aSEmmanuel Vadot
2020cd4430aSEmmanuel Vadot		vreg_s3a_1p35: smps3 {
2030cd4430aSEmmanuel Vadot			regulator-min-microvolt = <1352000>;
2040cd4430aSEmmanuel Vadot			regulator-max-microvolt = <1352000>;
2050cd4430aSEmmanuel Vadot		};
2060cd4430aSEmmanuel Vadot
2070cd4430aSEmmanuel Vadot		vreg_s5a_2p04: smps5 {
2080cd4430aSEmmanuel Vadot			regulator-min-microvolt = <1904000>;
2090cd4430aSEmmanuel Vadot			regulator-max-microvolt = <2040000>;
2100cd4430aSEmmanuel Vadot		};
2110cd4430aSEmmanuel Vadot
2120cd4430aSEmmanuel Vadot		vreg_s7a_1p025: smps7 {
2130cd4430aSEmmanuel Vadot			regulator-min-microvolt = <900000>;
2140cd4430aSEmmanuel Vadot			regulator-max-microvolt = <1028000>;
2150cd4430aSEmmanuel Vadot		};
2160cd4430aSEmmanuel Vadot
2170cd4430aSEmmanuel Vadot		vdda_mipi_dsi0_pll:
2180cd4430aSEmmanuel Vadot		vreg_l1a_0p875: ldo1 {
2190cd4430aSEmmanuel Vadot			regulator-min-microvolt = <880000>;
2200cd4430aSEmmanuel Vadot			regulator-max-microvolt = <880000>;
2210cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2220cd4430aSEmmanuel Vadot			regulator-boot-on;
2230cd4430aSEmmanuel Vadot		};
2240cd4430aSEmmanuel Vadot
2250cd4430aSEmmanuel Vadot		vreg_l5a_0p8: ldo5 {
2260cd4430aSEmmanuel Vadot			regulator-min-microvolt = <800000>;
2270cd4430aSEmmanuel Vadot			regulator-max-microvolt = <800000>;
2280cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2290cd4430aSEmmanuel Vadot		};
2300cd4430aSEmmanuel Vadot
2310cd4430aSEmmanuel Vadot		vreg_l12a_1p8: ldo12 {
2320cd4430aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
2330cd4430aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
2340cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2350cd4430aSEmmanuel Vadot		};
2360cd4430aSEmmanuel Vadot
2370cd4430aSEmmanuel Vadot		vreg_l7a_1p8: ldo7 {
2380cd4430aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
2390cd4430aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
2400cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2410cd4430aSEmmanuel Vadot		};
2420cd4430aSEmmanuel Vadot
2430cd4430aSEmmanuel Vadot		vreg_l13a_2p95: ldo13 {
2440cd4430aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
2450cd4430aSEmmanuel Vadot			regulator-max-microvolt = <2960000>;
2460cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2470cd4430aSEmmanuel Vadot		};
2480cd4430aSEmmanuel Vadot
2490cd4430aSEmmanuel Vadot		vreg_l14a_1p8: ldo14 {
2500cd4430aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
2510cd4430aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
2520cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2530cd4430aSEmmanuel Vadot			regulator-boot-on;
2540cd4430aSEmmanuel Vadot			/*
2550cd4430aSEmmanuel Vadot			 * We can't properly bring the panel back if it gets turned off
2560cd4430aSEmmanuel Vadot			 * so keep it's regulators always on for now.
2570cd4430aSEmmanuel Vadot			 */
2580cd4430aSEmmanuel Vadot			regulator-always-on;
2590cd4430aSEmmanuel Vadot		};
2600cd4430aSEmmanuel Vadot
2610cd4430aSEmmanuel Vadot		vreg_l17a_1p3: ldo17 {
2620cd4430aSEmmanuel Vadot			regulator-min-microvolt = <1304000>;
2630cd4430aSEmmanuel Vadot			regulator-max-microvolt = <1304000>;
2640cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2650cd4430aSEmmanuel Vadot		};
2660cd4430aSEmmanuel Vadot
2670cd4430aSEmmanuel Vadot		vreg_l19a_3p3: ldo19 {
2680cd4430aSEmmanuel Vadot			regulator-min-microvolt = <3300000>;
2690cd4430aSEmmanuel Vadot			regulator-max-microvolt = <3312000>;
2700cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2710cd4430aSEmmanuel Vadot			/*
2720cd4430aSEmmanuel Vadot			 * The touchscreen needs this to be 3.3v, which is apparently
2730cd4430aSEmmanuel Vadot			 * quite close to the hardware limit for this LDO (3.312v)
2740cd4430aSEmmanuel Vadot			 * It must be kept in high power mode to prevent TS brownouts
2750cd4430aSEmmanuel Vadot			 */
2760cd4430aSEmmanuel Vadot			regulator-allowed-modes = <RPMH_REGULATOR_MODE_HPM>;
2770cd4430aSEmmanuel Vadot		};
2780cd4430aSEmmanuel Vadot
2790cd4430aSEmmanuel Vadot		vreg_l20a_2p95: ldo20 {
2800cd4430aSEmmanuel Vadot			regulator-min-microvolt = <2960000>;
2810cd4430aSEmmanuel Vadot			regulator-max-microvolt = <2968000>;
2820cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2830cd4430aSEmmanuel Vadot		};
2840cd4430aSEmmanuel Vadot
2850cd4430aSEmmanuel Vadot		vreg_l21a_2p95: ldo21 {
2860cd4430aSEmmanuel Vadot			regulator-min-microvolt = <2960000>;
2870cd4430aSEmmanuel Vadot			regulator-max-microvolt = <2968000>;
2880cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2890cd4430aSEmmanuel Vadot		};
2900cd4430aSEmmanuel Vadot
2910cd4430aSEmmanuel Vadot		vreg_l24a_3p075: ldo24 {
2920cd4430aSEmmanuel Vadot			regulator-min-microvolt = <3088000>;
2930cd4430aSEmmanuel Vadot			regulator-max-microvolt = <3088000>;
2940cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2950cd4430aSEmmanuel Vadot		};
2960cd4430aSEmmanuel Vadot
2970cd4430aSEmmanuel Vadot		vreg_l25a_3p3: ldo25 {
2980cd4430aSEmmanuel Vadot			regulator-min-microvolt = <3300000>;
2990cd4430aSEmmanuel Vadot			regulator-max-microvolt = <3312000>;
3000cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3010cd4430aSEmmanuel Vadot		};
3020cd4430aSEmmanuel Vadot
3030cd4430aSEmmanuel Vadot		vdda_mipi_dsi0_1p2:
3040cd4430aSEmmanuel Vadot		vreg_l26a_1p2: ldo26 {
3050cd4430aSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
3060cd4430aSEmmanuel Vadot			regulator-max-microvolt = <1200000>;
3070cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3080cd4430aSEmmanuel Vadot			regulator-boot-on;
3090cd4430aSEmmanuel Vadot		};
3100cd4430aSEmmanuel Vadot
3110cd4430aSEmmanuel Vadot		vreg_l28a_3p0: ldo28 {
3120cd4430aSEmmanuel Vadot			regulator-min-microvolt = <2856000>;
3130cd4430aSEmmanuel Vadot			regulator-max-microvolt = <3008000>;
3140cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
3150cd4430aSEmmanuel Vadot			regulator-boot-on;
3160cd4430aSEmmanuel Vadot			/*
3170cd4430aSEmmanuel Vadot			 * We can't properly bring the panel back if it gets turned off
3180cd4430aSEmmanuel Vadot			 * so keep it's regulators always on for now.
3190cd4430aSEmmanuel Vadot			 */
3200cd4430aSEmmanuel Vadot			regulator-always-on;
3210cd4430aSEmmanuel Vadot		};
3220cd4430aSEmmanuel Vadot	};
3230cd4430aSEmmanuel Vadot
3240cd4430aSEmmanuel Vadot	regulators-1 {
3250cd4430aSEmmanuel Vadot		compatible = "qcom,pmi8998-rpmh-regulators";
3260cd4430aSEmmanuel Vadot		qcom,pmic-id = "b";
3270cd4430aSEmmanuel Vadot
3280cd4430aSEmmanuel Vadot		vdd-bob-supply = <&vph_pwr>;
3290cd4430aSEmmanuel Vadot
3300cd4430aSEmmanuel Vadot		vreg_bob: bob {
3310cd4430aSEmmanuel Vadot			regulator-min-microvolt = <3312000>;
3320cd4430aSEmmanuel Vadot			regulator-max-microvolt = <3600000>;
3330cd4430aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
3340cd4430aSEmmanuel Vadot			regulator-allow-bypass;
3350cd4430aSEmmanuel Vadot		};
3360cd4430aSEmmanuel Vadot	};
3370cd4430aSEmmanuel Vadot
3380cd4430aSEmmanuel Vadot	regulators-2 {
3390cd4430aSEmmanuel Vadot		compatible = "qcom,pm8005-rpmh-regulators";
3400cd4430aSEmmanuel Vadot		qcom,pmic-id = "c";
3410cd4430aSEmmanuel Vadot
3420cd4430aSEmmanuel Vadot		vdd-s1-supply = <&vph_pwr>;
3430cd4430aSEmmanuel Vadot		vdd-s2-supply = <&vph_pwr>;
3440cd4430aSEmmanuel Vadot		vdd-s3-supply = <&vph_pwr>;
3450cd4430aSEmmanuel Vadot		vdd-s4-supply = <&vph_pwr>;
3460cd4430aSEmmanuel Vadot
3470cd4430aSEmmanuel Vadot		vreg_s3c_0p6: smps3 {
3480cd4430aSEmmanuel Vadot			regulator-min-microvolt = <600000>;
3490cd4430aSEmmanuel Vadot			regulator-max-microvolt = <600000>;
3500cd4430aSEmmanuel Vadot		};
3510cd4430aSEmmanuel Vadot	};
3520cd4430aSEmmanuel Vadot};
3530cd4430aSEmmanuel Vadot
3540cd4430aSEmmanuel Vadot&cci {
3550cd4430aSEmmanuel Vadot	status = "okay";
3560cd4430aSEmmanuel Vadot};
3570cd4430aSEmmanuel Vadot
3580cd4430aSEmmanuel Vadot&cci_i2c1 {
3590cd4430aSEmmanuel Vadot	/* actuator @0c */
3600cd4430aSEmmanuel Vadot
3610cd4430aSEmmanuel Vadot	/* front camera, imx355 @1a */
3620cd4430aSEmmanuel Vadot
3630cd4430aSEmmanuel Vadot	/* eeprom @50, at24 driver says 8K */
3640cd4430aSEmmanuel Vadot};
3650cd4430aSEmmanuel Vadot
3660cd4430aSEmmanuel Vadot&cdsp_pas {
3670cd4430aSEmmanuel Vadot	firmware-name = "qcom/sdm845/Google/blueline/cdsp.mbn";
3680cd4430aSEmmanuel Vadot
3690cd4430aSEmmanuel Vadot	status = "okay";
3700cd4430aSEmmanuel Vadot};
3710cd4430aSEmmanuel Vadot
3720cd4430aSEmmanuel Vadot&gcc {
3730cd4430aSEmmanuel Vadot	protected-clocks = <GCC_QSPI_CORE_CLK>,
3740cd4430aSEmmanuel Vadot			   <GCC_QSPI_CORE_CLK_SRC>,
3750cd4430aSEmmanuel Vadot			   <GCC_QSPI_CNOC_PERIPH_AHB_CLK>;
3760cd4430aSEmmanuel Vadot};
3770cd4430aSEmmanuel Vadot
3780cd4430aSEmmanuel Vadot&gpi_dma0 {
3790cd4430aSEmmanuel Vadot	status = "okay";
3800cd4430aSEmmanuel Vadot};
3810cd4430aSEmmanuel Vadot
3820cd4430aSEmmanuel Vadot&gpi_dma1 {
3830cd4430aSEmmanuel Vadot	status = "okay";
3840cd4430aSEmmanuel Vadot};
3850cd4430aSEmmanuel Vadot
3860cd4430aSEmmanuel Vadot&gpu {
3870cd4430aSEmmanuel Vadot	status = "okay";
3880cd4430aSEmmanuel Vadot};
3890cd4430aSEmmanuel Vadot
3900cd4430aSEmmanuel Vadot&gpu_zap_shader {
3910cd4430aSEmmanuel Vadot	firmware-name = "qcom/sdm845/Google/blueline/a630_zap.mbn";
3920cd4430aSEmmanuel Vadot};
3930cd4430aSEmmanuel Vadot
3940cd4430aSEmmanuel Vadot&i2c12 {
3950cd4430aSEmmanuel Vadot	/* Bottom spkr (right) CS35L36 @ 40 */
3960cd4430aSEmmanuel Vadot
3970cd4430aSEmmanuel Vadot	/* Top spkr (left) CS35L36 @ 41 */
3980cd4430aSEmmanuel Vadot};
3990cd4430aSEmmanuel Vadot
4000cd4430aSEmmanuel Vadot&ipa {
4010cd4430aSEmmanuel Vadot	firmware-name = "qcom/sdm845/Google/blueline/ipa_fws.mbn";
4020cd4430aSEmmanuel Vadot	memory-region = <&ipa_fw_mem>;
4030cd4430aSEmmanuel Vadot
4040cd4430aSEmmanuel Vadot	status = "okay";
4050cd4430aSEmmanuel Vadot};
4060cd4430aSEmmanuel Vadot
4070cd4430aSEmmanuel Vadot&mdss {
4080cd4430aSEmmanuel Vadot	status = "okay";
4090cd4430aSEmmanuel Vadot};
4100cd4430aSEmmanuel Vadot
4110cd4430aSEmmanuel Vadot&mss_pil {
4120cd4430aSEmmanuel Vadot	firmware-name = "qcom/sdm845/Google/blueline/mba.mbn",
4130cd4430aSEmmanuel Vadot			"qcom/sdm845/Google/blueline/modem.mbn";
4140cd4430aSEmmanuel Vadot
4150cd4430aSEmmanuel Vadot	status = "okay";
4160cd4430aSEmmanuel Vadot};
4170cd4430aSEmmanuel Vadot
4180cd4430aSEmmanuel Vadot&pm8998_gpios {
4190cd4430aSEmmanuel Vadot	volume_up_gpio: vol-up-active-state {
4200cd4430aSEmmanuel Vadot		pins = "gpio6";
4210cd4430aSEmmanuel Vadot		function = "normal";
4220cd4430aSEmmanuel Vadot		input-enable;
4230cd4430aSEmmanuel Vadot		bias-pull-up;
4240cd4430aSEmmanuel Vadot		qcom,drive-strength = <0>;
4250cd4430aSEmmanuel Vadot	};
4260cd4430aSEmmanuel Vadot};
4270cd4430aSEmmanuel Vadot
4280cd4430aSEmmanuel Vadot&pm8998_resin {
4290cd4430aSEmmanuel Vadot	linux,code = <KEY_VOLUMEDOWN>;
4300cd4430aSEmmanuel Vadot
4310cd4430aSEmmanuel Vadot	status = "okay";
4320cd4430aSEmmanuel Vadot};
4330cd4430aSEmmanuel Vadot
4340cd4430aSEmmanuel Vadot&pmi8998_charger {
4350cd4430aSEmmanuel Vadot	monitored-battery = <&battery>;
4360cd4430aSEmmanuel Vadot
4370cd4430aSEmmanuel Vadot	status = "okay";
4380cd4430aSEmmanuel Vadot};
4390cd4430aSEmmanuel Vadot
4400cd4430aSEmmanuel Vadot&qupv3_id_0 {
4410cd4430aSEmmanuel Vadot	status = "okay";
4420cd4430aSEmmanuel Vadot};
4430cd4430aSEmmanuel Vadot
4440cd4430aSEmmanuel Vadot&qupv3_id_1 {
4450cd4430aSEmmanuel Vadot	status = "okay";
4460cd4430aSEmmanuel Vadot};
4470cd4430aSEmmanuel Vadot
4480cd4430aSEmmanuel Vadot&qup_uart9_rx {
4490cd4430aSEmmanuel Vadot	drive-strength = <2>;
4500cd4430aSEmmanuel Vadot	bias-pull-up;
4510cd4430aSEmmanuel Vadot};
4520cd4430aSEmmanuel Vadot
4530cd4430aSEmmanuel Vadot&qup_uart9_tx {
4540cd4430aSEmmanuel Vadot	drive-strength = <2>;
4550cd4430aSEmmanuel Vadot	bias-disable;
4560cd4430aSEmmanuel Vadot};
4570cd4430aSEmmanuel Vadot
4580cd4430aSEmmanuel Vadot&tlmm {
4590cd4430aSEmmanuel Vadot	gpio-reserved-ranges = < 0 4>, /* SPI (Intel MNH Pixel Visual Core) */
4600cd4430aSEmmanuel Vadot			       <81 4>; /* SPI (most likely Fingerprint Cards FPC1075) */
4610cd4430aSEmmanuel Vadot
4620cd4430aSEmmanuel Vadot	touchscreen_reset: ts-reset-state {
4630cd4430aSEmmanuel Vadot		pins = "gpio99";
4640cd4430aSEmmanuel Vadot		function = "gpio";
4650cd4430aSEmmanuel Vadot		drive-strength = <8>;
4660cd4430aSEmmanuel Vadot		bias-pull-up;
4670cd4430aSEmmanuel Vadot	};
4680cd4430aSEmmanuel Vadot
4690cd4430aSEmmanuel Vadot	touchscreen_pins: ts-pins-gpio-state {
4700cd4430aSEmmanuel Vadot		pins = "gpio125";
4710cd4430aSEmmanuel Vadot		function = "gpio";
4720cd4430aSEmmanuel Vadot		drive-strength = <2>;
4730cd4430aSEmmanuel Vadot		bias-disable;
4740cd4430aSEmmanuel Vadot	};
4750cd4430aSEmmanuel Vadot
4760cd4430aSEmmanuel Vadot	touchscreen_i2c_pins: qup-i2c2-gpio-state {
4770cd4430aSEmmanuel Vadot		pins = "gpio27", "gpio28";
4780cd4430aSEmmanuel Vadot		function = "gpio";
4790cd4430aSEmmanuel Vadot		drive-strength = <2>;
4800cd4430aSEmmanuel Vadot		bias-disable;
4810cd4430aSEmmanuel Vadot	};
4820cd4430aSEmmanuel Vadot};
4830cd4430aSEmmanuel Vadot
4840cd4430aSEmmanuel Vadot&uart6 {
4850cd4430aSEmmanuel Vadot	pinctrl-0 = <&qup_uart6_4pin>;
4860cd4430aSEmmanuel Vadot
4870cd4430aSEmmanuel Vadot	status = "okay";
4880cd4430aSEmmanuel Vadot
4890cd4430aSEmmanuel Vadot	bluetooth {
4900cd4430aSEmmanuel Vadot		compatible = "qcom,wcn3990-bt";
4910cd4430aSEmmanuel Vadot
492*69ed3df4SEmmanuel Vadot		vddio-supply = <&vreg_pmu_io>;
493*69ed3df4SEmmanuel Vadot		vddxo-supply = <&vreg_pmu_xo>;
494*69ed3df4SEmmanuel Vadot		vddrf-supply = <&vreg_pmu_rf>;
495*69ed3df4SEmmanuel Vadot		vddch0-supply = <&vreg_pmu_ch0>;
496*69ed3df4SEmmanuel Vadot
4970cd4430aSEmmanuel Vadot		max-speed = <3200000>;
4980cd4430aSEmmanuel Vadot	};
4990cd4430aSEmmanuel Vadot};
5000cd4430aSEmmanuel Vadot
5010cd4430aSEmmanuel Vadot&uart9 {
5020cd4430aSEmmanuel Vadot	status = "okay";
5030cd4430aSEmmanuel Vadot};
5040cd4430aSEmmanuel Vadot
5050cd4430aSEmmanuel Vadot&ufs_mem_hc {
5060cd4430aSEmmanuel Vadot	reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>;
5070cd4430aSEmmanuel Vadot
5080cd4430aSEmmanuel Vadot	vcc-supply = <&vreg_l20a_2p95>;
5090cd4430aSEmmanuel Vadot	vcc-max-microamp = <800000>;
5100cd4430aSEmmanuel Vadot
5110cd4430aSEmmanuel Vadot	status = "okay";
5120cd4430aSEmmanuel Vadot};
5130cd4430aSEmmanuel Vadot
5140cd4430aSEmmanuel Vadot&ufs_mem_phy {
5150cd4430aSEmmanuel Vadot	vdda-phy-supply = <&vreg_l1a_0p875>;
5160cd4430aSEmmanuel Vadot	vdda-pll-supply = <&vreg_l26a_1p2>;
5170cd4430aSEmmanuel Vadot
5180cd4430aSEmmanuel Vadot	status = "okay";
5190cd4430aSEmmanuel Vadot};
5200cd4430aSEmmanuel Vadot
5210cd4430aSEmmanuel Vadot&usb_1 {
5220cd4430aSEmmanuel Vadot	status = "okay";
5230cd4430aSEmmanuel Vadot};
5240cd4430aSEmmanuel Vadot
5250cd4430aSEmmanuel Vadot&usb_1_dwc3 {
5260cd4430aSEmmanuel Vadot	dr_mode = "peripheral";
5270cd4430aSEmmanuel Vadot};
5280cd4430aSEmmanuel Vadot
5290cd4430aSEmmanuel Vadot&usb_1_hsphy {
5300cd4430aSEmmanuel Vadot	vdd-supply = <&vreg_l1a_0p875>;
5310cd4430aSEmmanuel Vadot	vdda-pll-supply = <&vreg_l12a_1p8>;
5320cd4430aSEmmanuel Vadot	vdda-phy-dpdm-supply = <&vreg_l24a_3p075>;
5330cd4430aSEmmanuel Vadot
5340cd4430aSEmmanuel Vadot	qcom,imp-res-offset-value = <8>;
5350cd4430aSEmmanuel Vadot	qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>;
5360cd4430aSEmmanuel Vadot	qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>;
5370cd4430aSEmmanuel Vadot	qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>;
5380cd4430aSEmmanuel Vadot
5390cd4430aSEmmanuel Vadot	status = "okay";
5400cd4430aSEmmanuel Vadot};
5410cd4430aSEmmanuel Vadot
5420cd4430aSEmmanuel Vadot&usb_1_qmpphy {
5430cd4430aSEmmanuel Vadot	vdda-phy-supply = <&vreg_l26a_1p2>;
5440cd4430aSEmmanuel Vadot	vdda-pll-supply = <&vreg_l1a_0p875>;
5450cd4430aSEmmanuel Vadot
5460cd4430aSEmmanuel Vadot	status = "okay";
5470cd4430aSEmmanuel Vadot};
5480cd4430aSEmmanuel Vadot
5490cd4430aSEmmanuel Vadot&venus {
5500cd4430aSEmmanuel Vadot	firmware-name = "qcom/sdm845/Google/blueline/venus.mbn";
5510cd4430aSEmmanuel Vadot
5520cd4430aSEmmanuel Vadot	status = "okay";
5530cd4430aSEmmanuel Vadot};
5540cd4430aSEmmanuel Vadot
5550cd4430aSEmmanuel Vadot&wifi {
5560cd4430aSEmmanuel Vadot	vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>;
557*69ed3df4SEmmanuel Vadot	vdd-1.8-xo-supply = <&vreg_pmu_xo>;
558*69ed3df4SEmmanuel Vadot	vdd-1.3-rfa-supply = <&vreg_pmu_rf>;
559*69ed3df4SEmmanuel Vadot	vdd-3.3-ch0-supply = <&vreg_pmu_ch0>;
5600cd4430aSEmmanuel Vadot
5610cd4430aSEmmanuel Vadot	qcom,snoc-host-cap-8bit-quirk;
5620cd4430aSEmmanuel Vadot
5630cd4430aSEmmanuel Vadot	status = "okay";
5640cd4430aSEmmanuel Vadot};
565