1// SPDX-License-Identifier: GPL-2.0
2// Copyright (c) 2018, Linaro Limited
3
4#include <dt-bindings/gpio/gpio.h>
5#include "qcs404.dtsi"
6#include "pms405.dtsi"
7
8/ {
9	aliases {
10		serial0 = &blsp1_uart2;
11		serial1 = &blsp1_uart3;
12	};
13
14	chosen {
15		stdout-path = "serial0";
16	};
17
18	vph_pwr: vph-pwr-regulator {
19		compatible = "regulator-fixed";
20		regulator-name = "vph_pwr";
21		regulator-always-on;
22		regulator-boot-on;
23	};
24
25	vdd_ch0_3p3:
26	vdd_esmps3_3p3: vdd-esmps3-3p3-regulator {
27		compatible = "regulator-fixed";
28		regulator-name = "eSMPS3_3P3";
29
30		regulator-min-microvolt = <3300000>;
31		regulator-max-microvolt = <3300000>;
32		regulator-always-on;
33	};
34};
35
36&blsp1_uart3 {
37	status = "okay";
38
39	bluetooth {
40		compatible = "qcom,wcn3990-bt";
41		vddio-supply = <&vreg_l6_1p8>;
42		vddxo-supply = <&vreg_l5_1p8>;
43		vddrf-supply = <&vreg_l1_1p3>;
44		vddch0-supply = <&vdd_ch0_3p3>;
45
46		local-bd-address = [ 02 00 00 00 5a ad ];
47
48		max-speed = <3200000>;
49	};
50};
51
52&blsp1_dma {
53	qcom,controlled-remotely;
54};
55
56&blsp2_dma {
57	qcom,controlled-remotely;
58};
59
60&gcc {
61	protected-clocks = <GCC_BIMC_CDSP_CLK>,
62			   <GCC_CDSP_CFG_AHB_CLK>,
63			   <GCC_CDSP_BIMC_CLK_SRC>,
64			   <GCC_CDSP_TBU_CLK>,
65			   <141>, /* GCC_WCSS_Q6_AHB_CLK */
66			   <142>; /* GCC_WCSS_Q6_AXIM_CLK */
67};
68
69&pms405_spmi_regulators {
70	vdd_s3-supply = <&vph_pwr>;
71
72	pms405_s3: s3 {
73		regulator-always-on;
74		regulator-boot-on;
75		regulator-name = "vdd_apc";
76		regulator-min-microvolt = <1048000>;
77		regulator-max-microvolt = <1384000>;
78	};
79};
80
81&pcie {
82	status = "ok";
83
84	perst-gpio = <&tlmm 43 GPIO_ACTIVE_LOW>;
85
86	pinctrl-names = "default";
87	pinctrl-0 = <&perst_state>;
88};
89
90&pcie_phy {
91	status = "ok";
92
93	vdda-vp-supply = <&vreg_l3_1p05>;
94	vdda-vph-supply = <&vreg_l5_1p8>;
95};
96
97&remoteproc_adsp {
98	status = "ok";
99};
100
101&remoteproc_cdsp {
102	status = "ok";
103};
104
105&remoteproc_wcss {
106	status = "ok";
107};
108
109&rpm_requests {
110	pms405-regulators {
111		compatible = "qcom,rpm-pms405-regulators";
112
113		vdd_s1-supply = <&vph_pwr>;
114		vdd_s2-supply = <&vph_pwr>;
115		vdd_s3-supply = <&vph_pwr>;
116		vdd_s4-supply = <&vph_pwr>;
117		vdd_s5-supply = <&vph_pwr>;
118		vdd_l1_l2-supply = <&vreg_s5_1p35>;
119		vdd_l3_l8-supply = <&vreg_s5_1p35>;
120		vdd_l4-supply = <&vreg_s5_1p35>;
121		vdd_l5_l6-supply = <&vreg_s4_1p8>;
122		vdd_l7-supply = <&vph_pwr>;
123		vdd_l9-supply = <&vreg_s5_1p35>;
124		vdd_l10_l11_l12_l13-supply = <&vph_pwr>;
125
126		vreg_s4_1p8: s4 {
127			regulator-min-microvolt = <1728000>;
128			regulator-max-microvolt = <1920000>;
129		};
130
131		vreg_s5_1p35: s5 {
132			regulator-min-microvolt = <1352000>;
133			regulator-max-microvolt = <1352000>;
134		};
135
136		vreg_l1_1p3: l1 {
137			regulator-min-microvolt = <1240000>;
138			regulator-max-microvolt = <1352000>;
139		};
140
141		vreg_l2_1p275: l2 {
142			regulator-min-microvolt = <1048000>;
143			regulator-max-microvolt = <1280000>;
144		};
145
146		vreg_l3_1p05: l3 {
147			regulator-min-microvolt = <1048000>;
148			regulator-max-microvolt = <1160000>;
149		};
150
151		vreg_l4_1p2: l4 {
152			regulator-min-microvolt = <1144000>;
153			regulator-max-microvolt = <1256000>;
154		};
155
156		vreg_l5_1p8: l5 {
157			regulator-min-microvolt = <1800000>;
158			regulator-max-microvolt = <1800000>;
159		};
160
161		vreg_l6_1p8: l6 {
162			regulator-min-microvolt = <1800000>;
163			regulator-max-microvolt = <1800000>;
164			regulator-always-on;
165		};
166
167		vreg_l7_1p8: l7 {
168			regulator-min-microvolt = <1616000>;
169			regulator-max-microvolt = <3000000>;
170		};
171
172		vreg_l8_1p2: l8 {
173			regulator-min-microvolt = <1136000>;
174			regulator-max-microvolt = <1352000>;
175		};
176
177		vreg_l10_3p3: l10 {
178			regulator-min-microvolt = <2936000>;
179			regulator-max-microvolt = <3088000>;
180		};
181
182		vreg_l11_sdc2: l11 {
183			regulator-min-microvolt = <2696000>;
184			regulator-max-microvolt = <3304000>;
185		};
186
187		vreg_l12_3p3: l12 {
188			regulator-min-microvolt = <2968000>;
189			regulator-max-microvolt = <3300000>;
190		};
191
192		vreg_l13_3p3: l13 {
193			regulator-min-microvolt = <3000000>;
194			regulator-max-microvolt = <3300000>;
195		};
196	};
197};
198
199&sdcc1 {
200	status = "ok";
201
202	mmc-ddr-1_8v;
203	mmc-hs400-1_8v;
204	bus-width = <8>;
205	non-removable;
206
207	pinctrl-names = "default", "sleep";
208	pinctrl-0 = <&sdc1_on>;
209	pinctrl-1 = <&sdc1_off>;
210};
211
212&tlmm {
213	perst_state: perst {
214		pins = "gpio43";
215		function = "gpio";
216
217		drive-strength = <2>;
218		bias-disable;
219		output-low;
220	};
221
222	sdc1_on: sdc1-on {
223		clk {
224			pins = "sdc1_clk";
225			bias-disable;
226			drive-strength = <16>;
227		};
228
229		cmd {
230			pins = "sdc1_cmd";
231			bias-pull-up;
232			drive-strength = <10>;
233		};
234
235		data {
236			pins = "sdc1_data";
237			bias-pull-up;
238			drive-strength = <10>;
239		};
240
241		rclk {
242			pins = "sdc1_rclk";
243			bias-pull-down;
244		};
245	};
246
247	sdc1_off: sdc1-off {
248		clk {
249			pins = "sdc1_clk";
250			bias-disable;
251			drive-strength = <2>;
252		};
253
254		cmd {
255			pins = "sdc1_cmd";
256			bias-pull-up;
257			drive-strength = <2>;
258		};
259
260		data {
261			pins = "sdc1_data";
262			bias-pull-up;
263			drive-strength = <2>;
264		};
265
266		rclk {
267			pins = "sdc1_rclk";
268			bias-pull-down;
269		};
270	};
271};
272
273&wifi {
274	status = "okay";
275	vdd-0.8-cx-mx-supply = <&vreg_l2_1p275>;
276	vdd-1.8-xo-supply = <&vreg_l5_1p8>;
277	vdd-1.3-rfa-supply = <&vreg_l1_1p3>;
278};
279
280/* PINCTRL - additions to nodes defined in qcs404.dtsi */
281
282&blsp1_uart2_default {
283	rx {
284		drive-strength = <2>;
285		bias-disable;
286	};
287
288	tx {
289		drive-strength = <2>;
290		bias-disable;
291	};
292};
293
294&blsp1_uart3_default {
295	cts {
296		pins = "gpio84";
297		bias-disable;
298	};
299
300	rts-tx {
301		pins = "gpio85", "gpio82";
302		drive-strength = <2>;
303		bias-disable;
304	};
305
306	rx {
307		pins = "gpio83";
308		bias-pull-up;
309	};
310};
311