1 // SPDX-License-Identifier: BSD-3-Clause
2 /*
3 * Copyright (c) 2021, The Linux Foundation. All rights reserved.
4 * Copyright (c) 2022, Linaro Limited
5 */
6
7 /dts-v1/;
8
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
11
12 #include "sc8280xp.dtsi"
13 #include "sc8280xp-pmics.dtsi"
14
15 / {
16 model = "Qualcomm SC8280XP CRD";
17 compatible = "qcom,sc8280xp-crd", "qcom,sc8280xp";
18
19 aliases {
20 serial0 = &qup2_uart17;
21 };
22
23 backlight {
24 compatible = "pwm-backlight";
25 pwms = <&pmc8280c_lpg 3 1000000>;
26 enable-gpios = <&pmc8280_1_gpios 8 GPIO_ACTIVE_HIGH>;
27 power-supply = <&vreg_edp_bl>;
28
29 pinctrl-names = "default";
30 pinctrl-0 = <&edp_bl_en>, <&edp_bl_pwm>;
31 };
32
33 chosen {
34 stdout-path = "serial0:115200n8";
35 };
36
37 vreg_edp_bl: regulator-edp-bl {
38 compatible = "regulator-fixed";
39
40 regulator-name = "VREG_EDP_BL";
41 regulator-min-microvolt = <3600000>;
42 regulator-max-microvolt = <3600000>;
43
44 gpio = <&pmc8280_1_gpios 9 GPIO_ACTIVE_HIGH>;
45 enable-active-high;
46
47 pinctrl-names = "default";
48 pinctrl-0 = <&edp_bl_reg_en>;
49
50 regulator-boot-on;
51 };
52
53 vreg_misc_3p3: regulator-misc-3p3 {
54 compatible = "regulator-fixed";
55
56 regulator-name = "VREG_MISC_3P3";
57 regulator-min-microvolt = <3300000>;
58 regulator-max-microvolt = <3300000>;
59
60 gpio = <&pmc8280_1_gpios 1 GPIO_ACTIVE_HIGH>;
61 enable-active-high;
62
63 pinctrl-names = "default";
64 pinctrl-0 = <&misc_3p3_reg_en>;
65
66 regulator-boot-on;
67 regulator-always-on;
68 };
69 };
70
71 &apps_rsc {
72 pmc8280-1-rpmh-regulators {
73 compatible = "qcom,pm8350-rpmh-regulators";
74 qcom,pmic-id = "b";
75
76 vdd-l3-l5-supply = <&vreg_s11b>;
77
78 vreg_s11b: smps11 {
79 regulator-name = "vreg_s11b";
80 regulator-min-microvolt = <1272000>;
81 regulator-max-microvolt = <1272000>;
82 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
83 };
84
85 vreg_l3b: ldo3 {
86 regulator-name = "vreg_l3b";
87 regulator-min-microvolt = <1200000>;
88 regulator-max-microvolt = <1200000>;
89 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
90 regulator-allow-set-load;
91 regulator-boot-on;
92 regulator-always-on;
93 };
94
95 vreg_l4b: ldo4 {
96 regulator-name = "vreg_l4b";
97 regulator-min-microvolt = <912000>;
98 regulator-max-microvolt = <912000>;
99 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
100 regulator-allow-set-load;
101 };
102
103 vreg_l6b: ldo6 {
104 regulator-name = "vreg_l6b";
105 regulator-min-microvolt = <880000>;
106 regulator-max-microvolt = <880000>;
107 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
108 regulator-allow-set-load;
109 regulator-boot-on;
110 };
111 };
112
113 pmc8280c-rpmh-regulators {
114 compatible = "qcom,pm8350c-rpmh-regulators";
115 qcom,pmic-id = "c";
116
117 vreg_l1c: ldo1 {
118 regulator-name = "vreg_l1c";
119 regulator-min-microvolt = <1800000>;
120 regulator-max-microvolt = <1800000>;
121 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
122 regulator-allow-set-load;
123 };
124
125 vreg_l7c: ldo7 {
126 regulator-name = "vreg_l7c";
127 regulator-min-microvolt = <2504000>;
128 regulator-max-microvolt = <2504000>;
129 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
130 regulator-allow-set-load;
131 };
132
133 vreg_l13c: ldo13 {
134 regulator-name = "vreg_l13c";
135 regulator-min-microvolt = <3072000>;
136 regulator-max-microvolt = <3072000>;
137 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
138 regulator-allow-set-load;
139 };
140 };
141
142 pmc8280-2-rpmh-regulators {
143 compatible = "qcom,pm8350-rpmh-regulators";
144 qcom,pmic-id = "d";
145
146 vdd-l1-l4-supply = <&vreg_s11b>;
147
148 vreg_l3d: ldo3 {
149 regulator-name = "vreg_l3d";
150 regulator-min-microvolt = <1200000>;
151 regulator-max-microvolt = <1200000>;
152 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
153 regulator-allow-set-load;
154 };
155
156 vreg_l4d: ldo4 {
157 regulator-name = "vreg_l4d";
158 regulator-min-microvolt = <1200000>;
159 regulator-max-microvolt = <1200000>;
160 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
161 regulator-allow-set-load;
162 };
163
164 vreg_l6d: ldo6 {
165 regulator-name = "vreg_l6d";
166 regulator-min-microvolt = <880000>;
167 regulator-max-microvolt = <880000>;
168 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
169 regulator-allow-set-load;
170 };
171
172 vreg_l7d: ldo7 {
173 regulator-name = "vreg_l7d";
174 regulator-min-microvolt = <3072000>;
175 regulator-max-microvolt = <3072000>;
176 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
177 regulator-allow-set-load;
178 };
179
180 vreg_l9d: ldo9 {
181 regulator-name = "vreg_l9d";
182 regulator-min-microvolt = <912000>;
183 regulator-max-microvolt = <912000>;
184 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
185 regulator-allow-set-load;
186 };
187 };
188 };
189
190 &pmc8280c_lpg {
191 status = "okay";
192 };
193
194 &pmk8280_pon_pwrkey {
195 status = "okay";
196 };
197
198 &qup0 {
199 status = "okay";
200 };
201
202 &qup0_i2c4 {
203 clock-frequency = <400000>;
204
205 pinctrl-names = "default";
206 pinctrl-0 = <&qup0_i2c4_default>, <&ts0_default>;
207
208 status = "okay";
209
210 touchscreen@10 {
211 compatible = "hid-over-i2c";
212 reg = <0x10>;
213 hid-descr-addr = <0x1>;
214 interrupts-extended = <&tlmm 175 IRQ_TYPE_LEVEL_LOW>;
215 vdd-supply = <&vreg_misc_3p3>;
216 };
217 };
218
219 &qup1 {
220 status = "okay";
221 };
222
223 &qup2 {
224 status = "okay";
225 };
226
227 &qup2_i2c5 {
228 clock-frequency = <400000>;
229
230 pinctrl-names = "default";
231 pinctrl-0 = <&qup2_i2c5_default>, <&kybd_default>, <&tpad_default>;
232
233 status = "okay";
234
235 touchpad@15 {
236 compatible = "hid-over-i2c";
237 reg = <0x15>;
238 hid-descr-addr = <0x1>;
239 interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>;
240 vdd-supply = <&vreg_misc_3p3>;
241 };
242
243 keyboard@68 {
244 compatible = "hid-over-i2c";
245 reg = <0x68>;
246 hid-descr-addr = <0x1>;
247 interrupts-extended = <&tlmm 104 IRQ_TYPE_LEVEL_LOW>;
248 vdd-supply = <&vreg_misc_3p3>;
249 };
250 };
251
252 &qup2_uart17 {
253 compatible = "qcom,geni-debug-uart";
254
255 status = "okay";
256 };
257
258 &remoteproc_adsp {
259 firmware-name = "qcom/sc8280xp/qcadsp8280.mbn";
260
261 status = "okay";
262 };
263
264 &remoteproc_nsp0 {
265 firmware-name = "qcom/sc8280xp/qccdsp8280.mbn";
266
267 status = "okay";
268 };
269
270 &ufs_mem_hc {
271 reset-gpios = <&tlmm 228 GPIO_ACTIVE_LOW>;
272
273 vcc-supply = <&vreg_l7c>;
274 vcc-max-microamp = <800000>;
275 vccq-supply = <&vreg_l3d>;
276 vccq-max-microamp = <900000>;
277
278 status = "okay";
279 };
280
281 &ufs_mem_phy {
282 vdda-phy-supply = <&vreg_l6b>;
283 vdda-pll-supply = <&vreg_l3b>;
284
285 status = "okay";
286 };
287
288 &usb_0 {
289 status = "okay";
290 };
291
292 &usb_0_dwc3 {
293 /* TODO: Define USB-C connector properly */
294 dr_mode = "host";
295 };
296
297 &usb_0_hsphy {
298 vdda-pll-supply = <&vreg_l9d>;
299 vdda18-supply = <&vreg_l1c>;
300 vdda33-supply = <&vreg_l7d>;
301
302 status = "okay";
303 };
304
305 &usb_0_qmpphy {
306 vdda-phy-supply = <&vreg_l9d>;
307 vdda-pll-supply = <&vreg_l4d>;
308
309 status = "okay";
310 };
311
312 &usb_1 {
313 status = "okay";
314 };
315
316 &usb_1_dwc3 {
317 /* TODO: Define USB-C connector properly */
318 dr_mode = "host";
319 };
320
321 &usb_1_hsphy {
322 vdda-pll-supply = <&vreg_l4b>;
323 vdda18-supply = <&vreg_l1c>;
324 vdda33-supply = <&vreg_l13c>;
325
326 status = "okay";
327 };
328
329 &usb_1_qmpphy {
330 vdda-phy-supply = <&vreg_l4b>;
331 vdda-pll-supply = <&vreg_l3b>;
332
333 status = "okay";
334 };
335
336 &xo_board_clk {
337 clock-frequency = <38400000>;
338 };
339
340 /* PINCTRL - additions to nodes defined in sc8280xp.dtsi */
341
342 &pmc8280_1_gpios {
343 edp_bl_en: edp-bl-en-state {
344 pins = "gpio8";
345 function = "normal";
346 };
347
348 edp_bl_reg_en: edp-bl-reg-en-state {
349 pins = "gpio9";
350 function = "normal";
351 };
352
353 misc_3p3_reg_en: misc-3p3-reg-en-state {
354 pins = "gpio1";
355 function = "normal";
356 };
357 };
358
359 &pmc8280c_gpios {
360 edp_bl_pwm: edp-bl-pwm-state {
361 pins = "gpio8";
362 function = "func1";
363 };
364 };
365
366 &tlmm {
367 gpio-reserved-ranges = <74 6>, <83 4>, <125 2>, <128 2>, <154 7>;
368
369 kybd_default: kybd-default-state {
370 disable {
371 pins = "gpio102";
372 function = "gpio";
373 output-low;
374 };
375
376 int-n {
377 pins = "gpio104";
378 function = "gpio";
379 bias-disable;
380 };
381
382 reset {
383 pins = "gpio105";
384 function = "gpio";
385 bias-disable;
386 };
387 };
388
389 qup0_i2c4_default: qup0-i2c4-default-state {
390 pins = "gpio171", "gpio172";
391 function = "qup4";
392
393 bias-disable;
394 drive-strength = <16>;
395 };
396
397 qup2_i2c5_default: qup2-i2c5-default-state {
398 pins = "gpio81", "gpio82";
399 function = "qup21";
400
401 bias-disable;
402 drive-strength = <16>;
403 };
404
405 tpad_default: tpad-default-state {
406 int-n {
407 pins = "gpio182";
408 function = "gpio";
409 bias-disable;
410 };
411 };
412
413 ts0_default: ts0-default-state {
414 int-n {
415 pins = "gpio175";
416 function = "gpio";
417 bias-pull-up;
418 };
419
420 reset-n {
421 pins = "gpio99";
422 function = "gpio";
423 output-high;
424 drive-strength = <16>;
425 };
426 };
427 };
Cache object: a322a037937948dd84834a7990aea527
|