File Index
Files and directories
Sign in
FILE

hamoa-iot-som.dtsi

File preview with syntax highlighting.

linux-6.19.14/arch/arm64/boot/dts/qcom/hamoa-iot-som.dtsi DEVICETREE
  1// SPDX-License-Identifier: BSD-3-Clause
  2/*
  3 * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
  4 */
  5
  6#include "hamoa.dtsi"
  7#include "hamoa-pmics.dtsi"
  8#include <dt-bindings/gpio/gpio.h>
  9#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
 10
 11/ {
 12	reserved-memory {
 13		linux,cma {
 14			compatible = "shared-dma-pool";
 15			size = <0x0 0x8000000>;
 16			reusable;
 17			linux,cma-default;
 18		};
 19	};
 20};
 21
 22&apps_rsc {
 23	/* PMC8380C_B */
 24	regulators-0 {
 25		compatible = "qcom,pm8550-rpmh-regulators";
 26		qcom,pmic-id = "b";
 27
 28		vdd-bob1-supply = <&vph_pwr>;
 29		vdd-bob2-supply = <&vph_pwr>;
 30		vdd-l1-l4-l10-supply = <&vreg_s4c_1p8>;
 31		vdd-l2-l13-l14-supply = <&vreg_bob1>;
 32		vdd-l5-l16-supply = <&vreg_bob1>;
 33		vdd-l6-l7-supply = <&vreg_bob2>;
 34		vdd-l8-l9-supply = <&vreg_bob1>;
 35		vdd-l12-supply = <&vreg_s5j_1p2>;
 36		vdd-l15-supply = <&vreg_s4c_1p8>;
 37		vdd-l17-supply = <&vreg_bob2>;
 38
 39		vreg_bob1: bob1 {
 40			regulator-name = "vreg_bob1";
 41			regulator-min-microvolt = <3008000>;
 42			regulator-max-microvolt = <3960000>;
 43			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
 44		};
 45
 46		vreg_bob2: bob2 {
 47			regulator-name = "vreg_bob2";
 48			regulator-min-microvolt = <2504000>;
 49			regulator-max-microvolt = <3008000>;
 50			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
 51		};
 52
 53		vreg_l1b_1p8: ldo1 {
 54			regulator-name = "vreg_l1b_1p8";
 55			regulator-min-microvolt = <1800000>;
 56			regulator-max-microvolt = <1800000>;
 57			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
 58		};
 59
 60		vreg_l2b_3p0: ldo2 {
 61			regulator-name = "vreg_l2b_3p0";
 62			regulator-min-microvolt = <3072000>;
 63			regulator-max-microvolt = <3100000>;
 64			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
 65		};
 66
 67		vreg_l4b_1p8: ldo4 {
 68			regulator-name = "vreg_l4b_1p8";
 69			regulator-min-microvolt = <1800000>;
 70			regulator-max-microvolt = <1800000>;
 71			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
 72		};
 73
 74		vreg_l5b_3p0: ldo5 {
 75			regulator-name = "vreg_l5b_3p0";
 76			regulator-min-microvolt = <3000000>;
 77			regulator-max-microvolt = <3000000>;
 78			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
 79		};
 80
 81		vreg_l6b_1p8: ldo6 {
 82			regulator-name = "vreg_l6b_1p8";
 83			regulator-min-microvolt = <1800000>;
 84			regulator-max-microvolt = <2960000>;
 85			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
 86		};
 87
 88		vreg_l7b_2p8: ldo7 {
 89			regulator-name = "vreg_l7b_2p8";
 90			regulator-min-microvolt = <2800000>;
 91			regulator-max-microvolt = <2800000>;
 92			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
 93		};
 94
 95		vreg_l8b_3p0: ldo8 {
 96			regulator-name = "vreg_l8b_3p0";
 97			regulator-min-microvolt = <3072000>;
 98			regulator-max-microvolt = <3072000>;
 99			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
100		};
101
102		vreg_l9b_2p9: ldo9 {
103			regulator-name = "vreg_l9b_2p9";
104			regulator-min-microvolt = <2960000>;
105			regulator-max-microvolt = <2960000>;
106			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
107		};
108
109		vreg_l10b_1p8: ldo10 {
110			regulator-name = "vreg_l10b_1p8";
111			regulator-min-microvolt = <1800000>;
112			regulator-max-microvolt = <1800000>;
113			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
114		};
115
116		vreg_l12b_1p2: ldo12 {
117			regulator-name = "vreg_l12b_1p2";
118			regulator-min-microvolt = <1200000>;
119			regulator-max-microvolt = <1200000>;
120			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
121			regulator-always-on;
122		};
123
124		vreg_l13b_3p0: ldo13 {
125			regulator-name = "vreg_l13b_3p0";
126			regulator-min-microvolt = <3072000>;
127			regulator-max-microvolt = <3100000>;
128			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
129		};
130
131		vreg_l14b_3p0: ldo14 {
132			regulator-name = "vreg_l14b_3p0";
133			regulator-min-microvolt = <3072000>;
134			regulator-max-microvolt = <3072000>;
135			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
136		};
137
138		vreg_l15b_1p8: ldo15 {
139			regulator-name = "vreg_l15b_1p8";
140			regulator-min-microvolt = <1800000>;
141			regulator-max-microvolt = <1800000>;
142			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
143			regulator-always-on;
144		};
145
146		vreg_l16b_2p9: ldo16 {
147			regulator-name = "vreg_l16b_2p9";
148			regulator-min-microvolt = <2912000>;
149			regulator-max-microvolt = <2912000>;
150			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
151		};
152
153		vreg_l17b_2p5: ldo17 {
154			regulator-name = "vreg_l17b_2p5";
155			regulator-min-microvolt = <2504000>;
156			regulator-max-microvolt = <2504000>;
157			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
158		};
159	};
160
161	/* PMC8380VE_C */
162	regulators-1 {
163		compatible = "qcom,pm8550ve-rpmh-regulators";
164		qcom,pmic-id = "c";
165
166		vdd-l1-supply = <&vreg_s5j_1p2>;
167		vdd-l2-supply = <&vreg_s1f_0p7>;
168		vdd-l3-supply = <&vreg_s1f_0p7>;
169		vdd-s4-supply = <&vph_pwr>;
170
171		vreg_s4c_1p8: smps4 {
172			regulator-name = "vreg_s4c_1p8";
173			regulator-min-microvolt = <1856000>;
174			regulator-max-microvolt = <2000000>;
175			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
176		};
177
178		vreg_l1c_1p2: ldo1 {
179			regulator-name = "vreg_l1c_1p2";
180			regulator-min-microvolt = <1200000>;
181			regulator-max-microvolt = <1200000>;
182			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
183		};
184
185		vreg_l2c_0p8: ldo2 {
186			regulator-name = "vreg_l2c_0p8";
187			regulator-min-microvolt = <880000>;
188			regulator-max-microvolt = <920000>;
189			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
190		};
191
192		vreg_l3c_0p8: ldo3 {
193			regulator-name = "vreg_l3c_0p8";
194			regulator-min-microvolt = <880000>;
195			regulator-max-microvolt = <920000>;
196			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
197		};
198	};
199
200	/* PMC8380_D */
201	regulators-2 {
202		compatible = "qcom,pmc8380-rpmh-regulators";
203		qcom,pmic-id = "d";
204
205		vdd-l1-supply = <&vreg_s1f_0p7>;
206		vdd-l2-supply = <&vreg_s1f_0p7>;
207		vdd-l3-supply = <&vreg_s4c_1p8>;
208		vdd-s1-supply = <&vph_pwr>;
209
210		vreg_l1d_0p8: ldo1 {
211			regulator-name = "vreg_l1d_0p8";
212			regulator-min-microvolt = <880000>;
213			regulator-max-microvolt = <920000>;
214			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
215		};
216
217		vreg_l2d_0p9: ldo2 {
218			regulator-name = "vreg_l2d_0p9";
219			regulator-min-microvolt = <912000>;
220			regulator-max-microvolt = <920000>;
221			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
222		};
223
224		vreg_l3d_1p8: ldo3 {
225			regulator-name = "vreg_l3d_1p8";
226			regulator-min-microvolt = <1800000>;
227			regulator-max-microvolt = <1800000>;
228			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
229		};
230	};
231
232	/* PMC8380_E */
233	regulators-3 {
234		compatible = "qcom,pmc8380-rpmh-regulators";
235		qcom,pmic-id = "e";
236
237		vdd-l2-supply = <&vreg_s1f_0p7>;
238		vdd-l3-supply = <&vreg_s5j_1p2>;
239
240		vreg_l2e_0p8: ldo2 {
241			regulator-name = "vreg_l2e_0p8";
242			regulator-min-microvolt = <880000>;
243			regulator-max-microvolt = <920000>;
244			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
245		};
246
247		vreg_l3e_1p2: ldo3 {
248			regulator-name = "vreg_l3e_1p2";
249			regulator-min-microvolt = <1200000>;
250			regulator-max-microvolt = <1200000>;
251			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
252		};
253	};
254
255	/* PMC8380_F */
256	regulators-4 {
257		compatible = "qcom,pmc8380-rpmh-regulators";
258		qcom,pmic-id = "f";
259
260		vdd-l1-supply = <&vreg_s5j_1p2>;
261		vdd-l2-supply = <&vreg_s5j_1p2>;
262		vdd-l3-supply = <&vreg_s5j_1p2>;
263		vdd-s1-supply = <&vph_pwr>;
264
265		vreg_s1f_0p7: smps1 {
266			regulator-name = "vreg_s1f_0p7";
267			regulator-min-microvolt = <700000>;
268			regulator-max-microvolt = <1100000>;
269			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
270		};
271
272		vreg_l1f_1p0: ldo1 {
273			regulator-name = "vreg_l1f_1p0";
274			regulator-min-microvolt = <1024000>;
275			regulator-max-microvolt = <1024000>;
276			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
277		};
278
279		vreg_l2f_1p0: ldo2 {
280			regulator-name = "vreg_l2f_1p0";
281			regulator-min-microvolt = <1024000>;
282			regulator-max-microvolt = <1024000>;
283			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
284		};
285
286		vreg_l3f_1p0: ldo3 {
287			regulator-name = "vreg_l3f_1p0";
288			regulator-min-microvolt = <1024000>;
289			regulator-max-microvolt = <1024000>;
290			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
291		};
292	};
293
294	/* PMC8380VE_I */
295	regulators-6 {
296		compatible = "qcom,pm8550ve-rpmh-regulators";
297		qcom,pmic-id = "i";
298
299		vdd-l1-supply = <&vreg_s4c_1p8>;
300		vdd-l2-supply = <&vreg_s5j_1p2>;
301		vdd-l3-supply = <&vreg_s1f_0p7>;
302		vdd-s1-supply = <&vph_pwr>;
303		vdd-s2-supply = <&vph_pwr>;
304
305		vreg_s1i_0p9: smps1 {
306			regulator-name = "vreg_s1i_0p9";
307			regulator-min-microvolt = <900000>;
308			regulator-max-microvolt = <920000>;
309			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
310		};
311
312		vreg_s2i_1p0: smps2 {
313			regulator-name = "vreg_s2i_1p0";
314			regulator-min-microvolt = <1000000>;
315			regulator-max-microvolt = <1100000>;
316			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
317		};
318
319		vreg_l1i_1p8: ldo1 {
320			regulator-name = "vreg_l1i_1p8";
321			regulator-min-microvolt = <1800000>;
322			regulator-max-microvolt = <1800000>;
323			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
324		};
325
326		vreg_l2i_1p2: ldo2 {
327			regulator-name = "vreg_l2i_1p2";
328			regulator-min-microvolt = <1200000>;
329			regulator-max-microvolt = <1200000>;
330			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
331		};
332
333		vreg_l3i_0p8: ldo3 {
334			regulator-name = "vreg_l3i_0p8";
335			regulator-min-microvolt = <880000>;
336			regulator-max-microvolt = <920000>;
337			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
338		};
339	};
340
341	/* PMC8380VE_J */
342	regulators-7 {
343		compatible = "qcom,pm8550ve-rpmh-regulators";
344		qcom,pmic-id = "j";
345
346		vdd-l1-supply = <&vreg_s1f_0p7>;
347		vdd-l2-supply = <&vreg_s5j_1p2>;
348		vdd-l3-supply = <&vreg_s1f_0p7>;
349		vdd-s5-supply = <&vph_pwr>;
350
351		vreg_s5j_1p2: smps5 {
352			regulator-name = "vreg_s5j_1p2";
353			regulator-min-microvolt = <1256000>;
354			regulator-max-microvolt = <1304000>;
355			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
356		};
357
358		vreg_l1j_0p8: ldo1 {
359			regulator-name = "vreg_l1j_0p8";
360			regulator-min-microvolt = <880000>;
361			regulator-max-microvolt = <920000>;
362			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
363		};
364
365		vreg_l2j_1p2: ldo2 {
366			regulator-name = "vreg_l2j_1p2";
367			regulator-min-microvolt = <1256000>;
368			regulator-max-microvolt = <1256000>;
369			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
370		};
371
372		vreg_l3j_0p8: ldo3 {
373			regulator-name = "vreg_l3j_0p8";
374			regulator-min-microvolt = <880000>;
375			regulator-max-microvolt = <920000>;
376			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
377		};
378	};
379};
380
381&iris {
382	status = "okay";
383};
384
385&gpu {
386	status = "okay";
387};
388
389&gpu_zap_shader {
390	firmware-name = "qcom/x1e80100/gen70500_zap.mbn";
391};
392
393&pcie4 {
394	perst-gpios = <&tlmm 146 GPIO_ACTIVE_LOW>;
395	wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>;
396
397	pinctrl-0 = <&pcie4_default>;
398	pinctrl-names = "default";
399
400	status = "okay";
401};
402
403&pcie4_phy {
404	vdda-phy-supply = <&vreg_l3i_0p8>;
405	vdda-pll-supply = <&vreg_l3e_1p2>;
406
407	status = "okay";
408};
409
410&pcie6a {
411	perst-gpios = <&tlmm 152 GPIO_ACTIVE_LOW>;
412	wake-gpios = <&tlmm 154 GPIO_ACTIVE_LOW>;
413
414	pinctrl-0 = <&pcie6a_default>;
415	pinctrl-names = "default";
416
417	status = "okay";
418};
419
420&pcie6a_phy {
421	vdda-phy-supply = <&vreg_l1d_0p8>;
422	vdda-pll-supply = <&vreg_l2j_1p2>;
423
424	status = "okay";
425};
426
427&qupv3_0 {
428	status = "okay";
429};
430
431&qupv3_1 {
432	status = "okay";
433};
434
435&qupv3_2 {
436	status = "okay";
437};
438
439&remoteproc_adsp {
440	firmware-name = "qcom/x1e80100/adsp.mbn",
441			"qcom/x1e80100/adsp_dtb.mbn";
442
443	status = "okay";
444};
445
446&remoteproc_cdsp {
447	firmware-name = "qcom/x1e80100/cdsp.mbn",
448			"qcom/x1e80100/cdsp_dtb.mbn";
449
450	status = "okay";
451};
452
453&tlmm {
454	gpio-reserved-ranges = <34 2>; /* TPM LP & INT */
455
456	pcie4_default: pcie4-default-state {
457		clkreq-n-pins {
458			pins = "gpio147";
459			function = "pcie4_clk";
460			drive-strength = <2>;
461			bias-pull-up;
462		};
463
464		perst-n-pins {
465			pins = "gpio146";
466			function = "gpio";
467			drive-strength = <2>;
468			bias-disable;
469		};
470
471		wake-n-pins {
472			pins = "gpio148";
473			function = "gpio";
474			drive-strength = <2>;
475			bias-pull-up;
476		};
477	};
478
479	pcie6a_default: pcie6a-default-state {
480		clkreq-n-pins {
481			pins = "gpio153";
482			function = "pcie6a_clk";
483			drive-strength = <2>;
484			bias-pull-up;
485		};
486
487		perst-n-pins {
488			pins = "gpio152";
489			function = "gpio";
490			drive-strength = <2>;
491			bias-disable;
492		};
493
494		wake-n-pins {
495			pins = "gpio154";
496			function = "gpio";
497			drive-strength = <2>;
498			bias-pull-up;
499
500		};
501	};
502};
503
504&usb_1_ss0 {
505	status = "okay";
506};
507
508&usb_1_ss0_dwc3 {
509	dr_mode = "otg";
510	usb-role-switch;
511};
512
513&usb_1_ss0_hsphy {
514	vdd-supply = <&vreg_l3j_0p8>;
515	vdda12-supply = <&vreg_l2j_1p2>;
516
517	status = "okay";
518};
519
520&usb_1_ss0_qmpphy {
521	vdda-phy-supply = <&vreg_l2j_1p2>;
522	vdda-pll-supply = <&vreg_l1j_0p8>;
523
524	status = "okay";
525};
526
527&usb_1_ss1 {
528	status = "okay";
529};
530
531&usb_1_ss1_dwc3 {
532	dr_mode = "otg";
533	usb-role-switch;
534};
535
536&usb_1_ss1_hsphy {
537	vdd-supply = <&vreg_l3j_0p8>;
538	vdda12-supply = <&vreg_l2j_1p2>;
539
540	status = "okay";
541};
542
543&usb_1_ss1_qmpphy {
544	vdda-phy-supply = <&vreg_l2j_1p2>;
545	vdda-pll-supply = <&vreg_l2d_0p9>;
546
547	status = "okay";
548};
549
550&usb_1_ss2 {
551	status = "okay";
552};
553
554&usb_1_ss2_dwc3 {
555	dr_mode = "otg";
556	usb-role-switch;
557};
558
559&usb_1_ss2_hsphy {
560	vdd-supply = <&vreg_l3j_0p8>;
561	vdda12-supply = <&vreg_l2j_1p2>;
562
563	status = "okay";
564};
565
566&usb_1_ss2_qmpphy {
567	vdda-phy-supply = <&vreg_l2j_1p2>;
568	vdda-pll-supply = <&vreg_l2d_0p9>;
569
570	status = "okay";
571};
572
573&usb_2 {
574	status = "okay";
575};
576
577&usb_2_dwc3 {
578	dr_mode = "host";
579};
580
581&usb_2_hsphy {
582	vdd-supply = <&vreg_l2e_0p8>;
583	vdda12-supply = <&vreg_l3e_1p2>;
584
585	status = "okay";
586};
587
588&usb_mp {
589	status = "okay";
590};
591
592&usb_mp_hsphy0 {
593	vdd-supply = <&vreg_l2e_0p8>;
594	vdda12-supply = <&vreg_l3e_1p2>;
595
596	status = "okay";
597};
598
599&usb_mp_hsphy1 {
600	vdd-supply = <&vreg_l2e_0p8>;
601	vdda12-supply = <&vreg_l3e_1p2>;
602
603	status = "okay";
604};
605
606&usb_mp_qmpphy0 {
607	vdda-phy-supply = <&vreg_l3e_1p2>;
608	vdda-pll-supply = <&vreg_l3c_0p8>;
609
610	status = "okay";
611};
612
613&usb_mp_qmpphy1 {
614	vdda-phy-supply = <&vreg_l3e_1p2>;
615	vdda-pll-supply = <&vreg_l3c_0p8>;
616
617	status = "okay";
618};
~/ Read-only file preview.