xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/qcm6490-shift-otter.dts (revision 7d4e49a77d9930c69751b9192448fda6ff9100f1)
1249666e3SCaleb Connolly// SPDX-License-Identifier: BSD-3-Clause
2249666e3SCaleb Connolly/*
3249666e3SCaleb Connolly * Copyright (c) 2023, Luca Weiss <luca.weiss@fairphone.com>
4*f68b5d16SCasey Connolly * Copyright (c) 2024, Casey Connolly <casey.connolly@linaro.org>
5249666e3SCaleb Connolly */
6249666e3SCaleb Connolly
7249666e3SCaleb Connolly/dts-v1/;
8249666e3SCaleb Connolly
9249666e3SCaleb Connolly#define PM7250B_SID 8
10249666e3SCaleb Connolly#define PM7250B_SID1 9
11249666e3SCaleb Connolly
12249666e3SCaleb Connolly#include <dt-bindings/iio/qcom,spmi-adc7-pm7325.h>
13249666e3SCaleb Connolly#include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h>
14249666e3SCaleb Connolly#include <dt-bindings/leds/common.h>
15249666e3SCaleb Connolly#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
16249666e3SCaleb Connolly#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
17249666e3SCaleb Connolly#include "sc7280.dtsi"
18249666e3SCaleb Connolly#include "pm7250b.dtsi"
19249666e3SCaleb Connolly#include "pm7325.dtsi"
20249666e3SCaleb Connolly#include "pm8350c.dtsi" /* PM7350C */
21249666e3SCaleb Connolly#include "pmk8350.dtsi" /* PMK7325 */
22249666e3SCaleb Connolly
23249666e3SCaleb Connolly/delete-node/ &rmtfs_mem;
24249666e3SCaleb Connolly
25249666e3SCaleb Connolly/ {
26249666e3SCaleb Connolly	model = "SHIFT SHIFTphone 8";
27249666e3SCaleb Connolly	compatible = "shift,otter", "qcom,qcm6490";
28249666e3SCaleb Connolly	chassis-type = "handset";
29249666e3SCaleb Connolly
30249666e3SCaleb Connolly	aliases {
31249666e3SCaleb Connolly		serial0 = &uart5;
32249666e3SCaleb Connolly		serial1 = &uart7;
33249666e3SCaleb Connolly	};
34249666e3SCaleb Connolly
35249666e3SCaleb Connolly	chosen {
36249666e3SCaleb Connolly		#address-cells = <2>;
37249666e3SCaleb Connolly		#size-cells = <2>;
38249666e3SCaleb Connolly		ranges;
39249666e3SCaleb Connolly
40249666e3SCaleb Connolly		stdout-path = "serial0:115200n8";
41249666e3SCaleb Connolly
42249666e3SCaleb Connolly		framebuffer0: framebuffer@a000000 {
43249666e3SCaleb Connolly			compatible = "simple-framebuffer";
44249666e3SCaleb Connolly			reg = <0x0 0xe1000000 0x0 (2400 * 1080 * 4)>;
45249666e3SCaleb Connolly			width = <1080>;
46249666e3SCaleb Connolly			height = <2400>;
47249666e3SCaleb Connolly			stride = <(1080 * 4)>;
48249666e3SCaleb Connolly			format = "a8r8g8b8";
49249666e3SCaleb Connolly			clocks = <&gcc GCC_DISP_HF_AXI_CLK>;
50249666e3SCaleb Connolly		};
51249666e3SCaleb Connolly	};
52249666e3SCaleb Connolly
53249666e3SCaleb Connolly	gpio-keys {
54249666e3SCaleb Connolly		compatible = "gpio-keys";
55249666e3SCaleb Connolly
56249666e3SCaleb Connolly		pinctrl-0 = <&volume_down_default>;
57249666e3SCaleb Connolly		pinctrl-names = "default";
58249666e3SCaleb Connolly
59249666e3SCaleb Connolly		key-volume-up {
60249666e3SCaleb Connolly			label = "Volume up";
61249666e3SCaleb Connolly			gpios = <&pm7325_gpios 6 GPIO_ACTIVE_LOW>;
62249666e3SCaleb Connolly			linux,code = <KEY_VOLUMEUP>;
63249666e3SCaleb Connolly			debounce-interval = <15>;
64249666e3SCaleb Connolly		};
65249666e3SCaleb Connolly	};
66249666e3SCaleb Connolly
67249666e3SCaleb Connolly	pmic-glink {
68249666e3SCaleb Connolly		compatible = "qcom,qcm6490-pmic-glink", "qcom,pmic-glink";
69249666e3SCaleb Connolly
70249666e3SCaleb Connolly		#address-cells = <1>;
71249666e3SCaleb Connolly		#size-cells = <0>;
72249666e3SCaleb Connolly
73249666e3SCaleb Connolly		connector@0 {
74249666e3SCaleb Connolly			compatible = "usb-c-connector";
75249666e3SCaleb Connolly			reg = <0>;
76249666e3SCaleb Connolly			power-role = "dual";
77249666e3SCaleb Connolly			data-role = "dual";
78249666e3SCaleb Connolly
79249666e3SCaleb Connolly			ports {
80249666e3SCaleb Connolly				#address-cells = <1>;
81249666e3SCaleb Connolly				#size-cells = <0>;
82249666e3SCaleb Connolly
83249666e3SCaleb Connolly				port@0 {
84249666e3SCaleb Connolly					reg = <0>;
85249666e3SCaleb Connolly
86249666e3SCaleb Connolly					pmic_glink_hs_in: endpoint {
87249666e3SCaleb Connolly						remote-endpoint = <&usb_1_dwc3_hs>;
88249666e3SCaleb Connolly					};
89249666e3SCaleb Connolly				};
90249666e3SCaleb Connolly
91249666e3SCaleb Connolly				port@1 {
92249666e3SCaleb Connolly					reg = <1>;
93249666e3SCaleb Connolly
94249666e3SCaleb Connolly					pmic_glink_ss_in: endpoint {
95249666e3SCaleb Connolly						remote-endpoint = <&usb_dp_qmpphy_out>;
96249666e3SCaleb Connolly					};
97249666e3SCaleb Connolly				};
98249666e3SCaleb Connolly
99249666e3SCaleb Connolly				port@2 {
100249666e3SCaleb Connolly					reg = <2>;
101249666e3SCaleb Connolly
102249666e3SCaleb Connolly					pmic_glink_sbu: endpoint {
103249666e3SCaleb Connolly						remote-endpoint = <&fsa4480_sbu_mux>;
104249666e3SCaleb Connolly					};
105249666e3SCaleb Connolly				};
106249666e3SCaleb Connolly			};
107249666e3SCaleb Connolly		};
108249666e3SCaleb Connolly	};
109249666e3SCaleb Connolly
110249666e3SCaleb Connolly	reserved-memory {
111249666e3SCaleb Connolly		cont_splash_mem: cont-splash@e1000000 {
112249666e3SCaleb Connolly			reg = <0x0 0xe1000000 0x0 0x2300000>;
113249666e3SCaleb Connolly			no-map;
114249666e3SCaleb Connolly		};
115249666e3SCaleb Connolly
116249666e3SCaleb Connolly		cdsp_mem: cdsp@88f00000 {
117249666e3SCaleb Connolly			reg = <0x0 0x88f00000 0x0 0x1e00000>;
118249666e3SCaleb Connolly			no-map;
119249666e3SCaleb Connolly		};
120249666e3SCaleb Connolly
121249666e3SCaleb Connolly		rmtfs_mem: rmtfs@f8500000 {
122249666e3SCaleb Connolly			compatible = "qcom,rmtfs-mem";
123249666e3SCaleb Connolly			reg = <0x0 0xf8500000 0x0 0x600000>;
124249666e3SCaleb Connolly			no-map;
125249666e3SCaleb Connolly
126249666e3SCaleb Connolly			qcom,client-id = <1>;
127249666e3SCaleb Connolly			qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>, <QCOM_SCM_VMID_NAV>;
128249666e3SCaleb Connolly		};
129249666e3SCaleb Connolly	};
130249666e3SCaleb Connolly
131249666e3SCaleb Connolly	thermal-zones {
132249666e3SCaleb Connolly		camera-thermal {
133249666e3SCaleb Connolly			polling-delay-passive = <0>;
134249666e3SCaleb Connolly			polling-delay = <0>;
135249666e3SCaleb Connolly			thermal-sensors = <&pmk8350_adc_tm 2>;
136249666e3SCaleb Connolly
137249666e3SCaleb Connolly			trips {
138249666e3SCaleb Connolly				active-config0 {
139249666e3SCaleb Connolly					temperature = <125000>;
140249666e3SCaleb Connolly					hysteresis = <1000>;
141249666e3SCaleb Connolly					type = "passive";
142249666e3SCaleb Connolly				};
143249666e3SCaleb Connolly			};
144249666e3SCaleb Connolly		};
145249666e3SCaleb Connolly
146249666e3SCaleb Connolly		chg-skin-thermal {
147249666e3SCaleb Connolly			polling-delay-passive = <0>;
148249666e3SCaleb Connolly			polling-delay = <0>;
149249666e3SCaleb Connolly			thermal-sensors = <&pm7250b_adc_tm 0>;
150249666e3SCaleb Connolly
151249666e3SCaleb Connolly			trips {
152249666e3SCaleb Connolly				active-config0 {
153249666e3SCaleb Connolly					temperature = <125000>;
154249666e3SCaleb Connolly					hysteresis = <1000>;
155249666e3SCaleb Connolly					type = "passive";
156249666e3SCaleb Connolly				};
157249666e3SCaleb Connolly			};
158249666e3SCaleb Connolly		};
159249666e3SCaleb Connolly
160249666e3SCaleb Connolly		conn-thermal {
161249666e3SCaleb Connolly			polling-delay-passive = <0>;
162249666e3SCaleb Connolly			polling-delay = <0>;
163249666e3SCaleb Connolly			thermal-sensors = <&pm7250b_adc_tm 1>;
164249666e3SCaleb Connolly
165249666e3SCaleb Connolly			trips {
166249666e3SCaleb Connolly				active-config0 {
167249666e3SCaleb Connolly					temperature = <125000>;
168249666e3SCaleb Connolly					hysteresis = <1000>;
169249666e3SCaleb Connolly					type = "passive";
170249666e3SCaleb Connolly				};
171249666e3SCaleb Connolly			};
172249666e3SCaleb Connolly		};
173249666e3SCaleb Connolly
174249666e3SCaleb Connolly		quiet-thermal {
175249666e3SCaleb Connolly			polling-delay-passive = <0>;
176249666e3SCaleb Connolly			polling-delay = <0>;
177249666e3SCaleb Connolly			thermal-sensors = <&pmk8350_adc_tm 1>;
178249666e3SCaleb Connolly
179249666e3SCaleb Connolly			trips {
180249666e3SCaleb Connolly				active-config0 {
181249666e3SCaleb Connolly					temperature = <125000>;
182249666e3SCaleb Connolly					hysteresis = <1000>;
183249666e3SCaleb Connolly					type = "passive";
184249666e3SCaleb Connolly				};
185249666e3SCaleb Connolly			};
186249666e3SCaleb Connolly		};
187249666e3SCaleb Connolly
188249666e3SCaleb Connolly		rear-cam-thermal {
189249666e3SCaleb Connolly			polling-delay-passive = <0>;
190249666e3SCaleb Connolly			polling-delay = <0>;
191249666e3SCaleb Connolly			thermal-sensors = <&pmk8350_adc_tm 4>;
192249666e3SCaleb Connolly
193249666e3SCaleb Connolly			trips {
194249666e3SCaleb Connolly				active-config0 {
195249666e3SCaleb Connolly					temperature = <125000>;
196249666e3SCaleb Connolly					hysteresis = <1000>;
197249666e3SCaleb Connolly					type = "passive";
198249666e3SCaleb Connolly				};
199249666e3SCaleb Connolly			};
200249666e3SCaleb Connolly		};
201249666e3SCaleb Connolly
202249666e3SCaleb Connolly		sdm-skin-thermal {
203249666e3SCaleb Connolly			polling-delay-passive = <0>;
204249666e3SCaleb Connolly			polling-delay = <0>;
205249666e3SCaleb Connolly			thermal-sensors = <&pmk8350_adc_tm 3>;
206249666e3SCaleb Connolly
207249666e3SCaleb Connolly			trips {
208249666e3SCaleb Connolly				active-config0 {
209249666e3SCaleb Connolly					temperature = <125000>;
210249666e3SCaleb Connolly					hysteresis = <1000>;
211249666e3SCaleb Connolly					type = "passive";
212249666e3SCaleb Connolly				};
213249666e3SCaleb Connolly			};
214249666e3SCaleb Connolly		};
215249666e3SCaleb Connolly
216249666e3SCaleb Connolly		xo-thermal {
217249666e3SCaleb Connolly			polling-delay-passive = <0>;
218249666e3SCaleb Connolly			polling-delay = <0>;
219249666e3SCaleb Connolly			thermal-sensors = <&pmk8350_adc_tm 0>;
220249666e3SCaleb Connolly
221249666e3SCaleb Connolly			trips {
222249666e3SCaleb Connolly				active-config0 {
223249666e3SCaleb Connolly					temperature = <125000>;
224249666e3SCaleb Connolly					hysteresis = <1000>;
225249666e3SCaleb Connolly					type = "passive";
226249666e3SCaleb Connolly				};
227249666e3SCaleb Connolly			};
228249666e3SCaleb Connolly		};
229249666e3SCaleb Connolly	};
230249666e3SCaleb Connolly};
231249666e3SCaleb Connolly
232249666e3SCaleb Connolly&apps_rsc {
233249666e3SCaleb Connolly	regulators-0 {
234249666e3SCaleb Connolly		compatible = "qcom,pm7325-rpmh-regulators";
235249666e3SCaleb Connolly		qcom,pmic-id = "b";
236249666e3SCaleb Connolly
237249666e3SCaleb Connolly		vreg_s1b: smps1 {
238e160c41bSLuca Weiss			regulator-name = "vreg_s1b";
239249666e3SCaleb Connolly			regulator-min-microvolt = <1840000>;
240249666e3SCaleb Connolly			regulator-max-microvolt = <2040000>;
241249666e3SCaleb Connolly		};
242249666e3SCaleb Connolly
243249666e3SCaleb Connolly		vreg_s7b: smps7 {
244e160c41bSLuca Weiss			regulator-name = "vreg_s7b";
245249666e3SCaleb Connolly			regulator-min-microvolt = <535000>;
246249666e3SCaleb Connolly			regulator-max-microvolt = <1120000>;
247249666e3SCaleb Connolly		};
248249666e3SCaleb Connolly
249249666e3SCaleb Connolly		vreg_s8b: smps8 {
250e160c41bSLuca Weiss			regulator-name = "vreg_s8b";
251249666e3SCaleb Connolly			regulator-min-microvolt = <1200000>;
252249666e3SCaleb Connolly			regulator-max-microvolt = <1500000>;
253249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_RET>;
254249666e3SCaleb Connolly		};
255249666e3SCaleb Connolly
256249666e3SCaleb Connolly		vreg_l1b: ldo1 {
257e160c41bSLuca Weiss			regulator-name = "vreg_l1b";
258249666e3SCaleb Connolly			regulator-min-microvolt = <825000>;
259249666e3SCaleb Connolly			regulator-max-microvolt = <925000>;
260249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
261249666e3SCaleb Connolly		};
262249666e3SCaleb Connolly
263249666e3SCaleb Connolly		vreg_l2b: ldo2 {
264e160c41bSLuca Weiss			regulator-name = "vreg_l2b";
265249666e3SCaleb Connolly			regulator-min-microvolt = <2700000>;
266249666e3SCaleb Connolly			regulator-max-microvolt = <3544000>;
267249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
268249666e3SCaleb Connolly		};
269249666e3SCaleb Connolly
270249666e3SCaleb Connolly		vreg_l3b: ldo3 {
271e160c41bSLuca Weiss			regulator-name = "vreg_l3b";
272249666e3SCaleb Connolly			regulator-min-microvolt = <312000>;
273249666e3SCaleb Connolly			regulator-max-microvolt = <910000>;
274249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
275249666e3SCaleb Connolly		};
276249666e3SCaleb Connolly
277249666e3SCaleb Connolly		vreg_l6b: ldo6 {
278e160c41bSLuca Weiss			regulator-name = "vreg_l6b";
279249666e3SCaleb Connolly			regulator-min-microvolt = <1140000>;
280249666e3SCaleb Connolly			regulator-max-microvolt = <1260000>;
281249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
282249666e3SCaleb Connolly		};
283249666e3SCaleb Connolly
284249666e3SCaleb Connolly		vreg_l7b: ldo7 {
285e160c41bSLuca Weiss			regulator-name = "vreg_l7b";
286249666e3SCaleb Connolly			/* Constrained for UFS VCC, at least until UFS driver scales voltage */
287249666e3SCaleb Connolly			regulator-min-microvolt = <2952000>;
288249666e3SCaleb Connolly			regulator-max-microvolt = <2952000>;
289249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
290249666e3SCaleb Connolly		};
291249666e3SCaleb Connolly
292249666e3SCaleb Connolly		vreg_l8b: ldo8 {
293e160c41bSLuca Weiss			regulator-name = "vreg_l8b";
294249666e3SCaleb Connolly			regulator-min-microvolt = <870000>;
295249666e3SCaleb Connolly			regulator-max-microvolt = <970000>;
296249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
297249666e3SCaleb Connolly		};
298249666e3SCaleb Connolly
299249666e3SCaleb Connolly		vreg_l9b: ldo9 {
300e160c41bSLuca Weiss			regulator-name = "vreg_l9b";
301249666e3SCaleb Connolly			regulator-min-microvolt = <1200000>;
302249666e3SCaleb Connolly			regulator-max-microvolt = <1304000>;
303249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
304249666e3SCaleb Connolly		};
305249666e3SCaleb Connolly
306249666e3SCaleb Connolly		vreg_l11b: ldo11 {
307e160c41bSLuca Weiss			regulator-name = "vreg_l11b";
308249666e3SCaleb Connolly			regulator-min-microvolt = <1504000>;
309249666e3SCaleb Connolly			regulator-max-microvolt = <2000000>;
310249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
311249666e3SCaleb Connolly		};
312249666e3SCaleb Connolly
313249666e3SCaleb Connolly		vreg_l12b: ldo12 {
314e160c41bSLuca Weiss			regulator-name = "vreg_l12b";
315249666e3SCaleb Connolly			regulator-min-microvolt = <751000>;
316249666e3SCaleb Connolly			regulator-max-microvolt = <824000>;
317249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
318249666e3SCaleb Connolly		};
319249666e3SCaleb Connolly
320249666e3SCaleb Connolly		vreg_l13b: ldo13 {
321e160c41bSLuca Weiss			regulator-name = "vreg_l13b";
322249666e3SCaleb Connolly			regulator-min-microvolt = <530000>;
323249666e3SCaleb Connolly			regulator-max-microvolt = <824000>;
324249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
325249666e3SCaleb Connolly		};
326249666e3SCaleb Connolly
327249666e3SCaleb Connolly		vreg_l14b: ldo14 {
328e160c41bSLuca Weiss			regulator-name = "vreg_l14b";
329249666e3SCaleb Connolly			regulator-min-microvolt = <1080000>;
330249666e3SCaleb Connolly			regulator-max-microvolt = <1304000>;
331249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
332249666e3SCaleb Connolly		};
333249666e3SCaleb Connolly
334249666e3SCaleb Connolly		vreg_l15b: ldo15 {
335e160c41bSLuca Weiss			regulator-name = "vreg_l15b";
336249666e3SCaleb Connolly			regulator-min-microvolt = <765000>;
337249666e3SCaleb Connolly			regulator-max-microvolt = <1020000>;
338249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
339249666e3SCaleb Connolly		};
340249666e3SCaleb Connolly
341249666e3SCaleb Connolly		vreg_l16b: ldo16 {
342e160c41bSLuca Weiss			regulator-name = "vreg_l16b";
343249666e3SCaleb Connolly			regulator-min-microvolt = <1100000>;
344249666e3SCaleb Connolly			regulator-max-microvolt = <1300000>;
345249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
346249666e3SCaleb Connolly		};
347249666e3SCaleb Connolly
348249666e3SCaleb Connolly		vreg_l17b: ldo17 {
349e160c41bSLuca Weiss			regulator-name = "vreg_l17b";
350249666e3SCaleb Connolly			regulator-min-microvolt = <1700000>;
351249666e3SCaleb Connolly			regulator-max-microvolt = <1900000>;
352249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
353249666e3SCaleb Connolly		};
354249666e3SCaleb Connolly
355249666e3SCaleb Connolly		vreg_l18b: ldo18 {
356e160c41bSLuca Weiss			regulator-name = "vreg_l18b";
357249666e3SCaleb Connolly			regulator-min-microvolt = <1800000>;
358249666e3SCaleb Connolly			regulator-max-microvolt = <2000000>;
359249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
360249666e3SCaleb Connolly		};
361249666e3SCaleb Connolly
362249666e3SCaleb Connolly		vreg_l19b: ldo19 {
363e160c41bSLuca Weiss			regulator-name = "vreg_l19b";
364249666e3SCaleb Connolly			regulator-min-microvolt = <1800000>;
365249666e3SCaleb Connolly			regulator-max-microvolt = <2000000>;
366249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
367249666e3SCaleb Connolly		};
368249666e3SCaleb Connolly	};
369249666e3SCaleb Connolly
370249666e3SCaleb Connolly	regulators-1 {
371249666e3SCaleb Connolly		compatible = "qcom,pm8350c-rpmh-regulators";
372249666e3SCaleb Connolly		qcom,pmic-id = "c";
373249666e3SCaleb Connolly
374249666e3SCaleb Connolly		vreg_s1c: smps1 {
375e160c41bSLuca Weiss			regulator-name = "vreg_s1c";
376249666e3SCaleb Connolly			regulator-min-microvolt = <2190000>;
377249666e3SCaleb Connolly			regulator-max-microvolt = <2210000>;
378249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
379249666e3SCaleb Connolly		};
380249666e3SCaleb Connolly
381249666e3SCaleb Connolly		vreg_s9c: smps9 {
382e160c41bSLuca Weiss			regulator-name = "vreg_s9c";
383249666e3SCaleb Connolly			regulator-min-microvolt = <1010000>;
384249666e3SCaleb Connolly			regulator-max-microvolt = <1170000>;
385249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
386249666e3SCaleb Connolly		};
387249666e3SCaleb Connolly
388249666e3SCaleb Connolly		vreg_l1c: ldo1 {
389e160c41bSLuca Weiss			regulator-name = "vreg_l1c";
390249666e3SCaleb Connolly			regulator-min-microvolt = <1800000>;
391249666e3SCaleb Connolly			regulator-max-microvolt = <1980000>;
392249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
393249666e3SCaleb Connolly		};
394249666e3SCaleb Connolly
395249666e3SCaleb Connolly		vreg_l2c: ldo2 {
396e160c41bSLuca Weiss			regulator-name = "vreg_l2c";
397249666e3SCaleb Connolly			regulator-min-microvolt = <1800000>;
398249666e3SCaleb Connolly			regulator-max-microvolt = <1950000>;
399249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
400249666e3SCaleb Connolly		};
401249666e3SCaleb Connolly
402249666e3SCaleb Connolly		vreg_l3c: ldo3 {
403e160c41bSLuca Weiss			regulator-name = "vreg_l3c";
404249666e3SCaleb Connolly			regulator-min-microvolt = <3000000>;
405249666e3SCaleb Connolly			regulator-max-microvolt = <3400000>;
406249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
407249666e3SCaleb Connolly		};
408249666e3SCaleb Connolly
409249666e3SCaleb Connolly		vreg_l4c: ldo4 {
410e160c41bSLuca Weiss			regulator-name = "vreg_l4c";
411249666e3SCaleb Connolly			regulator-min-microvolt = <1620000>;
412249666e3SCaleb Connolly			regulator-max-microvolt = <3300000>;
413249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
414249666e3SCaleb Connolly		};
415249666e3SCaleb Connolly
416249666e3SCaleb Connolly		vreg_l5c: ldo5 {
417e160c41bSLuca Weiss			regulator-name = "vreg_l5c";
418249666e3SCaleb Connolly			regulator-min-microvolt = <1620000>;
419249666e3SCaleb Connolly			regulator-max-microvolt = <3300000>;
420249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
421249666e3SCaleb Connolly		};
422249666e3SCaleb Connolly
423249666e3SCaleb Connolly		vreg_l6c: ldo6 {
424e160c41bSLuca Weiss			regulator-name = "vreg_l6c";
425249666e3SCaleb Connolly			regulator-min-microvolt = <1650000>;
426249666e3SCaleb Connolly			regulator-max-microvolt = <3544000>;
427249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
428249666e3SCaleb Connolly		};
429249666e3SCaleb Connolly
430249666e3SCaleb Connolly		vreg_l7c: ldo7 {
431e160c41bSLuca Weiss			regulator-name = "vreg_l7c";
432249666e3SCaleb Connolly			regulator-min-microvolt = <3000000>;
433249666e3SCaleb Connolly			regulator-max-microvolt = <3544000>;
434249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
435249666e3SCaleb Connolly		};
436249666e3SCaleb Connolly
437249666e3SCaleb Connolly		vreg_l8c: ldo8 {
438e160c41bSLuca Weiss			regulator-name = "vreg_l8c";
439249666e3SCaleb Connolly			regulator-min-microvolt = <1620000>;
440249666e3SCaleb Connolly			regulator-max-microvolt = <2000000>;
441249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
442249666e3SCaleb Connolly		};
443249666e3SCaleb Connolly
444249666e3SCaleb Connolly		vreg_l9c: ldo9 {
445e160c41bSLuca Weiss			regulator-name = "vreg_l9c";
446249666e3SCaleb Connolly			regulator-min-microvolt = <2700000>;
447249666e3SCaleb Connolly			regulator-max-microvolt = <3544000>;
448249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
449249666e3SCaleb Connolly		};
450249666e3SCaleb Connolly
451249666e3SCaleb Connolly		vreg_l10c: ldo10 {
452e160c41bSLuca Weiss			regulator-name = "vreg_l10c";
453249666e3SCaleb Connolly			regulator-min-microvolt = <720000>;
454249666e3SCaleb Connolly			regulator-max-microvolt = <1050000>;
455249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
456249666e3SCaleb Connolly		};
457249666e3SCaleb Connolly
458249666e3SCaleb Connolly		vreg_l11c: ldo11 {
459e160c41bSLuca Weiss			regulator-name = "vreg_l11c";
460249666e3SCaleb Connolly			regulator-min-microvolt = <2800000>;
461249666e3SCaleb Connolly			regulator-max-microvolt = <3544000>;
462249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
463249666e3SCaleb Connolly		};
464249666e3SCaleb Connolly
465249666e3SCaleb Connolly		vreg_l12c: ldo12 {
466e160c41bSLuca Weiss			regulator-name = "vreg_l12c";
467249666e3SCaleb Connolly			regulator-min-microvolt = <1650000>;
468249666e3SCaleb Connolly			regulator-max-microvolt = <2000000>;
469249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
470249666e3SCaleb Connolly		};
471249666e3SCaleb Connolly
472249666e3SCaleb Connolly		vreg_l13c: ldo13 {
473e160c41bSLuca Weiss			regulator-name = "vreg_l13c";
474249666e3SCaleb Connolly			regulator-min-microvolt = <2700000>;
475249666e3SCaleb Connolly			regulator-max-microvolt = <3544000>;
476249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
477249666e3SCaleb Connolly		};
478249666e3SCaleb Connolly
479249666e3SCaleb Connolly		vreg_bob: bob {
480e160c41bSLuca Weiss			regulator-name = "vreg_bob";
481249666e3SCaleb Connolly			regulator-min-microvolt = <3008000>;
482249666e3SCaleb Connolly			regulator-max-microvolt = <3960000>;
483249666e3SCaleb Connolly			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
484249666e3SCaleb Connolly		};
485249666e3SCaleb Connolly	};
486249666e3SCaleb Connolly};
487249666e3SCaleb Connolly
488249666e3SCaleb Connolly&gcc {
489249666e3SCaleb Connolly	protected-clocks = <GCC_CFG_NOC_LPASS_CLK>,
490249666e3SCaleb Connolly			   <GCC_EDP_CLKREF_EN>,
491249666e3SCaleb Connolly			   <GCC_MSS_CFG_AHB_CLK>,
492249666e3SCaleb Connolly			   <GCC_MSS_GPLL0_MAIN_DIV_CLK_SRC>,
493249666e3SCaleb Connolly			   <GCC_MSS_OFFLINE_AXI_CLK>,
494249666e3SCaleb Connolly			   <GCC_MSS_Q6SS_BOOT_CLK_SRC>,
495249666e3SCaleb Connolly			   <GCC_MSS_Q6_MEMNOC_AXI_CLK>,
496249666e3SCaleb Connolly			   <GCC_MSS_SNOC_AXI_CLK>,
497249666e3SCaleb Connolly			   <GCC_QSPI_CNOC_PERIPH_AHB_CLK>,
498249666e3SCaleb Connolly			   <GCC_QSPI_CORE_CLK>,
499249666e3SCaleb Connolly			   <GCC_QSPI_CORE_CLK_SRC>,
500249666e3SCaleb Connolly			   <GCC_SEC_CTRL_CLK_SRC>,
501249666e3SCaleb Connolly			   <GCC_WPSS_AHB_BDG_MST_CLK>,
502249666e3SCaleb Connolly			   <GCC_WPSS_AHB_CLK>,
503249666e3SCaleb Connolly			   <GCC_WPSS_RSCP_CLK>;
504249666e3SCaleb Connolly};
505249666e3SCaleb Connolly
506249666e3SCaleb Connolly&gpi_dma0 {
507249666e3SCaleb Connolly	status = "okay";
508249666e3SCaleb Connolly};
509249666e3SCaleb Connolly
510249666e3SCaleb Connolly&gpi_dma1 {
511249666e3SCaleb Connolly	status = "okay";
512249666e3SCaleb Connolly};
513249666e3SCaleb Connolly
514249666e3SCaleb Connolly&gpu {
515249666e3SCaleb Connolly	status = "okay";
516249666e3SCaleb Connolly};
517249666e3SCaleb Connolly
518249666e3SCaleb Connolly&gpu_zap_shader {
519249666e3SCaleb Connolly	firmware-name = "qcom/qcm6490/SHIFT/otter/a660_zap.mbn";
520249666e3SCaleb Connolly};
521249666e3SCaleb Connolly
522249666e3SCaleb Connolly&i2c1 {
523249666e3SCaleb Connolly	status = "okay";
524249666e3SCaleb Connolly
525249666e3SCaleb Connolly	/* PM8008 PMIC @ 8 and 9 */
526249666e3SCaleb Connolly	/* rtc6226 FM receiver @ 64 */
527249666e3SCaleb Connolly
528249666e3SCaleb Connolly	typec-mux@42 {
529249666e3SCaleb Connolly		compatible = "fcs,fsa4480";
530249666e3SCaleb Connolly		reg = <0x42>;
531249666e3SCaleb Connolly
532249666e3SCaleb Connolly		vcc-supply = <&vreg_bob>;
533249666e3SCaleb Connolly
534249666e3SCaleb Connolly		mode-switch;
535249666e3SCaleb Connolly		orientation-switch;
536249666e3SCaleb Connolly
537249666e3SCaleb Connolly		port {
538249666e3SCaleb Connolly			fsa4480_sbu_mux: endpoint {
539249666e3SCaleb Connolly				remote-endpoint = <&pmic_glink_sbu>;
540249666e3SCaleb Connolly			};
541249666e3SCaleb Connolly		};
542249666e3SCaleb Connolly	};
543249666e3SCaleb Connolly};
544249666e3SCaleb Connolly
545249666e3SCaleb Connolly&i2c4 {
546249666e3SCaleb Connolly	status = "okay";
547249666e3SCaleb Connolly
548249666e3SCaleb Connolly	/* tas2563 audio codec @ 4d */
549249666e3SCaleb Connolly};
550249666e3SCaleb Connolly
551249666e3SCaleb Connolly&i2c9 {
552249666e3SCaleb Connolly	status = "okay";
553249666e3SCaleb Connolly
554249666e3SCaleb Connolly	/* TMS(?) NFC @ 28 */
555249666e3SCaleb Connolly	/* Ti drv2624 haptics @ 5a */
556249666e3SCaleb Connolly};
557249666e3SCaleb Connolly
558249666e3SCaleb Connolly&i2c13 {
559249666e3SCaleb Connolly	status = "okay";
560249666e3SCaleb Connolly
561249666e3SCaleb Connolly	/* focaltech FT3658U @ 38 */
562249666e3SCaleb Connolly};
563249666e3SCaleb Connolly
564249666e3SCaleb Connolly&ipa {
565249666e3SCaleb Connolly	qcom,gsi-loader = "self";
566249666e3SCaleb Connolly	memory-region = <&ipa_fw_mem>;
567249666e3SCaleb Connolly	firmware-name = "qcom/qcm6490/SHIFT/otter/ipa_fws.mbn";
568249666e3SCaleb Connolly	status = "okay";
569249666e3SCaleb Connolly};
570249666e3SCaleb Connolly
571249666e3SCaleb Connolly&pm7250b_adc {
572249666e3SCaleb Connolly	channel@4d {
573249666e3SCaleb Connolly		reg = <ADC5_AMUX_THM1_100K_PU>;
574249666e3SCaleb Connolly		qcom,ratiometric;
575249666e3SCaleb Connolly		qcom,hw-settle-time = <200>;
576249666e3SCaleb Connolly		qcom,pre-scaling = <1 1>;
577249666e3SCaleb Connolly		label = "charger_skin_therm";
578249666e3SCaleb Connolly	};
579249666e3SCaleb Connolly
580249666e3SCaleb Connolly	channel@4f {
581249666e3SCaleb Connolly		reg = <ADC5_AMUX_THM3_100K_PU>;
582249666e3SCaleb Connolly		qcom,ratiometric;
583249666e3SCaleb Connolly		qcom,hw-settle-time = <200>;
584249666e3SCaleb Connolly		qcom,pre-scaling = <1 1>;
585249666e3SCaleb Connolly		label = "conn_therm";
586249666e3SCaleb Connolly	};
587249666e3SCaleb Connolly};
588249666e3SCaleb Connolly
589249666e3SCaleb Connolly&pm7250b_adc_tm {
590249666e3SCaleb Connolly	status = "okay";
591249666e3SCaleb Connolly
592249666e3SCaleb Connolly	charger-skin-therm@0 {
593249666e3SCaleb Connolly		reg = <0>;
594249666e3SCaleb Connolly		io-channels = <&pm7250b_adc ADC5_AMUX_THM1_100K_PU>;
595249666e3SCaleb Connolly		qcom,ratiometric;
596249666e3SCaleb Connolly		qcom,hw-settle-time-us = <200>;
597249666e3SCaleb Connolly	};
598249666e3SCaleb Connolly
599249666e3SCaleb Connolly	conn-therm@1 {
600249666e3SCaleb Connolly		reg = <1>;
601249666e3SCaleb Connolly		io-channels = <&pm7250b_adc ADC5_AMUX_THM3_100K_PU>;
602249666e3SCaleb Connolly		qcom,ratiometric;
603249666e3SCaleb Connolly		qcom,hw-settle-time-us = <200>;
604249666e3SCaleb Connolly	};
605249666e3SCaleb Connolly};
606249666e3SCaleb Connolly
607249666e3SCaleb Connolly&pm7325_gpios {
608249666e3SCaleb Connolly	volume_down_default: volume-down-default-state {
609249666e3SCaleb Connolly		pins = "gpio6";
610249666e3SCaleb Connolly		function = PMIC_GPIO_FUNC_NORMAL;
611249666e3SCaleb Connolly		power-source = <1>;
612249666e3SCaleb Connolly		bias-pull-up;
613249666e3SCaleb Connolly		input-enable;
614249666e3SCaleb Connolly	};
615249666e3SCaleb Connolly};
616249666e3SCaleb Connolly
617249666e3SCaleb Connolly&pmk8350_adc_tm {
618249666e3SCaleb Connolly	status = "okay";
619249666e3SCaleb Connolly
620249666e3SCaleb Connolly	xo-therm@0 {
621249666e3SCaleb Connolly		reg = <0>;
622249666e3SCaleb Connolly		io-channels = <&pmk8350_vadc PMK8350_ADC7_AMUX_THM1_100K_PU>;
623249666e3SCaleb Connolly		qcom,ratiometric;
624249666e3SCaleb Connolly		qcom,hw-settle-time-us = <200>;
625249666e3SCaleb Connolly	};
626249666e3SCaleb Connolly
627249666e3SCaleb Connolly	quiet-therm@1 {
628249666e3SCaleb Connolly		reg = <1>;
629249666e3SCaleb Connolly		io-channels = <&pmk8350_vadc PM7325_ADC7_AMUX_THM1_100K_PU>;
630249666e3SCaleb Connolly		qcom,ratiometric;
631249666e3SCaleb Connolly		qcom,hw-settle-time-us = <200>;
632249666e3SCaleb Connolly	};
633249666e3SCaleb Connolly
634249666e3SCaleb Connolly	cam-flash-therm@2 {
635249666e3SCaleb Connolly		reg = <2>;
636249666e3SCaleb Connolly		io-channels = <&pmk8350_vadc PM7325_ADC7_AMUX_THM2_100K_PU>;
637249666e3SCaleb Connolly		qcom,ratiometric;
638249666e3SCaleb Connolly		qcom,hw-settle-time-us = <200>;
639249666e3SCaleb Connolly	};
640249666e3SCaleb Connolly
641249666e3SCaleb Connolly	sdm-skin-therm@3 {
642249666e3SCaleb Connolly		reg = <3>;
643249666e3SCaleb Connolly		io-channels = <&pmk8350_vadc PM7325_ADC7_AMUX_THM3_100K_PU>;
644249666e3SCaleb Connolly		qcom,ratiometric;
645249666e3SCaleb Connolly		qcom,hw-settle-time-us = <200>;
646249666e3SCaleb Connolly	};
647249666e3SCaleb Connolly
648249666e3SCaleb Connolly	wide-rfc-therm@4 {
649249666e3SCaleb Connolly		reg = <4>;
650249666e3SCaleb Connolly		io-channels = <&pmk8350_vadc PM7325_ADC7_AMUX_THM4_100K_PU>;
651249666e3SCaleb Connolly		qcom,ratiometric;
652249666e3SCaleb Connolly		qcom,hw-settle-time-us = <200>;
653249666e3SCaleb Connolly	};
654249666e3SCaleb Connolly};
655249666e3SCaleb Connolly
656249666e3SCaleb Connolly&pmk8350_rtc {
657249666e3SCaleb Connolly	status = "okay";
658249666e3SCaleb Connolly};
659249666e3SCaleb Connolly
660249666e3SCaleb Connolly&pmk8350_vadc {
661249666e3SCaleb Connolly	status = "okay";
662249666e3SCaleb Connolly
663249666e3SCaleb Connolly	channel@44 {
664249666e3SCaleb Connolly		reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>;
665249666e3SCaleb Connolly		qcom,ratiometric;
666249666e3SCaleb Connolly		qcom,hw-settle-time = <200>;
667249666e3SCaleb Connolly		qcom,pre-scaling = <1 1>;
668249666e3SCaleb Connolly		label = "pmk8350_xo_therm";
669249666e3SCaleb Connolly	};
670249666e3SCaleb Connolly
671249666e3SCaleb Connolly	channel@144 {
672249666e3SCaleb Connolly		reg = <PM7325_ADC7_AMUX_THM1_100K_PU>;
673249666e3SCaleb Connolly		qcom,ratiometric;
674249666e3SCaleb Connolly		qcom,hw-settle-time = <200>;
675249666e3SCaleb Connolly		qcom,pre-scaling = <1 1>;
676249666e3SCaleb Connolly		label = "pm7325_quiet_therm";
677249666e3SCaleb Connolly	};
678249666e3SCaleb Connolly
679249666e3SCaleb Connolly	channel@145 {
680249666e3SCaleb Connolly		reg = <PM7325_ADC7_AMUX_THM2_100K_PU>;
681249666e3SCaleb Connolly		qcom,ratiometric;
682249666e3SCaleb Connolly		qcom,hw-settle-time = <200>;
683249666e3SCaleb Connolly		qcom,pre-scaling = <1 1>;
684249666e3SCaleb Connolly		label = "pm7325_cam_flash_therm";
685249666e3SCaleb Connolly	};
686249666e3SCaleb Connolly
687249666e3SCaleb Connolly	channel@146 {
688249666e3SCaleb Connolly		reg = <PM7325_ADC7_AMUX_THM3_100K_PU>;
689249666e3SCaleb Connolly		qcom,ratiometric;
690249666e3SCaleb Connolly		qcom,hw-settle-time = <200>;
691249666e3SCaleb Connolly		qcom,pre-scaling = <1 1>;
692249666e3SCaleb Connolly		label = "pm7325_sdm_skin_therm";
693249666e3SCaleb Connolly	};
694249666e3SCaleb Connolly
695249666e3SCaleb Connolly	channel@147 {
696249666e3SCaleb Connolly		reg = <PM7325_ADC7_AMUX_THM4_100K_PU>;
697249666e3SCaleb Connolly		qcom,ratiometric;
698249666e3SCaleb Connolly		qcom,hw-settle-time = <200>;
699249666e3SCaleb Connolly		qcom,pre-scaling = <1 1>;
700249666e3SCaleb Connolly		label = "pm7325_wide_rfc_therm";
701249666e3SCaleb Connolly	};
702249666e3SCaleb Connolly};
703249666e3SCaleb Connolly
704249666e3SCaleb Connolly&pon_pwrkey {
705249666e3SCaleb Connolly	status = "okay";
706249666e3SCaleb Connolly};
707249666e3SCaleb Connolly
708249666e3SCaleb Connolly&pon_resin {
709249666e3SCaleb Connolly	linux,code = <KEY_VOLUMEDOWN>;
710249666e3SCaleb Connolly	status = "okay";
711249666e3SCaleb Connolly};
712249666e3SCaleb Connolly
713249666e3SCaleb Connolly&qup_spi13_cs {
714249666e3SCaleb Connolly	drive-strength = <6>;
715249666e3SCaleb Connolly	bias-disable;
716249666e3SCaleb Connolly};
717249666e3SCaleb Connolly
718249666e3SCaleb Connolly&qup_spi13_data_clk {
719249666e3SCaleb Connolly	drive-strength = <6>;
720249666e3SCaleb Connolly	bias-disable;
721249666e3SCaleb Connolly};
722249666e3SCaleb Connolly
723249666e3SCaleb Connolly&qup_uart5_rx {
724249666e3SCaleb Connolly	drive-strength = <2>;
725249666e3SCaleb Connolly	bias-disable;
726249666e3SCaleb Connolly};
727249666e3SCaleb Connolly
728249666e3SCaleb Connolly&qup_uart5_tx {
729249666e3SCaleb Connolly	drive-strength = <2>;
730249666e3SCaleb Connolly	bias-disable;
731249666e3SCaleb Connolly};
732249666e3SCaleb Connolly
733249666e3SCaleb Connolly&qupv3_id_0 {
734249666e3SCaleb Connolly	status = "okay";
735249666e3SCaleb Connolly};
736249666e3SCaleb Connolly
737249666e3SCaleb Connolly&qupv3_id_1 {
738249666e3SCaleb Connolly	status = "okay";
739249666e3SCaleb Connolly};
740249666e3SCaleb Connolly
741249666e3SCaleb Connolly&remoteproc_adsp {
742249666e3SCaleb Connolly	firmware-name = "qcom/qcm6490/SHIFT/otter/adsp.mbn";
743249666e3SCaleb Connolly	status = "okay";
744249666e3SCaleb Connolly};
745249666e3SCaleb Connolly
746249666e3SCaleb Connolly&remoteproc_cdsp {
747249666e3SCaleb Connolly	firmware-name = "qcom/qcm6490/SHIFT/otter/cdsp.mbn";
748249666e3SCaleb Connolly	status = "okay";
749249666e3SCaleb Connolly};
750249666e3SCaleb Connolly
751249666e3SCaleb Connolly&remoteproc_mpss {
752249666e3SCaleb Connolly	firmware-name = "qcom/qcm6490/SHIFT/otter/modem.mbn";
753249666e3SCaleb Connolly	status = "okay";
754249666e3SCaleb Connolly};
755249666e3SCaleb Connolly
756249666e3SCaleb Connolly&remoteproc_wpss {
757249666e3SCaleb Connolly	firmware-name = "qcom/qcm6490/SHIFT/otter/wpss.mbn";
758249666e3SCaleb Connolly	status = "okay";
759249666e3SCaleb Connolly};
760249666e3SCaleb Connolly
761249666e3SCaleb Connolly&sdc2_clk {
762249666e3SCaleb Connolly	drive-strength = <16>;
763249666e3SCaleb Connolly	bias-disable;
764249666e3SCaleb Connolly};
765249666e3SCaleb Connolly
766249666e3SCaleb Connolly&sdc2_cmd {
767249666e3SCaleb Connolly	drive-strength = <10>;
768249666e3SCaleb Connolly	bias-pull-up;
769249666e3SCaleb Connolly};
770249666e3SCaleb Connolly
771249666e3SCaleb Connolly&sdc2_data {
772249666e3SCaleb Connolly	drive-strength = <10>;
773249666e3SCaleb Connolly	bias-pull-up;
774249666e3SCaleb Connolly};
775249666e3SCaleb Connolly
776249666e3SCaleb Connolly&sdhc_2 {
777249666e3SCaleb Connolly	vmmc-supply = <&vreg_l9c>;
778249666e3SCaleb Connolly	vqmmc-supply = <&vreg_l6c>;
779249666e3SCaleb Connolly
780249666e3SCaleb Connolly	pinctrl-0 = <&sdc2_clk>, <&sdc2_cmd>, <&sdc2_data>;
781249666e3SCaleb Connolly	pinctrl-1 = <&sdc2_clk_sleep>, <&sdc2_cmd_sleep>, <&sdc2_data_sleep>;
782249666e3SCaleb Connolly
783249666e3SCaleb Connolly	status = "okay";
784249666e3SCaleb Connolly};
785249666e3SCaleb Connolly
786249666e3SCaleb Connolly&tlmm {
787249666e3SCaleb Connolly	/*
788249666e3SCaleb Connolly	 * 48-52: protected by XPU, not sure why.
789249666e3SCaleb Connolly	 */
790249666e3SCaleb Connolly	gpio-reserved-ranges = <48 4>;
791249666e3SCaleb Connolly
792249666e3SCaleb Connolly	bluetooth_enable_default: bluetooth-enable-default-state {
793249666e3SCaleb Connolly		pins = "gpio85";
794249666e3SCaleb Connolly		function = "gpio";
795249666e3SCaleb Connolly		output-low;
796249666e3SCaleb Connolly		bias-disable;
797249666e3SCaleb Connolly	};
798249666e3SCaleb Connolly
799249666e3SCaleb Connolly	qup_uart7_sleep_cts: qup-uart7-sleep-cts-state {
800249666e3SCaleb Connolly		pins = "gpio28";
801249666e3SCaleb Connolly		function = "gpio";
802249666e3SCaleb Connolly		/*
803249666e3SCaleb Connolly		 * Configure a bias-bus-hold on CTS to lower power
804249666e3SCaleb Connolly		 * usage when Bluetooth is turned off. Bus hold will
805249666e3SCaleb Connolly		 * maintain a low power state regardless of whether
806249666e3SCaleb Connolly		 * the Bluetooth module drives the pin in either
807249666e3SCaleb Connolly		 * direction or leaves the pin fully unpowered.
808249666e3SCaleb Connolly		 */
809249666e3SCaleb Connolly		bias-bus-hold;
810249666e3SCaleb Connolly	};
811249666e3SCaleb Connolly
812249666e3SCaleb Connolly	qup_uart7_sleep_rts: qup-uart7-sleep-rts-state {
813249666e3SCaleb Connolly		pins = "gpio29";
814249666e3SCaleb Connolly		function = "gpio";
815249666e3SCaleb Connolly		/*
816249666e3SCaleb Connolly		 * Configure pull-down on RTS. As RTS is active low
817249666e3SCaleb Connolly		 * signal, pull it low to indicate the BT SoC that it
818249666e3SCaleb Connolly		 * can wakeup the system anytime from suspend state by
819249666e3SCaleb Connolly		 * pulling RX low (by sending wakeup bytes).
820249666e3SCaleb Connolly		 */
821249666e3SCaleb Connolly		bias-pull-down;
822249666e3SCaleb Connolly	};
823249666e3SCaleb Connolly
824249666e3SCaleb Connolly	qup_uart7_sleep_tx: qup-uart7-sleep-tx-state {
825249666e3SCaleb Connolly		pins = "gpio30";
826249666e3SCaleb Connolly		function = "gpio";
827249666e3SCaleb Connolly		/*
828249666e3SCaleb Connolly		 * Configure pull-up on TX when it isn't actively driven
829249666e3SCaleb Connolly		 * to prevent BT SoC from receiving garbage during sleep.
830249666e3SCaleb Connolly		 */
831249666e3SCaleb Connolly		bias-pull-up;
832249666e3SCaleb Connolly	};
833249666e3SCaleb Connolly
834249666e3SCaleb Connolly	qup_uart7_sleep_rx: qup-uart7-sleep-rx-state {
835249666e3SCaleb Connolly		pins = "gpio31";
836249666e3SCaleb Connolly		function = "gpio";
837249666e3SCaleb Connolly		/*
838249666e3SCaleb Connolly		 * Configure a pull-up on RX. This is needed to avoid
839249666e3SCaleb Connolly		 * garbage data when the TX pin of the Bluetooth module
840249666e3SCaleb Connolly		 * is floating which may cause spurious wakeups.
841249666e3SCaleb Connolly		 */
842249666e3SCaleb Connolly		bias-pull-up;
843249666e3SCaleb Connolly	};
844249666e3SCaleb Connolly
845249666e3SCaleb Connolly	sw_ctrl_default: sw-ctrl-default-state {
846249666e3SCaleb Connolly		pins = "gpio86";
847249666e3SCaleb Connolly		function = "gpio";
848249666e3SCaleb Connolly		bias-pull-down;
849249666e3SCaleb Connolly	};
850249666e3SCaleb Connolly};
851249666e3SCaleb Connolly
852249666e3SCaleb Connolly&uart5 {
853249666e3SCaleb Connolly	compatible = "qcom,geni-debug-uart";
854249666e3SCaleb Connolly	status = "okay";
855249666e3SCaleb Connolly};
856249666e3SCaleb Connolly
857249666e3SCaleb Connolly&uart7 {
858249666e3SCaleb Connolly	/delete-property/interrupts;
859249666e3SCaleb Connolly	interrupts-extended = <&intc GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>,
860249666e3SCaleb Connolly			<&tlmm 31 IRQ_TYPE_EDGE_FALLING>;
861249666e3SCaleb Connolly
862249666e3SCaleb Connolly	pinctrl-1 = <&qup_uart7_sleep_cts>, <&qup_uart7_sleep_rts>, <&qup_uart7_sleep_tx>, <&qup_uart7_sleep_rx>;
863249666e3SCaleb Connolly	pinctrl-names = "default", "sleep";
864249666e3SCaleb Connolly
865249666e3SCaleb Connolly	status = "okay";
866249666e3SCaleb Connolly
867249666e3SCaleb Connolly	bluetooth: bluetooth {
868249666e3SCaleb Connolly		compatible = "qcom,wcn6750-bt";
869249666e3SCaleb Connolly
870249666e3SCaleb Connolly		pinctrl-0 = <&bluetooth_enable_default>, <&sw_ctrl_default>;
871249666e3SCaleb Connolly		pinctrl-names = "default";
872249666e3SCaleb Connolly
873249666e3SCaleb Connolly		enable-gpios = <&tlmm 85 GPIO_ACTIVE_HIGH>;
874249666e3SCaleb Connolly		swctrl-gpios = <&tlmm 86 GPIO_ACTIVE_HIGH>;
875249666e3SCaleb Connolly
876249666e3SCaleb Connolly		vddio-supply = <&vreg_l19b>;
877249666e3SCaleb Connolly		vddaon-supply = <&vreg_s7b>;
878249666e3SCaleb Connolly		vddbtcxmx-supply = <&vreg_s7b>;
879249666e3SCaleb Connolly		vddrfacmn-supply = <&vreg_s7b>;
880249666e3SCaleb Connolly		vddrfa0p8-supply = <&vreg_s7b>;
881249666e3SCaleb Connolly		vddrfa1p7-supply = <&vreg_s1b>;
882249666e3SCaleb Connolly		vddrfa1p2-supply = <&vreg_s8b>;
883249666e3SCaleb Connolly		vddrfa2p2-supply = <&vreg_s1c>;
884249666e3SCaleb Connolly		vddasd-supply = <&vreg_l11c>;
885249666e3SCaleb Connolly
886249666e3SCaleb Connolly		max-speed = <3200000>;
887249666e3SCaleb Connolly	};
888249666e3SCaleb Connolly};
889249666e3SCaleb Connolly
890249666e3SCaleb Connolly&ufs_mem_hc {
891249666e3SCaleb Connolly	reset-gpios = <&tlmm 175 GPIO_ACTIVE_LOW>;
892249666e3SCaleb Connolly
893249666e3SCaleb Connolly	vcc-supply = <&vreg_l7b>;
894249666e3SCaleb Connolly	vcc-max-microamp = <800000>;
895249666e3SCaleb Connolly	/*
896249666e3SCaleb Connolly	 * Technically l9b enables an eLDO (supplied by s1b) which then powers
897249666e3SCaleb Connolly	 * VCCQ2 of the UFS.
898249666e3SCaleb Connolly	 */
899249666e3SCaleb Connolly	vccq-supply = <&vreg_l9b>;
900249666e3SCaleb Connolly	vccq-max-microamp = <900000>;
901249666e3SCaleb Connolly
902249666e3SCaleb Connolly	status = "okay";
903249666e3SCaleb Connolly};
904249666e3SCaleb Connolly
905249666e3SCaleb Connolly&ufs_mem_phy {
906249666e3SCaleb Connolly	vdda-phy-supply = <&vreg_l10c>;
907249666e3SCaleb Connolly	vdda-pll-supply = <&vreg_l6b>;
908249666e3SCaleb Connolly
909249666e3SCaleb Connolly	status = "okay";
910249666e3SCaleb Connolly};
911249666e3SCaleb Connolly
912249666e3SCaleb Connolly&usb_1 {
913249666e3SCaleb Connolly	status = "okay";
914249666e3SCaleb Connolly};
915249666e3SCaleb Connolly
916249666e3SCaleb Connolly&usb_1_dwc3 {
917249666e3SCaleb Connolly	dr_mode = "otg";
918249666e3SCaleb Connolly	usb-role-switch;
919249666e3SCaleb Connolly};
920249666e3SCaleb Connolly
921249666e3SCaleb Connolly&usb_1_dwc3_hs {
922249666e3SCaleb Connolly	remote-endpoint = <&pmic_glink_hs_in>;
923249666e3SCaleb Connolly};
924249666e3SCaleb Connolly
925249666e3SCaleb Connolly&usb_dp_qmpphy_out {
926249666e3SCaleb Connolly	remote-endpoint = <&pmic_glink_ss_in>;
927249666e3SCaleb Connolly};
928249666e3SCaleb Connolly
929249666e3SCaleb Connolly&usb_1_hsphy {
930249666e3SCaleb Connolly	vdda-pll-supply = <&vreg_l10c>;
931249666e3SCaleb Connolly	vdda18-supply = <&vreg_l1c>;
932249666e3SCaleb Connolly	vdda33-supply = <&vreg_l2b>;
933249666e3SCaleb Connolly
934249666e3SCaleb Connolly	qcom,hs-crossover-voltage-microvolt = <28000>;
935249666e3SCaleb Connolly	qcom,hs-output-impedance-micro-ohms = <2600000>;
936249666e3SCaleb Connolly	qcom,hs-rise-fall-time-bp = <5430>;
937249666e3SCaleb Connolly	qcom,hs-disconnect-bp = <1743>;
938249666e3SCaleb Connolly	qcom,hs-amplitude-bp = <2430>;
939249666e3SCaleb Connolly
940249666e3SCaleb Connolly	qcom,pre-emphasis-amplitude-bp = <20000>;
941249666e3SCaleb Connolly	qcom,pre-emphasis-duration-bp = <20000>;
942249666e3SCaleb Connolly
943249666e3SCaleb Connolly	qcom,squelch-detector-bp = <(-2090)>;
944249666e3SCaleb Connolly
945249666e3SCaleb Connolly	status = "okay";
946249666e3SCaleb Connolly};
947249666e3SCaleb Connolly
948249666e3SCaleb Connolly&usb_1_qmpphy {
949249666e3SCaleb Connolly	vdda-phy-supply = <&vreg_l6b>;
950249666e3SCaleb Connolly	vdda-pll-supply = <&vreg_l1b>;
951249666e3SCaleb Connolly
952249666e3SCaleb Connolly	status = "okay";
953249666e3SCaleb Connolly};
954249666e3SCaleb Connolly
955249666e3SCaleb Connolly&wifi {
956cfbcd6d4SKrzysztof Kozlowski	qcom,calibration-variant = "SHIFTphone_8";
957249666e3SCaleb Connolly
958249666e3SCaleb Connolly	status = "okay";
959249666e3SCaleb Connolly};
960