Loading...
Note: File does not exist in v6.9.4.
1// SPDX-License-Identifier: GPL-2.0
2#include "qcom-msm8974pro.dtsi"
3#include "qcom-pm8841.dtsi"
4#include "qcom-pm8941.dtsi"
5#include <dt-bindings/input/input.h>
6#include <dt-bindings/leds/common.h>
7#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
8
9/ {
10 model = "Sony Xperia Z2 Tablet";
11 compatible = "sony,xperia-castor", "qcom,msm8974pro", "qcom,msm8974";
12 chassis-type = "tablet";
13
14 aliases {
15 serial0 = &blsp1_uart2;
16 serial1 = &blsp2_uart1;
17 };
18
19 chosen {
20 stdout-path = "serial0:115200n8";
21 };
22
23 gpio-keys {
24 compatible = "gpio-keys";
25
26 pinctrl-names = "default";
27 pinctrl-0 = <&gpio_keys_pin_a>;
28
29 key-volume-down {
30 label = "volume_down";
31 gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
32 linux,input-type = <1>;
33 linux,code = <KEY_VOLUMEDOWN>;
34 };
35
36 key-camera-snapshot {
37 label = "camera_snapshot";
38 gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>;
39 linux,input-type = <1>;
40 linux,code = <KEY_CAMERA>;
41 };
42
43 key-camera-focus {
44 label = "camera_focus";
45 gpios = <&pm8941_gpios 4 GPIO_ACTIVE_LOW>;
46 linux,input-type = <1>;
47 linux,code = <KEY_CAMERA_FOCUS>;
48 };
49
50 key-volume-up {
51 label = "volume_up";
52 gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
53 linux,input-type = <1>;
54 linux,code = <KEY_VOLUMEUP>;
55 };
56 };
57
58 vreg_bl_vddio: lcd-backlight-vddio {
59 compatible = "regulator-fixed";
60 regulator-name = "vreg_bl_vddio";
61 regulator-min-microvolt = <3150000>;
62 regulator-max-microvolt = <3150000>;
63
64 gpio = <&tlmm 69 0>;
65 enable-active-high;
66
67 vin-supply = <&pm8941_s3>;
68 startup-delay-us = <70000>;
69
70 pinctrl-names = "default";
71 pinctrl-0 = <&lcd_backlight_en_pin_a>;
72 };
73
74 vreg_vsp: lcd-dcdc-regulator {
75 compatible = "regulator-fixed";
76 regulator-name = "vreg_vsp";
77 regulator-min-microvolt = <5600000>;
78 regulator-max-microvolt = <5600000>;
79
80 gpio = <&pm8941_gpios 20 GPIO_ACTIVE_HIGH>;
81 enable-active-high;
82
83 pinctrl-names = "default";
84 pinctrl-0 = <&lcd_dcdc_en_pin_a>;
85 };
86
87 vreg_wlan: wlan-regulator {
88 compatible = "regulator-fixed";
89
90 regulator-name = "wl-reg";
91 regulator-min-microvolt = <3300000>;
92 regulator-max-microvolt = <3300000>;
93
94 gpio = <&pm8941_gpios 18 GPIO_ACTIVE_HIGH>;
95 enable-active-high;
96
97 pinctrl-names = "default";
98 pinctrl-0 = <&wlan_regulator_pin>;
99 };
100};
101
102&blsp1_uart2 {
103 status = "okay";
104};
105
106&blsp2_i2c2 {
107 status = "okay";
108 clock-frequency = <355000>;
109
110 synaptics@2c {
111 compatible = "syna,rmi4-i2c";
112 reg = <0x2c>;
113
114 interrupt-parent = <&tlmm>;
115 interrupts = <86 IRQ_TYPE_EDGE_FALLING>;
116
117 #address-cells = <1>;
118 #size-cells = <0>;
119
120 vdd-supply = <&pm8941_l22>;
121 vio-supply = <&pm8941_lvs3>;
122
123 pinctrl-names = "default";
124 pinctrl-0 = <&ts_int_pin>;
125
126 syna,startup-delay-ms = <10>;
127
128 rmi-f01@1 {
129 reg = <0x1>;
130 syna,nosleep = <1>;
131 };
132
133 rmi-f11@11 {
134 reg = <0x11>;
135 syna,f11-flip-x = <1>;
136 syna,sensor-type = <1>;
137 };
138 };
139};
140
141&blsp2_i2c5 {
142 status = "okay";
143 clock-frequency = <355000>;
144
145 lp8566_wled: backlight@2c {
146 compatible = "ti,lp8556";
147 reg = <0x2c>;
148 power-supply = <&vreg_bl_vddio>;
149
150 bl-name = "backlight";
151 dev-ctrl = /bits/ 8 <0x05>;
152 init-brt = /bits/ 8 <0x3f>;
153 rom_a0h {
154 rom-addr = /bits/ 8 <0xa0>;
155 rom-val = /bits/ 8 <0xff>;
156 };
157 rom_a1h {
158 rom-addr = /bits/ 8 <0xa1>;
159 rom-val = /bits/ 8 <0x3f>;
160 };
161 rom_a2h {
162 rom-addr = /bits/ 8 <0xa2>;
163 rom-val = /bits/ 8 <0x20>;
164 };
165 rom_a3h {
166 rom-addr = /bits/ 8 <0xa3>;
167 rom-val = /bits/ 8 <0x5e>;
168 };
169 rom_a4h {
170 rom-addr = /bits/ 8 <0xa4>;
171 rom-val = /bits/ 8 <0x02>;
172 };
173 rom_a5h {
174 rom-addr = /bits/ 8 <0xa5>;
175 rom-val = /bits/ 8 <0x04>;
176 };
177 rom_a6h {
178 rom-addr = /bits/ 8 <0xa6>;
179 rom-val = /bits/ 8 <0x80>;
180 };
181 rom_a7h {
182 rom-addr = /bits/ 8 <0xa7>;
183 rom-val = /bits/ 8 <0xf7>;
184 };
185 rom_a9h {
186 rom-addr = /bits/ 8 <0xa9>;
187 rom-val = /bits/ 8 <0x80>;
188 };
189 rom_aah {
190 rom-addr = /bits/ 8 <0xaa>;
191 rom-val = /bits/ 8 <0x0f>;
192 };
193 rom_aeh {
194 rom-addr = /bits/ 8 <0xae>;
195 rom-val = /bits/ 8 <0x0f>;
196 };
197 };
198};
199
200&blsp2_uart1 {
201 status = "okay";
202
203 bluetooth {
204 compatible = "brcm,bcm43438-bt";
205 max-speed = <3000000>;
206
207 pinctrl-names = "default";
208 pinctrl-0 = <&bt_host_wake_pin>, <&bt_dev_wake_pin>, <&bt_reg_on_pin>;
209
210 host-wakeup-gpios = <&tlmm 95 GPIO_ACTIVE_HIGH>;
211 device-wakeup-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>;
212 shutdown-gpios = <&pm8941_gpios 16 GPIO_ACTIVE_HIGH>;
213 };
214};
215
216&pm8941_coincell {
217 status = "okay";
218
219 qcom,rset-ohms = <2100>;
220 qcom,vset-millivolts = <3000>;
221};
222
223&pm8941_gpios {
224 gpio_keys_pin_a: gpio-keys-active-state {
225 pins = "gpio2", "gpio5";
226 function = "normal";
227
228 bias-pull-up;
229 power-source = <PM8941_GPIO_S3>;
230 };
231
232 bt_reg_on_pin: bt-reg-on-state {
233 pins = "gpio16";
234 function = "normal";
235
236 output-low;
237 power-source = <PM8941_GPIO_S3>;
238 };
239
240 wlan_sleep_clk_pin: wl-sleep-clk-state {
241 pins = "gpio17";
242 function = "func2";
243
244 output-high;
245 power-source = <PM8941_GPIO_S3>;
246 };
247
248 wlan_regulator_pin: wl-reg-active-state {
249 pins = "gpio18";
250 function = "normal";
251
252 bias-disable;
253 power-source = <PM8941_GPIO_S3>;
254 };
255
256 lcd_dcdc_en_pin_a: lcd-dcdc-en-active-state {
257 pins = "gpio20";
258 function = "normal";
259
260 bias-disable;
261 power-source = <PM8941_GPIO_S3>;
262 input-disable;
263 output-low;
264 };
265
266};
267
268&pm8941_lpg {
269 status = "okay";
270
271 qcom,power-source = <1>;
272
273 multi-led {
274 color = <LED_COLOR_ID_RGB>;
275 function = LED_FUNCTION_STATUS;
276
277 #address-cells = <1>;
278 #size-cells = <0>;
279
280 led@5 {
281 reg = <5>;
282 color = <LED_COLOR_ID_BLUE>;
283 };
284
285 led@6 {
286 reg = <6>;
287 color = <LED_COLOR_ID_GREEN>;
288 };
289
290 led@7 {
291 reg = <7>;
292 color = <LED_COLOR_ID_RED>;
293 };
294 };
295};
296
297&rpm_requests {
298 regulators-0 {
299 compatible = "qcom,rpm-pm8941-regulators";
300
301 vdd_l1_l3-supply = <&pm8941_s1>;
302 vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
303 vdd_l4_l11-supply = <&pm8941_s1>;
304 vdd_l5_l7-supply = <&pm8941_s2>;
305 vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
306 vdd_l9_l10_l17_l22-supply = <&vreg_boost>;
307 vdd_l13_l20_l23_l24-supply = <&vreg_boost>;
308 vdd_l21-supply = <&vreg_boost>;
309
310 pm8941_s1: s1 {
311 regulator-min-microvolt = <1300000>;
312 regulator-max-microvolt = <1300000>;
313 regulator-always-on;
314 regulator-boot-on;
315 };
316
317 pm8941_s2: s2 {
318 regulator-min-microvolt = <2150000>;
319 regulator-max-microvolt = <2150000>;
320 regulator-boot-on;
321 };
322
323 pm8941_s3: s3 {
324 regulator-min-microvolt = <1800000>;
325 regulator-max-microvolt = <1800000>;
326 regulator-system-load = <154000>;
327 regulator-always-on;
328 regulator-boot-on;
329 };
330
331 pm8941_s4: s4 {
332 regulator-min-microvolt = <5000000>;
333 regulator-max-microvolt = <5000000>;
334 };
335
336 pm8941_l1: l1 {
337 regulator-min-microvolt = <1225000>;
338 regulator-max-microvolt = <1225000>;
339 regulator-always-on;
340 regulator-boot-on;
341 };
342
343 pm8941_l2: l2 {
344 regulator-min-microvolt = <1200000>;
345 regulator-max-microvolt = <1200000>;
346 };
347
348 pm8941_l3: l3 {
349 regulator-min-microvolt = <1200000>;
350 regulator-max-microvolt = <1200000>;
351 };
352
353 pm8941_l4: l4 {
354 regulator-min-microvolt = <1225000>;
355 regulator-max-microvolt = <1225000>;
356 };
357
358 pm8941_l5: l5 {
359 regulator-min-microvolt = <1800000>;
360 regulator-max-microvolt = <1800000>;
361 };
362
363 pm8941_l6: l6 {
364 regulator-min-microvolt = <1800000>;
365 regulator-max-microvolt = <1800000>;
366 regulator-boot-on;
367 };
368
369 pm8941_l7: l7 {
370 regulator-min-microvolt = <1800000>;
371 regulator-max-microvolt = <1800000>;
372 regulator-boot-on;
373 };
374
375 pm8941_l8: l8 {
376 regulator-min-microvolt = <1800000>;
377 regulator-max-microvolt = <1800000>;
378 };
379
380 pm8941_l9: l9 {
381 regulator-min-microvolt = <1800000>;
382 regulator-max-microvolt = <2950000>;
383 };
384
385 pm8941_l11: l11 {
386 regulator-min-microvolt = <1300000>;
387 regulator-max-microvolt = <1350000>;
388 };
389
390 pm8941_l12: l12 {
391 regulator-min-microvolt = <1800000>;
392 regulator-max-microvolt = <1800000>;
393 regulator-always-on;
394 regulator-boot-on;
395 };
396
397 pm8941_l13: l13 {
398 regulator-min-microvolt = <1800000>;
399 regulator-max-microvolt = <2950000>;
400 regulator-boot-on;
401 };
402
403 pm8941_l14: l14 {
404 regulator-min-microvolt = <1800000>;
405 regulator-max-microvolt = <1800000>;
406 };
407
408 pm8941_l15: l15 {
409 regulator-min-microvolt = <2050000>;
410 regulator-max-microvolt = <2050000>;
411 };
412
413 pm8941_l16: l16 {
414 regulator-min-microvolt = <2700000>;
415 regulator-max-microvolt = <2700000>;
416 };
417
418 pm8941_l17: l17 {
419 regulator-min-microvolt = <2700000>;
420 regulator-max-microvolt = <2700000>;
421 };
422
423 pm8941_l18: l18 {
424 regulator-min-microvolt = <2850000>;
425 regulator-max-microvolt = <2850000>;
426 };
427
428 pm8941_l19: l19 {
429 regulator-min-microvolt = <2850000>;
430 regulator-max-microvolt = <2850000>;
431 };
432
433 pm8941_l20: l20 {
434 regulator-min-microvolt = <2950000>;
435 regulator-max-microvolt = <2950000>;
436 regulator-system-load = <500000>;
437 regulator-allow-set-load;
438 regulator-boot-on;
439 };
440
441 pm8941_l21: l21 {
442 regulator-min-microvolt = <2950000>;
443 regulator-max-microvolt = <2950000>;
444 regulator-boot-on;
445 };
446
447 pm8941_l22: l22 {
448 regulator-min-microvolt = <3000000>;
449 regulator-max-microvolt = <3000000>;
450 };
451
452 pm8941_l23: l23 {
453 regulator-min-microvolt = <2800000>;
454 regulator-max-microvolt = <2800000>;
455 };
456
457 pm8941_l24: l24 {
458 regulator-min-microvolt = <3075000>;
459 regulator-max-microvolt = <3075000>;
460 regulator-boot-on;
461 };
462
463 pm8941_lvs3: lvs3 {};
464 };
465};
466
467&sdhc_1 {
468 status = "okay";
469
470 vmmc-supply = <&pm8941_l20>;
471 vqmmc-supply = <&pm8941_s3>;
472
473 pinctrl-names = "default", "sleep";
474 pinctrl-0 = <&sdc1_on>;
475 pinctrl-1 = <&sdc1_off>;
476};
477
478&sdhc_2 {
479 status = "okay";
480
481 vmmc-supply = <&pm8941_l21>;
482 vqmmc-supply = <&pm8941_l13>;
483
484 cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>;
485
486 pinctrl-names = "default", "sleep";
487 pinctrl-0 = <&sdc2_on>;
488 pinctrl-1 = <&sdc2_off>;
489};
490
491&sdhc_3 {
492 status = "okay";
493
494 max-frequency = <100000000>;
495 vmmc-supply = <&vreg_wlan>;
496 non-removable;
497
498 pinctrl-names = "default";
499 pinctrl-0 = <&sdc3_on>;
500
501 #address-cells = <1>;
502 #size-cells = <0>;
503
504 bcrmf@1 {
505 compatible = "brcm,bcm4339-fmac", "brcm,bcm4329-fmac";
506 reg = <1>;
507
508 brcm,drive-strength = <10>;
509
510 pinctrl-names = "default";
511 pinctrl-0 = <&wlan_sleep_clk_pin>;
512 };
513};
514
515&smbb {
516 qcom,fast-charge-safe-current = <1500000>;
517 qcom,fast-charge-current-limit = <1500000>;
518 qcom,dc-current-limit = <1800000>;
519 qcom,fast-charge-safe-voltage = <4400000>;
520 qcom,fast-charge-high-threshold-voltage = <4350000>;
521 qcom,fast-charge-low-threshold-voltage = <3400000>;
522 qcom,auto-recharge-threshold-voltage = <4200000>;
523 qcom,minimum-input-voltage = <4300000>;
524};
525
526&tlmm {
527 lcd_backlight_en_pin_a: lcd-backlight-vddio-state {
528 pins = "gpio69";
529 function = "gpio";
530 drive-strength = <10>;
531 output-low;
532 bias-disable;
533 };
534
535 sdc1_on: sdc1-on-state {
536 clk-pins {
537 pins = "sdc1_clk";
538 drive-strength = <16>;
539 bias-disable;
540 };
541
542 cmd-data-pins {
543 pins = "sdc1_cmd", "sdc1_data";
544 drive-strength = <10>;
545 bias-pull-up;
546 };
547 };
548
549 sdc2_on: sdc2-on-state {
550 clk-pins {
551 pins = "sdc2_clk";
552 drive-strength = <6>;
553 bias-disable;
554 };
555
556 cmd-data-pins {
557 pins = "sdc2_cmd", "sdc2_data";
558 drive-strength = <6>;
559 bias-pull-up;
560 };
561
562 cd-pins {
563 pins = "gpio62";
564 function = "gpio";
565 drive-strength = <2>;
566 bias-disable;
567 };
568 };
569
570 sdc3_on: sdc3-on-state {
571 clk-pins {
572 pins = "gpio40";
573 function = "sdc3";
574 drive-strength = <10>;
575 bias-disable;
576 };
577
578 cmd-pins {
579 pins = "gpio39";
580 function = "sdc3";
581 drive-strength = <10>;
582 bias-pull-up;
583 };
584
585 data-pins {
586 pins = "gpio35", "gpio36", "gpio37", "gpio38";
587 function = "sdc3";
588 drive-strength = <10>;
589 bias-pull-up;
590 };
591 };
592
593 ts_int_pin: ts-int-pin-state {
594 pins = "gpio86";
595 function = "gpio";
596 drive-strength = <2>;
597 bias-disable;
598 input-enable;
599 };
600
601 bt_host_wake_pin: bt-host-wake-state {
602 pins = "gpio95";
603 function = "gpio";
604 drive-strength = <2>;
605 bias-disable;
606 output-low;
607 };
608
609 bt_dev_wake_pin: bt-dev-wake-state {
610 pins = "gpio96";
611 function = "gpio";
612 drive-strength = <2>;
613 bias-disable;
614 };
615};
616
617&usb {
618 status = "okay";
619
620 phys = <&usb_hs1_phy>;
621 phy-select = <&tcsr 0xb000 0>;
622 extcon = <&smbb>, <&usb_id>;
623 vbus-supply = <&chg_otg>;
624
625 hnp-disable;
626 srp-disable;
627 adp-disable;
628};
629
630&usb_hs1_phy {
631 status = "okay";
632
633 v1p8-supply = <&pm8941_l6>;
634 v3p3-supply = <&pm8941_l24>;
635
636 extcon = <&smbb>;
637 qcom,init-seq = /bits/ 8 <0x1 0x64>;
638};