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 #include <dt-bindings/gpio/gpio.h>
8 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
9
10 / {
11 aliases {
12 serial0 = &blsp1_uart2;
13 serial1 = &blsp1_uart3;
14 };
15
16 chosen {
17 stdout-path = "serial0";
18 };
19
20 vph_pwr: vph-pwr-regulator {
21 compatible = "regulator-fixed";
22 regulator-name = "vph_pwr";
23 regulator-always-on;
24 regulator-boot-on;
25 };
26
27 vdd_ch0_3p3:
28 vdd_esmps3_3p3: vdd-esmps3-3p3-regulator {
29 compatible = "regulator-fixed";
30 regulator-name = "eSMPS3_3P3";
31
32 regulator-min-microvolt = <3300000>;
33 regulator-max-microvolt = <3300000>;
34 regulator-always-on;
35 };
36
37 usb3_vbus_reg: regulator-usb3-vbus {
38 compatible = "regulator-fixed";
39 regulator-name = "VBUS_BOOST_5V";
40 regulator-min-microvolt = <5000000>;
41 regulator-max-microvolt = <5000000>;
42 gpio = <&pms405_gpios 3 GPIO_ACTIVE_HIGH>;
43 pinctrl-names = "default";
44 pinctrl-0 = <&usb_vbus_boost_pin>;
45 vin-supply = <&vph_pwr>;
46 enable-active-high;
47
48 /* TODO: Drop this when introducing role switching */
49 regulator-always-on;
50 };
51 };
52
53 &blsp1_uart3 {
54 status = "okay";
55
56 bluetooth {
57 compatible = "qcom,wcn3990-bt";
58 vddio-supply = <&vreg_l6_1p8>;
59 vddxo-supply = <&vreg_l5_1p8>;
60 vddrf-supply = <&vreg_l1_1p3>;
61 vddch0-supply = <&vdd_ch0_3p3>;
62
63 local-bd-address = [ 02 00 00 00 5a ad ];
64
65 max-speed = <3200000>;
66 };
67 };
68
69 &blsp1_dma {
70 qcom,controlled-remotely;
71 };
72
73 &blsp2_dma {
74 qcom,controlled-remotely;
75 };
76
77 &gcc {
78 protected-clocks = <GCC_BIMC_CDSP_CLK>,
79 <GCC_CDSP_CFG_AHB_CLK>,
80 <GCC_CDSP_BIMC_CLK_SRC>,
81 <GCC_CDSP_TBU_CLK>,
82 <141>, /* GCC_WCSS_Q6_AHB_CLK */
83 <142>; /* GCC_WCSS_Q6_AXIM_CLK */
84 };
85
86 &pms405_spmi_regulators {
87 vdd_s3-supply = <&vph_pwr>;
88
89 pms405_s3: s3 {
90 regulator-always-on;
91 regulator-boot-on;
92 regulator-name = "vdd_apc";
93 regulator-initial-mode = <1>;
94 regulator-min-microvolt = <1048000>;
95 regulator-max-microvolt = <1384000>;
96 };
97 };
98
99 &pcie {
100 status = "okay";
101
102 perst-gpio = <&tlmm 43 GPIO_ACTIVE_LOW>;
103
104 pinctrl-names = "default";
105 pinctrl-0 = <&perst_state>;
106 };
107
108 &pcie_phy {
109 status = "okay";
110
111 vdda-vp-supply = <&vreg_l3_1p05>;
112 vdda-vph-supply = <&vreg_l5_1p8>;
113 };
114
115 &remoteproc_adsp {
116 status = "okay";
117 };
118
119 &remoteproc_cdsp {
120 status = "okay";
121 };
122
123 &remoteproc_wcss {
124 status = "okay";
125 };
126
127 &rpm_requests {
128 pms405-regulators {
129 compatible = "qcom,rpm-pms405-regulators";
130
131 vdd_s1-supply = <&vph_pwr>;
132 vdd_s2-supply = <&vph_pwr>;
133 vdd_s3-supply = <&vph_pwr>;
134 vdd_s4-supply = <&vph_pwr>;
135 vdd_s5-supply = <&vph_pwr>;
136 vdd_l1_l2-supply = <&vreg_s5_1p35>;
137 vdd_l3_l8-supply = <&vreg_s5_1p35>;
138 vdd_l4-supply = <&vreg_s5_1p35>;
139 vdd_l5_l6-supply = <&vreg_s4_1p8>;
140 vdd_l7-supply = <&vph_pwr>;
141 vdd_l9-supply = <&vreg_s5_1p35>;
142 vdd_l10_l11_l12_l13-supply = <&vph_pwr>;
143
144 vreg_s4_1p8: s4 {
145 regulator-min-microvolt = <1728000>;
146 regulator-max-microvolt = <1920000>;
147 };
148
149 vreg_s5_1p35: s5 {
150 regulator-min-microvolt = <1352000>;
151 regulator-max-microvolt = <1352000>;
152 };
153
154 vreg_l1_1p3: l1 {
155 regulator-min-microvolt = <1240000>;
156 regulator-max-microvolt = <1352000>;
157 };
158
159 vreg_l2_1p275: l2 {
160 regulator-min-microvolt = <1048000>;
161 regulator-max-microvolt = <1280000>;
162 };
163
164 vreg_l3_1p05: l3 {
165 regulator-min-microvolt = <1048000>;
166 regulator-max-microvolt = <1160000>;
167 };
168
169 vreg_l4_1p2: l4 {
170 regulator-min-microvolt = <1144000>;
171 regulator-max-microvolt = <1256000>;
172 };
173
174 vreg_l5_1p8: l5 {
175 regulator-min-microvolt = <1800000>;
176 regulator-max-microvolt = <1800000>;
177 };
178
179 vreg_l6_1p8: l6 {
180 regulator-min-microvolt = <1800000>;
181 regulator-max-microvolt = <1800000>;
182 regulator-always-on;
183 };
184
185 vreg_l7_1p8: l7 {
186 regulator-min-microvolt = <1616000>;
187 regulator-max-microvolt = <3000000>;
188 };
189
190 vreg_l8_1p2: l8 {
191 regulator-min-microvolt = <1136000>;
192 regulator-max-microvolt = <1352000>;
193 };
194
195 vreg_l10_3p3: l10 {
196 regulator-min-microvolt = <2936000>;
197 regulator-max-microvolt = <3088000>;
198 };
199
200 vreg_l11_sdc2: l11 {
201 regulator-min-microvolt = <2696000>;
202 regulator-max-microvolt = <3304000>;
203 };
204
205 vreg_l12_3p3: l12 {
206 regulator-min-microvolt = <3050000>;
207 regulator-max-microvolt = <3300000>;
208 };
209
210 vreg_l13_3p3: l13 {
211 regulator-min-microvolt = <3000000>;
212 regulator-max-microvolt = <3300000>;
213 };
214 };
215 };
216
217 &sdcc1 {
218 status = "okay";
219
220 supports-cqe;
221 mmc-ddr-1_8v;
222 mmc-hs400-1_8v;
223 bus-width = <8>;
224 non-removable;
225
226 pinctrl-names = "default", "sleep";
227 pinctrl-0 = <&sdc1_on>;
228 pinctrl-1 = <&sdc1_off>;
229 };
230
231 &tlmm {
232 perst_state: perst {
233 pins = "gpio43";
234 function = "gpio";
235
236 drive-strength = <2>;
237 bias-disable;
238 output-low;
239 };
240
241 sdc1_on: sdc1-on {
242 clk {
243 pins = "sdc1_clk";
244 bias-disable;
245 drive-strength = <16>;
246 };
247
248 cmd {
249 pins = "sdc1_cmd";
250 bias-pull-up;
251 drive-strength = <10>;
252 };
253
254 data {
255 pins = "sdc1_data";
256 bias-pull-up;
257 drive-strength = <10>;
258 };
259
260 rclk {
261 pins = "sdc1_rclk";
262 bias-pull-down;
263 };
264 };
265
266 sdc1_off: sdc1-off {
267 clk {
268 pins = "sdc1_clk";
269 bias-disable;
270 drive-strength = <2>;
271 };
272
273 cmd {
274 pins = "sdc1_cmd";
275 bias-pull-up;
276 drive-strength = <2>;
277 };
278
279 data {
280 pins = "sdc1_data";
281 bias-pull-up;
282 drive-strength = <2>;
283 };
284
285 rclk {
286 pins = "sdc1_rclk";
287 bias-pull-down;
288 };
289 };
290
291 usb3_id_pin: usb3-id-pin {
292 pinmux {
293 pins = "gpio116";
294 function = "gpio";
295 };
296
297 pinconf {
298 pins = "gpio116";
299 drive-strength = <2>;
300 bias-pull-up;
301 input-enable;
302 };
303 };
304 };
305
306 &pms405_gpios {
307 usb_vbus_boost_pin: usb-vbus-boost-state {
308 pinconf {
309 pins = "gpio3";
310 function = PMIC_GPIO_FUNC_NORMAL;
311 output-low;
312 power-source = <1>;
313 };
314 };
315 usb3_vbus_pin: usb3-vbus-state {
316 pinconf {
317 pins = "gpio12";
318 function = PMIC_GPIO_FUNC_NORMAL;
319 input-enable;
320 bias-pull-down;
321 power-source = <1>;
322 };
323 };
324 };
325
326 &usb2 {
327 status = "okay";
328 };
329
330 &usb2_phy_sec {
331 vdd-supply = <&vreg_l4_1p2>;
332 vdda1p8-supply = <&vreg_l5_1p8>;
333 vdda3p3-supply = <&vreg_l12_3p3>;
334 status = "okay";
335 };
336
337 &usb3 {
338 status = "okay";
339
340 };
341
342 &usb3_dwc3 {
343 dr_mode = "host";
344 };
345
346 &usb2_phy_prim {
347 vdd-supply = <&vreg_l4_1p2>;
348 vdda1p8-supply = <&vreg_l5_1p8>;
349 vdda3p3-supply = <&vreg_l12_3p3>;
350 status = "okay";
351 };
352
353 &usb3_phy {
354 vdd-supply = <&vreg_l3_1p05>;
355 vdda1p8-supply = <&vreg_l5_1p8>;
356 status = "okay";
357 };
358
359 &wifi {
360 status = "okay";
361 vdd-0.8-cx-mx-supply = <&vreg_l2_1p275>;
362 vdd-1.8-xo-supply = <&vreg_l5_1p8>;
363 vdd-1.3-rfa-supply = <&vreg_l1_1p3>;
364 };
365
366 /* PINCTRL - additions to nodes defined in qcs404.dtsi */
367
368 &blsp1_uart2_default {
369 rx {
370 drive-strength = <2>;
371 bias-disable;
372 };
373
374 tx {
375 drive-strength = <2>;
376 bias-disable;
377 };
378 };
379
380 &blsp1_uart3_default {
381 cts {
382 pins = "gpio84";
383 bias-disable;
384 };
385
386 rts-tx {
387 pins = "gpio85", "gpio82";
388 drive-strength = <2>;
389 bias-disable;
390 };
391
392 rx {
393 pins = "gpio83";
394 bias-pull-up;
395 };
396 };
Cache object: 2c555a6581b0e6d76f847289ad13c0fe
|