xref: /freebsd-src/sys/contrib/device-tree/src/arm/qcom/qcom-sdx65-mtp.dts (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: BSD-3-Clause
2f126890aSEmmanuel Vadot/*
3f126890aSEmmanuel Vadot * Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
4f126890aSEmmanuel Vadot */
5f126890aSEmmanuel Vadot/dts-v1/;
6f126890aSEmmanuel Vadot
784943d6fSEmmanuel Vadot/* PM7250B is configured to use SID2/3 */
884943d6fSEmmanuel Vadot#define PM7250B_SID 2
984943d6fSEmmanuel Vadot#define PM7250B_SID1 3
1084943d6fSEmmanuel Vadot
11f126890aSEmmanuel Vadot#include "qcom-sdx65.dtsi"
12f126890aSEmmanuel Vadot#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
13f126890aSEmmanuel Vadot#include <arm64/qcom/pmk8350.dtsi>
14aa1a8ff2SEmmanuel Vadot#include <arm64/qcom/pm7250b.dtsi>
15*8d13bc63SEmmanuel Vadot#include "pmx65.dtsi"
16f126890aSEmmanuel Vadot
17f126890aSEmmanuel Vadot/ {
18f126890aSEmmanuel Vadot	model = "Qualcomm Technologies, Inc. SDX65 MTP";
19f126890aSEmmanuel Vadot	compatible = "qcom,sdx65-mtp", "qcom,sdx65";
20f126890aSEmmanuel Vadot	qcom,board-id = <0x2010008 0x302>;
21f126890aSEmmanuel Vadot
22f126890aSEmmanuel Vadot	aliases {
23f126890aSEmmanuel Vadot		serial0 = &blsp1_uart3;
24f126890aSEmmanuel Vadot	};
25f126890aSEmmanuel Vadot
26f126890aSEmmanuel Vadot	chosen {
27f126890aSEmmanuel Vadot		stdout-path = "serial0:115200n8";
28f126890aSEmmanuel Vadot	};
29f126890aSEmmanuel Vadot
30f126890aSEmmanuel Vadot	reserved-memory {
31f126890aSEmmanuel Vadot		#address-cells = <1>;
32f126890aSEmmanuel Vadot		#size-cells = <1>;
33f126890aSEmmanuel Vadot		ranges;
34f126890aSEmmanuel Vadot
35f126890aSEmmanuel Vadot		mpss_dsm: memory@8c400000 {
36f126890aSEmmanuel Vadot			no-map;
37f126890aSEmmanuel Vadot			reg = <0x8c400000 0x3200000>;
38f126890aSEmmanuel Vadot		};
39f126890aSEmmanuel Vadot
40f126890aSEmmanuel Vadot		ipa_fw_mem: memory@8fced000 {
41f126890aSEmmanuel Vadot			no-map;
42f126890aSEmmanuel Vadot			reg = <0x8fced000 0x10000>;
43f126890aSEmmanuel Vadot		};
44f126890aSEmmanuel Vadot
45f126890aSEmmanuel Vadot		mpss_adsp_mem: memory@90800000 {
46f126890aSEmmanuel Vadot			no-map;
47f126890aSEmmanuel Vadot			reg = <0x90800000 0x10000000>;
48f126890aSEmmanuel Vadot		};
49f126890aSEmmanuel Vadot	};
50f126890aSEmmanuel Vadot
51f126890aSEmmanuel Vadot	vph_pwr: vph-pwr-regulator {
52f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
53f126890aSEmmanuel Vadot		regulator-name = "vph_pwr";
54f126890aSEmmanuel Vadot		regulator-min-microvolt = <3700000>;
55f126890aSEmmanuel Vadot		regulator-max-microvolt = <3700000>;
56f126890aSEmmanuel Vadot	};
57f126890aSEmmanuel Vadot
58f126890aSEmmanuel Vadot	vreg_bob_3p3: pmx65_bob {
59f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
60f126890aSEmmanuel Vadot		regulator-name = "vreg_bob_3p3";
61f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
62f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
63f126890aSEmmanuel Vadot
64f126890aSEmmanuel Vadot		regulator-always-on;
65f126890aSEmmanuel Vadot		regulator-boot-on;
66f126890aSEmmanuel Vadot
67f126890aSEmmanuel Vadot		vin-supply = <&vph_pwr>;
68f126890aSEmmanuel Vadot	};
69f126890aSEmmanuel Vadot};
70f126890aSEmmanuel Vadot
71f126890aSEmmanuel Vadot&apps_rsc {
72f126890aSEmmanuel Vadot	regulators-0 {
73f126890aSEmmanuel Vadot		compatible = "qcom,pmx65-rpmh-regulators";
74f126890aSEmmanuel Vadot		qcom,pmic-id = "b";
75f126890aSEmmanuel Vadot
76f126890aSEmmanuel Vadot		vdd-s1-supply = <&vph_pwr>;
77f126890aSEmmanuel Vadot		vdd-s2-supply = <&vph_pwr>;
78f126890aSEmmanuel Vadot		vdd-s3-supply = <&vph_pwr>;
79f126890aSEmmanuel Vadot		vdd-s4-supply = <&vph_pwr>;
80f126890aSEmmanuel Vadot		vdd-s5-supply = <&vph_pwr>;
81f126890aSEmmanuel Vadot		vdd-s6-supply = <&vph_pwr>;
82f126890aSEmmanuel Vadot		vdd-s7-supply = <&vph_pwr>;
83f126890aSEmmanuel Vadot		vdd-s8-supply = <&vph_pwr>;
84f126890aSEmmanuel Vadot		vdd-l1-supply = <&vreg_s2b_1p224>;
85f126890aSEmmanuel Vadot		vdd-l2-l18-supply = <&vreg_s2b_1p224>;
86f126890aSEmmanuel Vadot		vdd-l3-supply = <&vreg_s8b_0p824>;
87f126890aSEmmanuel Vadot		vdd-l4-supply = <&vreg_s7b_0p936>;
88f126890aSEmmanuel Vadot		vdd-l5-l6-l16-supply = <&vreg_s4b_1p824>;
89f126890aSEmmanuel Vadot		vdd-l7-supply = <&vreg_s3b_0p776>;
90f126890aSEmmanuel Vadot		vdd-l8-l9-supply = <&vreg_s8b_0p824>;
91f126890aSEmmanuel Vadot		vdd-l10-supply = <&vreg_bob_3p3>;
92f126890aSEmmanuel Vadot		vdd-l11-l13-supply = <&vreg_bob_3p3>;
93f126890aSEmmanuel Vadot		vdd-l12-supply = <&vreg_s2b_1p224>;
94f126890aSEmmanuel Vadot		vdd-l14-supply = <&vreg_s3b_0p776>;
95f126890aSEmmanuel Vadot		vdd-l15-supply = <&vreg_s2b_1p224>;
96f126890aSEmmanuel Vadot		vdd-l17-supply = <&vreg_s8b_0p824>;
97f126890aSEmmanuel Vadot		vdd-l19-supply = <&vreg_s3b_0p776>;
98f126890aSEmmanuel Vadot		vdd-l20-supply = <&vreg_s7b_0p936>;
99f126890aSEmmanuel Vadot		vdd-l21-supply = <&vreg_s7b_0p936>;
100f126890aSEmmanuel Vadot
101f126890aSEmmanuel Vadot		vreg_s2b_1p224: smps2 {
102f126890aSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
103f126890aSEmmanuel Vadot			regulator-max-microvolt = <1400000>;
104f126890aSEmmanuel Vadot		};
105f126890aSEmmanuel Vadot
106f126890aSEmmanuel Vadot		vreg_s3b_0p776: smps3 {
107f126890aSEmmanuel Vadot			regulator-min-microvolt = <500000>;
108f126890aSEmmanuel Vadot			regulator-max-microvolt = <1040000>;
109f126890aSEmmanuel Vadot		};
110f126890aSEmmanuel Vadot
111f126890aSEmmanuel Vadot		vreg_s4b_1p824: smps4 {
112f126890aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
113f126890aSEmmanuel Vadot			regulator-max-microvolt = <2024000>;
114f126890aSEmmanuel Vadot		};
115f126890aSEmmanuel Vadot
116f126890aSEmmanuel Vadot		vreg_s7b_0p936: smps7 {
117f126890aSEmmanuel Vadot			regulator-min-microvolt = <500000>;
118f126890aSEmmanuel Vadot			regulator-max-microvolt = <1040000>;
119f126890aSEmmanuel Vadot		};
120f126890aSEmmanuel Vadot
121f126890aSEmmanuel Vadot		vreg_s8b_0p824: smps8 {
122f126890aSEmmanuel Vadot			regulator-min-microvolt = <304000>;
123f126890aSEmmanuel Vadot			regulator-max-microvolt = <1300000>;
124f126890aSEmmanuel Vadot		};
125f126890aSEmmanuel Vadot
126f126890aSEmmanuel Vadot		vreg_l1b_1p2: ldo1 {
127f126890aSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
128f126890aSEmmanuel Vadot			regulator-max-microvolt = <1200000>;
129f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
130f126890aSEmmanuel Vadot		};
131f126890aSEmmanuel Vadot
132f126890aSEmmanuel Vadot		ldo2 {
133f126890aSEmmanuel Vadot			regulator-min-microvolt = <1128000>;
134f126890aSEmmanuel Vadot			regulator-max-microvolt = <1128000>;
135f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
136f126890aSEmmanuel Vadot		};
137f126890aSEmmanuel Vadot
138f126890aSEmmanuel Vadot		ldo3 {
139f126890aSEmmanuel Vadot			regulator-min-microvolt = <300000>;
140f126890aSEmmanuel Vadot			regulator-max-microvolt = <960000>;
141f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
142f126890aSEmmanuel Vadot		};
143f126890aSEmmanuel Vadot
144f126890aSEmmanuel Vadot		vreg_l4b_0p88: ldo4 {
145f126890aSEmmanuel Vadot			regulator-min-microvolt = <880000>;
146f126890aSEmmanuel Vadot			regulator-max-microvolt = <912000>;
147f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
148f126890aSEmmanuel Vadot		};
149f126890aSEmmanuel Vadot
150f126890aSEmmanuel Vadot		vreg_l5b_1p8: ldo5 {
151f126890aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
152f126890aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
153f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
154f126890aSEmmanuel Vadot		};
155f126890aSEmmanuel Vadot
156f126890aSEmmanuel Vadot		ldo6 {
157f126890aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
158f126890aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
159f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
160f126890aSEmmanuel Vadot		};
161f126890aSEmmanuel Vadot
162f126890aSEmmanuel Vadot		ldo7 {
163f126890aSEmmanuel Vadot			regulator-min-microvolt = <752000>;
164f126890aSEmmanuel Vadot			regulator-max-microvolt = <752000>;
165f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
166f126890aSEmmanuel Vadot		};
167f126890aSEmmanuel Vadot
168f126890aSEmmanuel Vadot		ldo8 {
169f126890aSEmmanuel Vadot			regulator-min-microvolt = <800000>;
170f126890aSEmmanuel Vadot			regulator-max-microvolt = <800000>;
171f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
172f126890aSEmmanuel Vadot		};
173f126890aSEmmanuel Vadot
174f126890aSEmmanuel Vadot		ldo9 {
175f126890aSEmmanuel Vadot			regulator-min-microvolt = <800000>;
176f126890aSEmmanuel Vadot			regulator-max-microvolt = <800000>;
177f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
178f126890aSEmmanuel Vadot		};
179f126890aSEmmanuel Vadot
180f126890aSEmmanuel Vadot		vreg_l10b_3p08: ldo10 {
181f126890aSEmmanuel Vadot			regulator-min-microvolt = <3088000>;
182f126890aSEmmanuel Vadot			regulator-max-microvolt = <3088000>;
183f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
184f126890aSEmmanuel Vadot		};
185f126890aSEmmanuel Vadot
186f126890aSEmmanuel Vadot		ldo11 {
187f126890aSEmmanuel Vadot			regulator-min-microvolt = <1704000>;
188f126890aSEmmanuel Vadot			regulator-max-microvolt = <2928000>;
189f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
190f126890aSEmmanuel Vadot		};
191f126890aSEmmanuel Vadot
192f126890aSEmmanuel Vadot		ldo12 {
193f126890aSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
194f126890aSEmmanuel Vadot			regulator-max-microvolt = <1200000>;
195f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
196f126890aSEmmanuel Vadot		};
197f126890aSEmmanuel Vadot
198f126890aSEmmanuel Vadot		ldo13 {
199f126890aSEmmanuel Vadot			regulator-min-microvolt = <1704000>;
200f126890aSEmmanuel Vadot			regulator-max-microvolt = <2928000>;
201f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
202f126890aSEmmanuel Vadot		};
203f126890aSEmmanuel Vadot
204f126890aSEmmanuel Vadot		ldo14 {
205f126890aSEmmanuel Vadot			regulator-min-microvolt = <600000>;
206f126890aSEmmanuel Vadot			regulator-max-microvolt = <800000>;
207f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
208f126890aSEmmanuel Vadot		};
209f126890aSEmmanuel Vadot
210f126890aSEmmanuel Vadot		ldo15 {
211f126890aSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
212f126890aSEmmanuel Vadot			regulator-max-microvolt = <1200000>;
213f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
214f126890aSEmmanuel Vadot		};
215f126890aSEmmanuel Vadot
216f126890aSEmmanuel Vadot		ldo16 {
217f126890aSEmmanuel Vadot			regulator-min-microvolt = <1776000>;
218f126890aSEmmanuel Vadot			regulator-max-microvolt = <1776000>;
219f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
220f126890aSEmmanuel Vadot		};
221f126890aSEmmanuel Vadot
222f126890aSEmmanuel Vadot		ldo17 {
223f126890aSEmmanuel Vadot			regulator-min-microvolt = <300000>;
224f126890aSEmmanuel Vadot			regulator-max-microvolt = <960000>;
225f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
226f126890aSEmmanuel Vadot		};
227f126890aSEmmanuel Vadot
228f126890aSEmmanuel Vadot		ldo19 {
229f126890aSEmmanuel Vadot			regulator-min-microvolt = <752000>;
230f126890aSEmmanuel Vadot			regulator-max-microvolt = <752000>;
231f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
232f126890aSEmmanuel Vadot		};
233f126890aSEmmanuel Vadot
234f126890aSEmmanuel Vadot		ldo20 {
235f126890aSEmmanuel Vadot			regulator-min-microvolt = <912000>;
236f126890aSEmmanuel Vadot			regulator-max-microvolt = <912000>;
237f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
238f126890aSEmmanuel Vadot		};
239f126890aSEmmanuel Vadot
240f126890aSEmmanuel Vadot		ldo21 {
241f126890aSEmmanuel Vadot			regulator-min-microvolt = <912000>;
242f126890aSEmmanuel Vadot			regulator-max-microvolt = <912000>;
243f126890aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
244f126890aSEmmanuel Vadot		};
245f126890aSEmmanuel Vadot	};
246f126890aSEmmanuel Vadot};
247f126890aSEmmanuel Vadot
248f126890aSEmmanuel Vadot&blsp1_uart3 {
249f126890aSEmmanuel Vadot	status = "okay";
250f126890aSEmmanuel Vadot};
251f126890aSEmmanuel Vadot
252f126890aSEmmanuel Vadot&ipa {
253f126890aSEmmanuel Vadot	qcom,gsi-loader = "skip";
254f126890aSEmmanuel Vadot	status = "okay";
255f126890aSEmmanuel Vadot};
256f126890aSEmmanuel Vadot
257f126890aSEmmanuel Vadot&pcie_ep {
258f126890aSEmmanuel Vadot	pinctrl-0 = <&pcie_ep_clkreq_default
259f126890aSEmmanuel Vadot		     &pcie_ep_perst_default
260f126890aSEmmanuel Vadot		     &pcie_ep_wake_default>;
261f126890aSEmmanuel Vadot	pinctrl-names = "default";
262f126890aSEmmanuel Vadot
263f126890aSEmmanuel Vadot	reset-gpios = <&tlmm 57 GPIO_ACTIVE_LOW>;
264f126890aSEmmanuel Vadot	wake-gpios = <&tlmm 53 GPIO_ACTIVE_LOW>;
265f126890aSEmmanuel Vadot
266f126890aSEmmanuel Vadot	status = "okay";
267f126890aSEmmanuel Vadot};
268f126890aSEmmanuel Vadot
269f126890aSEmmanuel Vadot&pcie_phy {
270f126890aSEmmanuel Vadot	vdda-phy-supply = <&vreg_l1b_1p2>;
271f126890aSEmmanuel Vadot	vdda-pll-supply = <&vreg_l4b_0p88>;
272f126890aSEmmanuel Vadot
273f126890aSEmmanuel Vadot	status = "okay";
274f126890aSEmmanuel Vadot};
275f126890aSEmmanuel Vadot
276f126890aSEmmanuel Vadot&qpic_bam {
277f126890aSEmmanuel Vadot	status = "okay";
278f126890aSEmmanuel Vadot};
279f126890aSEmmanuel Vadot
280f126890aSEmmanuel Vadot&qpic_nand {
281f126890aSEmmanuel Vadot	status = "okay";
282f126890aSEmmanuel Vadot
283f126890aSEmmanuel Vadot	nand@0 {
284f126890aSEmmanuel Vadot		reg = <0>;
285f126890aSEmmanuel Vadot
286f126890aSEmmanuel Vadot		nand-ecc-strength = <4>;
287f126890aSEmmanuel Vadot		nand-ecc-step-size = <512>;
288f126890aSEmmanuel Vadot		nand-bus-width = <8>;
289f126890aSEmmanuel Vadot		/* ico and efs2 partitions are secured */
290f126890aSEmmanuel Vadot		secure-regions = /bits/ 64 <0x500000 0x500000
291f126890aSEmmanuel Vadot					    0xa00000 0xb00000>;
292f126890aSEmmanuel Vadot	};
293f126890aSEmmanuel Vadot};
294f126890aSEmmanuel Vadot
295f126890aSEmmanuel Vadot&remoteproc_mpss {
296f126890aSEmmanuel Vadot	memory-region = <&mpss_adsp_mem>;
297f126890aSEmmanuel Vadot	status = "okay";
298f126890aSEmmanuel Vadot};
299f126890aSEmmanuel Vadot
300f126890aSEmmanuel Vadot&tlmm {
301f126890aSEmmanuel Vadot	pcie_ep_clkreq_default: pcie-ep-clkreq-default-state {
302f126890aSEmmanuel Vadot		pins = "gpio56";
303f126890aSEmmanuel Vadot		function = "pcie_clkreq";
304f126890aSEmmanuel Vadot		drive-strength = <2>;
305f126890aSEmmanuel Vadot		bias-disable;
306f126890aSEmmanuel Vadot	};
307f126890aSEmmanuel Vadot
308f126890aSEmmanuel Vadot	pcie_ep_perst_default: pcie-ep-perst-default-state {
309f126890aSEmmanuel Vadot		pins = "gpio57";
310f126890aSEmmanuel Vadot		function = "gpio";
311f126890aSEmmanuel Vadot		drive-strength = <2>;
312f126890aSEmmanuel Vadot		bias-pull-down;
313f126890aSEmmanuel Vadot	};
314f126890aSEmmanuel Vadot
315f126890aSEmmanuel Vadot	pcie_ep_wake_default: pcie-ep-wake-default-state {
316f126890aSEmmanuel Vadot		pins = "gpio53";
317f126890aSEmmanuel Vadot		function = "gpio";
318f126890aSEmmanuel Vadot		drive-strength = <2>;
319f126890aSEmmanuel Vadot		bias-disable;
320f126890aSEmmanuel Vadot	};
321f126890aSEmmanuel Vadot};
322f126890aSEmmanuel Vadot
323f126890aSEmmanuel Vadot&usb {
324f126890aSEmmanuel Vadot	status = "okay";
325f126890aSEmmanuel Vadot};
326f126890aSEmmanuel Vadot
327f126890aSEmmanuel Vadot&usb_dwc3 {
328f126890aSEmmanuel Vadot	dr_mode = "peripheral";
329f126890aSEmmanuel Vadot};
330f126890aSEmmanuel Vadot
331f126890aSEmmanuel Vadot&usb_hsphy {
332f126890aSEmmanuel Vadot	vdda-pll-supply = <&vreg_l4b_0p88>;
333f126890aSEmmanuel Vadot	vdda33-supply = <&vreg_l10b_3p08>;
334f126890aSEmmanuel Vadot	vdda18-supply = <&vreg_l5b_1p8>;
335f126890aSEmmanuel Vadot	status = "okay";
336f126890aSEmmanuel Vadot};
337f126890aSEmmanuel Vadot
338f126890aSEmmanuel Vadot&usb_qmpphy {
339f126890aSEmmanuel Vadot	vdda-phy-supply = <&vreg_l4b_0p88>;
340f126890aSEmmanuel Vadot	vdda-pll-supply = <&vreg_l1b_1p2>;
341f126890aSEmmanuel Vadot	status = "okay";
342f126890aSEmmanuel Vadot};
343