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