xref: /linux/arch/arm64/boot/dts/qcom/sm8150-hdk.dts (revision fd7d598270724cc787982ea48bbe17ad383a8b7f)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2020, The Linux Foundation. All rights reserved.
4 */
5
6/dts-v1/;
7
8#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
9#include <dt-bindings/gpio/gpio.h>
10#include "sm8150.dtsi"
11#include "pm8150.dtsi"
12#include "pm8150b.dtsi"
13#include "pm8150l.dtsi"
14
15/ {
16	model = "Qualcomm Technologies, Inc. SM8150 HDK";
17	compatible = "qcom,sm8150-hdk", "qcom,sm8150";
18	chassis-type = "embedded";
19
20	aliases {
21		serial0 = &uart2;
22	};
23
24	chosen {
25		stdout-path = "serial0:115200n8";
26	};
27
28	vph_pwr: vph-pwr-regulator {
29		compatible = "regulator-fixed";
30		regulator-name = "vph_pwr";
31		regulator-min-microvolt = <3700000>;
32		regulator-max-microvolt = <3700000>;
33	};
34
35	vreg_s4a_1p8: pm8150-s4 {
36		compatible = "regulator-fixed";
37		regulator-name = "vreg_s4a_1p8";
38
39		regulator-min-microvolt = <1800000>;
40		regulator-max-microvolt = <1800000>;
41
42		regulator-always-on;
43		regulator-boot-on;
44
45		vin-supply = <&vph_pwr>;
46	};
47
48	gpio-keys {
49		compatible = "gpio-keys";
50
51		key-vol-up {
52			label = "Volume Up";
53			linux,code = <KEY_VOLUMEUP>;
54			gpios = <&pm8150_gpios 6 GPIO_ACTIVE_LOW>;
55		};
56	};
57};
58
59&apps_rsc {
60	regulators-0 {
61		compatible = "qcom,pm8150-rpmh-regulators";
62		qcom,pmic-id = "a";
63
64		vdd-s1-supply = <&vph_pwr>;
65		vdd-s2-supply = <&vph_pwr>;
66		vdd-s3-supply = <&vph_pwr>;
67		vdd-s4-supply = <&vph_pwr>;
68		vdd-s5-supply = <&vph_pwr>;
69		vdd-s6-supply = <&vph_pwr>;
70		vdd-s7-supply = <&vph_pwr>;
71		vdd-s8-supply = <&vph_pwr>;
72		vdd-s9-supply = <&vph_pwr>;
73		vdd-s10-supply = <&vph_pwr>;
74
75		vdd-l1-l8-l11-supply = <&vreg_s6a_0p9>;
76		vdd-l2-l10-supply = <&vreg_bob>;
77		vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p9>;
78		vdd-l6-l9-supply = <&vreg_s8c_1p3>;
79		vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p0>;
80		vdd-l13-l16-l17-supply = <&vreg_bob>;
81
82		vreg_s5a_2p0: smps5 {
83			regulator-min-microvolt = <1904000>;
84			regulator-max-microvolt = <2000000>;
85		};
86
87		vreg_s6a_0p9: smps6 {
88			regulator-min-microvolt = <920000>;
89			regulator-max-microvolt = <1128000>;
90		};
91
92		vdda_wcss_pll:
93		vreg_l1a_0p75: ldo1 {
94			regulator-min-microvolt = <752000>;
95			regulator-max-microvolt = <752000>;
96			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
97		};
98
99		vdd_pdphy:
100		vdda_usb_hs_3p1:
101		vreg_l2a_3p1: ldo2 {
102			regulator-min-microvolt = <3072000>;
103			regulator-max-microvolt = <3072000>;
104			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
105		};
106
107		vreg_l3a_0p8: ldo3 {
108			regulator-min-microvolt = <480000>;
109			regulator-max-microvolt = <932000>;
110			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
111		};
112
113		vdd_usb_hs_core:
114		vdda_csi_0_0p9:
115		vdda_csi_1_0p9:
116		vdda_csi_2_0p9:
117		vdda_csi_3_0p9:
118		vdda_dsi_0_0p9:
119		vdda_dsi_1_0p9:
120		vdda_dsi_0_pll_0p9:
121		vdda_dsi_1_pll_0p9:
122		vdda_pcie_1ln_core:
123		vdda_pcie_2ln_core:
124		vdda_pll_hv_cc_ebi01:
125		vdda_pll_hv_cc_ebi23:
126		vdda_qrefs_0p875_5:
127		vdda_sp_sensor:
128		vdda_ufs_2ln_core_1:
129		vdda_ufs_2ln_core_2:
130		vdda_usb_ss_dp_core_1:
131		vdda_usb_ss_dp_core_2:
132		vdda_qlink_lv:
133		vdda_qlink_lv_ck:
134		vreg_l5a_0p875: ldo5 {
135			regulator-min-microvolt = <880000>;
136			regulator-max-microvolt = <880000>;
137			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
138		};
139
140		vreg_l6a_1p2: ldo6 {
141			regulator-min-microvolt = <1200000>;
142			regulator-max-microvolt = <1200000>;
143			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
144		};
145
146		vreg_l7a_1p8: ldo7 {
147			regulator-min-microvolt = <1800000>;
148			regulator-max-microvolt = <1800000>;
149			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
150		};
151
152		vddpx_10:
153		vreg_l9a_1p2: ldo9 {
154			regulator-min-microvolt = <1200000>;
155			regulator-max-microvolt = <1200000>;
156			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
157		};
158
159		vreg_l10a_2p5: ldo10 {
160			regulator-min-microvolt = <2504000>;
161			regulator-max-microvolt = <2960000>;
162			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
163		};
164
165		vreg_l11a_0p8: ldo11 {
166			regulator-min-microvolt = <800000>;
167			regulator-max-microvolt = <800000>;
168			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
169		};
170
171		vdd_qfprom:
172		vdd_qfprom_sp:
173		vdda_apc_cs_1p8:
174		vdda_gfx_cs_1p8:
175		vdda_usb_hs_1p8:
176		vdda_qrefs_vref_1p8:
177		vddpx_10_a:
178		vreg_l12a_1p8: ldo12 {
179			regulator-min-microvolt = <1800000>;
180			regulator-max-microvolt = <1800000>;
181			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
182		};
183
184		vreg_l13a_2p7: ldo13 {
185			regulator-min-microvolt = <2704000>;
186			regulator-max-microvolt = <2704000>;
187			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
188		};
189
190		vreg_l14a_1p8: ldo14 {
191			regulator-min-microvolt = <1800000>;
192			regulator-max-microvolt = <1880000>;
193			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
194		};
195
196		vreg_l15a_1p7: ldo15 {
197			regulator-min-microvolt = <1704000>;
198			regulator-max-microvolt = <1704000>;
199			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
200		};
201
202		vreg_l16a_2p7: ldo16 {
203			regulator-min-microvolt = <2704000>;
204			regulator-max-microvolt = <2960000>;
205			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
206		};
207
208		vreg_l17a_3p0: ldo17 {
209			regulator-min-microvolt = <2856000>;
210			regulator-max-microvolt = <3008000>;
211			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
212		};
213	};
214
215	regulators-1 {
216		compatible = "qcom,pm8150l-rpmh-regulators";
217		qcom,pmic-id = "c";
218
219		vdd-s1-supply = <&vph_pwr>;
220		vdd-s2-supply = <&vph_pwr>;
221		vdd-s3-supply = <&vph_pwr>;
222		vdd-s4-supply = <&vph_pwr>;
223		vdd-s5-supply = <&vph_pwr>;
224		vdd-s6-supply = <&vph_pwr>;
225		vdd-s7-supply = <&vph_pwr>;
226		vdd-s8-supply = <&vph_pwr>;
227
228		vdd-l1-l8-supply = <&vreg_s4a_1p8>;
229		vdd-l2-l3-supply = <&vreg_s8c_1p3>;
230		vdd-l4-l5-l6-supply = <&vreg_bob>;
231		vdd-l7-l11-supply = <&vreg_bob>;
232		vdd-l9-l10-supply = <&vreg_bob>;
233
234		vdd-bob-supply = <&vph_pwr>;
235		vdd-flash-supply = <&vreg_bob>;
236		vdd-rgb-supply = <&vreg_bob>;
237
238		vreg_bob: bob {
239			regulator-min-microvolt = <3008000>;
240			regulator-max-microvolt = <4000000>;
241			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
242			regulator-allow-bypass;
243		};
244
245		vreg_s8c_1p3: smps8 {
246			regulator-min-microvolt = <1352000>;
247			regulator-max-microvolt = <1352000>;
248		};
249
250		vreg_l1c_1p8: ldo1 {
251			regulator-min-microvolt = <1800000>;
252			regulator-max-microvolt = <1800000>;
253			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
254		};
255
256		vdda_wcss_adcdac_1:
257		vdda_wcss_adcdac_22:
258		vreg_l2c_1p3: ldo2 {
259			regulator-min-microvolt = <1304000>;
260			regulator-max-microvolt = <1304000>;
261			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
262		};
263
264		vdda_hv_ebi0:
265		vdda_hv_ebi1:
266		vdda_hv_ebi2:
267		vdda_hv_ebi3:
268		vdda_hv_refgen0:
269		vdda_qlink_hv_ck:
270		vreg_l3c_1p2: ldo3 {
271			regulator-min-microvolt = <1200000>;
272			regulator-max-microvolt = <1200000>;
273			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
274		};
275
276		vddpx_5:
277		vreg_l4c_1p8: ldo4 {
278			regulator-min-microvolt = <1704000>;
279			regulator-max-microvolt = <2928000>;
280			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
281		};
282
283		vddpx_6:
284		vreg_l5c_1p8: ldo5 {
285			regulator-min-microvolt = <1704000>;
286			regulator-max-microvolt = <2928000>;
287			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
288		};
289
290		vddpx_2:
291		vreg_l6c_2p9: ldo6 {
292			regulator-min-microvolt = <1800000>;
293			regulator-max-microvolt = <2960000>;
294			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
295		};
296
297		vreg_l7c_3p0: ldo7 {
298			regulator-min-microvolt = <2856000>;
299			regulator-max-microvolt = <3104000>;
300			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
301		};
302
303		vreg_l8c_1p8: ldo8 {
304			regulator-min-microvolt = <1800000>;
305			regulator-max-microvolt = <1800000>;
306			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
307		};
308
309		vreg_l9c_2p9: ldo9 {
310			regulator-min-microvolt = <2704000>;
311			regulator-max-microvolt = <2960000>;
312			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
313		};
314
315		vreg_l10c_3p3: ldo10 {
316			regulator-min-microvolt = <3000000>;
317			regulator-max-microvolt = <3312000>;
318			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
319		};
320
321		vreg_l11c_3p3: ldo11 {
322			regulator-min-microvolt = <3000000>;
323			regulator-max-microvolt = <3312000>;
324			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
325		};
326	};
327
328	regulators-2 {
329		compatible = "qcom,pm8009-rpmh-regulators";
330		qcom,pmic-id = "f";
331
332		vdd-s1-supply = <&vph_pwr>;
333		vdd-s2-supply = <&vreg_bob>;
334
335		vdd-l2-supply = <&vreg_s8c_1p3>;
336		vdd-l5-l6-supply = <&vreg_bob>;
337
338		vreg_l2f_1p2: ldo2 {
339			regulator-min-microvolt = <1200000>;
340			regulator-max-microvolt = <1200000>;
341			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
342		};
343
344		vreg_l5f_2p85: ldo5 {
345			regulator-min-microvolt = <2800000>;
346			regulator-max-microvolt = <2800000>;
347			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
348		};
349
350		vreg_l6f_2p85: ldo6 {
351			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
352			regulator-min-microvolt = <2856000>;
353			regulator-max-microvolt = <2856000>;
354		};
355	};
356};
357
358&gmu {
359	status = "okay";
360};
361
362&gpu {
363	/*
364	 * NOTE: "amd,imageon" makes Adreno start in headless mode, remove it
365	 * after display support is added on this board.
366	 */
367	compatible = "qcom,adreno-640.1", "qcom,adreno", "amd,imageon";
368	status = "okay";
369};
370
371&pon_pwrkey {
372	status = "okay";
373};
374
375&pon_resin {
376	status = "okay";
377
378	linux,code = <KEY_VOLUMEDOWN>;
379};
380
381&qupv3_id_1 {
382	status = "okay";
383};
384
385&remoteproc_adsp {
386	status = "okay";
387
388	firmware-name = "qcom/sm8150/adsp.mbn";
389};
390
391&remoteproc_cdsp {
392	status = "okay";
393
394	firmware-name = "qcom/sm8150/cdsp.mbn";
395};
396
397&remoteproc_slpi {
398	status = "okay";
399
400	firmware-name = "qcom/sm8150/slpi.mbn";
401};
402
403&tlmm {
404	gpio-reserved-ranges = <0 4>, <126 4>;
405};
406
407&uart2 {
408	status = "okay";
409};
410
411&ufs_mem_hc {
412	status = "okay";
413
414	reset-gpios = <&tlmm 175 GPIO_ACTIVE_LOW>;
415
416	vcc-supply = <&vreg_l10a_2p5>;
417	vcc-max-microamp = <750000>;
418	vccq-supply = <&vreg_l9a_1p2>;
419	vccq-max-microamp = <700000>;
420	vccq2-supply = <&vreg_s4a_1p8>;
421	vccq2-max-microamp = <750000>;
422};
423
424&ufs_mem_phy {
425	status = "okay";
426
427	vdda-phy-supply = <&vdda_ufs_2ln_core_1>;
428	vdda-pll-supply = <&vreg_l3c_1p2>;
429};
430
431&usb_1_hsphy {
432	status = "okay";
433	vdda-pll-supply = <&vdd_usb_hs_core>;
434	vdda33-supply = <&vdda_usb_hs_3p1>;
435	vdda18-supply = <&vdda_usb_hs_1p8>;
436};
437
438&usb_2_hsphy {
439	status = "okay";
440	vdda-pll-supply = <&vdd_usb_hs_core>;
441	vdda33-supply = <&vdda_usb_hs_3p1>;
442	vdda18-supply = <&vdda_usb_hs_1p8>;
443};
444
445&usb_1_qmpphy {
446	status = "okay";
447	vdda-phy-supply = <&vreg_l3c_1p2>;
448	vdda-pll-supply = <&vdda_usb_ss_dp_core_1>;
449};
450
451&usb_2_qmpphy {
452	status = "okay";
453	vdda-phy-supply = <&vreg_l3c_1p2>;
454	vdda-pll-supply = <&vdda_usb_ss_dp_core_1>;
455};
456
457&usb_1 {
458	status = "okay";
459};
460
461&usb_2 {
462	status = "okay";
463};
464
465&usb_1_dwc3 {
466	dr_mode = "peripheral";
467};
468
469&usb_2_dwc3 {
470	dr_mode = "host";
471};
472