blob: 2f466baf2b08dede174ecdeb3b3b681e894599b9 [file] [log] [blame]
Eugene Yasmanac6f4632013-05-06 12:02:31 +03001/* Copyright (c) 2013, The Linux Foundation. All rights reserved.
2 *
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License version 2 and
5 * only version 2 as published by the Free Software Foundation.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 */
12
13/include/ "dsi-panel-sharp-qhd-video.dtsi"
14/include/ "msm8974-leds.dtsi"
15
16/ {
17 serial@f991e000 {
18 status = "ok";
19 };
20
21 qcom,mdss_dsi_sharp_qhd_video {
22 status = "ok";
23 };
24
25 qcom,hdmi_tx@fd922100 {
26 status = "ok";
27 };
28
29 gpio_keys {
30 compatible = "gpio-keys";
31 input-name = "gpio-keys";
32
33 vol_up {
34 label = "volume_up";
35 gpios = <&pm8941_gpios 5 0x1>;
36 linux,input-type = <1>;
37 linux,code = <115>;
38 gpio-key,wakeup;
39 debounce-interval = <15>;
40 };
41
42 general {
43 label = "general";
44 gpios = <&pm8941_gpios 23 0x1>;
45 linux,input-type = <1>;
46 linux,code = <102>;
47 gpio-key,wakeup;
48 debounce-interval = <15>;
49 };
50 };
51
52 bt_ar3002 {
53 compatible = "qca,ar3002";
54 qca,bt-reset-gpio = <&pm8941_gpios 34 0>;
55 };
56
57 hsic_hub {
58 compatible = "qcom,hsic-smsc-hub";
59 #address-cells = <1>;
60 #size-cells = <1>;
61 ranges;
62 smsc,reset-gpio = <&pm8941_gpios 8 0x00>;
63
64 hsic_host: hsic@f9a00000 {
65 compatible = "qcom,hsic-host";
66 reg = <0xf9a00000 0x400>;
67 #address-cells = <0>;
68 interrupt-parent = <&hsic_host>;
69 interrupts = <0 1 2>;
70 #interrupt-cells = <1>;
71 interrupt-map-mask = <0xffffffff>;
72 interrupt-map = <0 &intc 0 136 0
73 1 &intc 0 148 0
74 2 &msmgpio 144 0x8>;
75 interrupt-names = "core_irq", "async_irq", "wakeup";
76 HSIC_VDDCX-supply = <&pm8841_s2>;
77 HSIC_GDSC-supply = <&gdsc_usb_hsic>;
78 hsic,strobe-gpio = <&msmgpio 144 0x00>;
79 hsic,data-gpio = <&msmgpio 145 0x00>;
80 hsic,ignore-cal-pad-config;
81 hsic,strobe-pad-offset = <0x2050>;
82 hsic,data-pad-offset = <0x2054>;
83
84 qcom,msm-bus,name = "hsic";
85 qcom,msm-bus,num-cases = <2>;
86 qcom,msm-bus,active-only = <0>;
87 qcom,msm-bus,num-paths = <1>;
88 qcom,msm-bus,vectors-KBps =
89 <85 512 0 0>,
90 <85 512 40000 160000>;
91 };
92 };
93
94 i2c@f9923000 {
95 atmel_mxt_ts@4a {
96 compatible = "atmel,mxt-ts";
97 reg = <0x4a>;
98 interrupt-parent = <&msmgpio>;
99 interrupts = <61 0x2>;
100 vdd_ana-supply = <&pm8941_l18>;
101 vcc_i2c-supply = <&pm8941_s3>;
102 atmel,reset-gpio = <&msmgpio 60 0x00>;
103 atmel,irq-gpio = <&msmgpio 61 0x00>;
104 atmel,panel-coords = <0 0 566 1067>;
105 atmel,display-coords = <0 0 540 960>;
106 atmel,i2c-pull-up;
107 atmel,cfg_1 {
108 atmel,family-id = <0x81>;
109 atmel,variant-id = <0x19>;
110 atmel,version = <0x10>;
111 atmel,build = <0xaa>;
112 atmel,config = [
113 /* Object 38, Instance = 0 */
114 0F 02 00 17 04 0C 00 00
115 /* Object 7, Instance = 0 */
116 30 FF 19
117 /* Object 8, Instance = 0 */
118 1B 00 05 01 00 00 08 08 00 00
119 /* Object 9, Instance = 0 */
120 83 00 00 13 0B 00 10 23 01 03
121 0A 0F 01 0B 04 05 28 0A 2B 04
122 36 02 00 00 00 00 8F 28 8F 50
123 12 0F 32 32 02
124 /* Object 15, Instance = 0 */
125 00 00 00 00 00 00 00 00 00 00
126 00
127 /* Object 18, Instance = 0 */
128 00 00
129 /* Object 19, Instance = 0 */
130 00 00 00 00 00 00 00 00 00 00
131 00 00 00 00 00 00
132 /* Object 23, Instance = 0 */
133 00 00 00 00 00 00 00 00 00 00
134 00 00 00 00 00
135 /* Object 25, Instance = 0 */
136 00 00 00 00 00 00 00 00 00 00
137 00 00 00 00
138 /* Object 40, Instance = 0 */
139 00 00 00 00 00
140 /* Object 42, Instance = 0 */
141 00 00 00 00 00 00 00 00
142 /* Object 46, Instance = 0 */
143 00 03 10 30 00 00 01 00 00
144 /* Object 47, Instance = 0 */
145 00 00 00 00 00 00 00 00 00 00
146 /* Object 48, Instance = 0 */
147 00 00 00 00 00 00 00 00 00 00
148 00 00 00 00 00 00 00 00 00 00
149 00 00 00 00 00 00 00 00 00 00
150 00 00 00 00 00 00 00 00 00 00
151 00 00 00 00 00 00 00 00 00 00
152 00 00 00 00
153 ];
154 };
155 };
156 };
157
158 gen-vkeys {
159 compatible = "qcom,gen-vkeys";
160 label = "atmel_mxt_ts";
161 qcom,disp-maxx = <540>;
162 qcom,disp-maxy = <960>;
163 qcom,panel-maxx = <566>;
164 qcom,panel-maxy = <1067>;
165 qcom,key-codes = <158 139 102 217>;
166 };
167
168 sound {
169 qcom,model = "apq8074-taiko-db-snd-card";
170 qcom,hdmi-audio-rx;
171
172 qcom,audio-routing =
173 "RX_BIAS", "MCLK",
174 "LDO_H", "MCLK",
175 "AMIC1", "MIC BIAS1 External",
176 "MIC BIAS1 External", "Analog Mic4",
177 "AMIC2", "MIC BIAS2 External",
178 "MIC BIAS2 External", "Headset Mic",
179 "AMIC3", "MIC BIAS2 External",
180 "MIC BIAS2 External", "ANCRight Headset Mic",
181 "AMIC4", "MIC BIAS2 External",
182 "MIC BIAS2 External", "ANCLeft Headset Mic",
183 "AMIC5", "MIC BIAS1 External",
184 "MIC BIAS1 External", "Analog Mic6",
185 "AMIC6", "MIC BIAS1 External",
186 "MIC BIAS1 External", "Analog Mic7",
187 "DMIC1", "MIC BIAS3 External",
188 "MIC BIAS3 External", "Digital Mic1",
189 "DMIC2", "MIC BIAS3 External",
190 "MIC BIAS3 External", "Digital Mic2",
191 "DMIC3", "MIC BIAS4 External",
192 "MIC BIAS4 External", "Digital Mic3",
193 "DMIC4", "MIC BIAS3 External",
194 "MIC BIAS3 External", "Digital Mic4",
195 "DMIC5", "MIC BIAS4 External",
196 "MIC BIAS4 External", "Digital Mic5",
197 "DMIC6", "MIC BIAS4 External",
198 "MIC BIAS4 External", "Digital Mic6";
199 };
200};
201
202&mdss_fb0 {
203 qcom,memory-reservation-size = <0x1000000>; /* size 16MB */
204};
205
206&sdcc3 {
207 qcom,sup-voltages = <2000 2000>;
208 status = "ok";
209};
210
211&pm8941_l19 {
212 regulator-min-microvolt = <3300000>;
213 regulator-max-microvolt = <3300000>;
214 qcom,init-voltage = <3300000>;
215 regulator-always-on;
216};
217
218&pm8941_l10 {
219 regulator-min-microvolt = <1800000>;
220 regulator-max-microvolt = <1800000>;
221 qcom,init-voltage = <1800000>;
222 regulator-always-on;
223};
224
225&uart7 {
226 status = "ok";
227 qcom,tx-gpio = <&msmgpio 41 0x00>;
228 qcom,rx-gpio = <&msmgpio 42 0x00>;
229 qcom,cts-gpio = <&msmgpio 43 0x00>;
230 qcom,rfr-gpio = <&msmgpio 44 0x00>;
231};
232
233&usb3 {
234 qcom,charging-disabled;
235};
236
237&slim_msm {
238 taiko_codec {
239 qcom,cdc-micbias2-ext-cap;
240 qcom,cdc-micbias3-ext-cap;
241 };
242};
243
244&pm8941_gpios {
245 gpio@c000 { /* GPIO 1 */
246 qcom,mode = <0>;
247 qcom,pull = <0>;
248 qcom,vin-sel = <2>;
249 qcom,src-sel = <0>;
250 };
251
252 gpio@c100 { /* GPIO 2 */
253 qcom,mode = <0>;
254 qcom,pull = <0>;
255 qcom,vin-sel = <2>;
256 qcom,src-sel = <0>;
257 };
258
259 gpio@c200 { /* GPIO 3 */
260 };
261
262 gpio@c300 { /* GPIO 4 */
263 };
264
265 gpio@c400 { /* GPIO 5 */
266 qcom,mode = <0>;
267 qcom,pull = <0>;
268 qcom,vin-sel = <2>;
269 qcom,src-sel = <0>;
270 };
271
272 gpio@c500 { /* GPIO 6 */
273 /* TUSB3_HUB-RESET */
274 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
275 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
276 qcom,pull = <0>; /* QPNP_PIN_PULL_30 */
277 qcom,vin-sel = <0>; /* QPNP_PIN_VIN0 VPH */
278 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
279 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
280 qcom,invert = <1>; /* Keep it out of reset */
281 qcom,master-en = <1>;
282 };
283
284 gpio@c600 { /* GPIO 7 */
285 };
286
287 gpio@c700 { /* GPIO 8 */
288 /* HSIC_HUB-RESET */
289 qcom,mode = <1>; /* DIG_OUT */
290 qcom,pull = <5>; /* PULL_NO */
291 qcom,out-strength = <2>; /* STRENGTH_MED */
292 qcom,master-en = <1>;
293 };
294
295 gpio@c800 { /* GPIO 9 */
296 /* GbE_RST_N */
297 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
298 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
299 qcom,pull = <0>; /* QPNP_PIN_PULL_30 */
300 qcom,vin-sel = <0>; /* QPNP_PIN_VIN0 VPH */
301 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
302 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
303 qcom,invert = <1>; /* Keep it out of reset */
304 qcom,master-en = <1>;
305 };
306
307 gpio@c900 { /* GPIO 10 */
308 /* SATA_RST_N */
309 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
310 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
311 qcom,pull = <0>; /* QPNP_PIN_PULL_30 */
312 qcom,vin-sel = <0>; /* QPNP_PIN_VIN0 VPH */
313 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
314 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
315 qcom,invert = <1>; /* Keep it out of reset */
316 qcom,master-en = <1>;
317 };
318
319 gpio@ca00 { /* GPIO 11 */
320 };
321
322 gpio@cb00 { /* GPIO 12 */
323 };
324
325 gpio@cc00 { /* GPIO 13 */
326 };
327
328 gpio@cd00 { /* GPIO 14 */
329 };
330
331 gpio@ce00 { /* GPIO 15 */
332 qcom,mode = <1>;
333 qcom,output-type = <0>;
334 qcom,pull = <5>;
335 qcom,vin-sel = <2>;
336 qcom,out-strength = <3>;
337 qcom,src-sel = <2>;
338 qcom,master-en = <1>;
339 };
340
341 gpio@cf00 { /* GPIO 16 */
342 };
343
344 gpio@d000 { /* GPIO 17 */
345 };
346
347 gpio@d100 { /* GPIO 18 */
348 };
349
350 gpio@d200 { /* GPIO 19 */
351 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
352 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
353 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
354 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
355 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
356 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
357 qcom,master-en = <1>;
358 };
359
360 gpio@d300 { /* GPIO 20 */
361 };
362
363 gpio@d400 { /* GPIO 21 */
364 };
365
366 gpio@d500 { /* GPIO 22 */
367 };
368
369 gpio@d600 { /* GPIO 23 */
370 };
371
372 gpio@d700 { /* GPIO 24 */
373 };
374
375 gpio@d800 { /* GPIO 25 */
376 };
377
378 gpio@d900 { /* GPIO 26 */
379 };
380
381 gpio@da00 { /* GPIO 27 */
382 };
383
384 gpio@db00 { /* GPIO 28 */
385 };
386
387 gpio@dc00 { /* GPIO 29 */
388 qcom,pull = <0>; /* set to default pull */
389 qcom,master-en = <1>;
390 qcom,vin-sel = <2>; /* select 1.8 V source */
391 };
392
393 gpio@dd00 { /* GPIO 30 */
394 };
395
396 gpio@de00 { /* GPIO 31 */
397 };
398
399 gpio@df00 { /* GPIO 32 */
400 };
401
402 gpio@e000 { /* GPIO 33 */
403 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
404 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
405 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
406 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
407 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
408 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
409 qcom,invert = <1>;
410 qcom,master-en = <1>;
411 };
412
413 gpio@e100 { /* GPIO 34 */
414 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
415 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
416 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
417 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
418 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
419 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
420 qcom,invert = <0>;
421 qcom,master-en = <1>;
422 };
423
424 gpio@e200 { /* GPIO 35 */
425 };
426
427 gpio@e300 { /* GPIO 36 */
428 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
429 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
430 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
431 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
432 qcom,out-strength = <3>; /* QPNP_PIN_OUT_STRENGTH_HIGH */
433 qcom,src-sel = <3>; /* QPNP_PIN_SEL_FUNC_2 */
434 qcom,master-en = <1>;
435 };
436};
437
438&pm8941_mpps {
439
440 mpp@a000 { /* MPP 1 */
441 };
442
443 mpp@a100 { /* MPP 2 */
444 };
445
446 mpp@a200 { /* MPP 3 */
447 };
448
449 mpp@a300 { /* MPP 4 */
450 };
451
452 mpp@a400 { /* MPP 5 */
453 };
454
455 mpp@a500 { /* MPP 6 */
456 };
457
458 mpp@a600 { /* MPP 7 */
459 };
460
461 mpp@a700 { /* MPP 8 */
462 };
463};
464
465&pm8841_mpps {
466
467 mpp@a000 { /* MPP 1 */
468 };
469
470 mpp@a100 { /* MPP 2 */
471 };
472
473 mpp@a200 { /* MPP 3*/
474 };
475
476 mpp@a300 { /* MPP 4*/
477 };
478};
479
480&spi_epm {
481 epm-adc@0 {
482 compatible = "cy,epm-adc-cy8c5568lti-114";
483 reg = <0>;
484 interrupt-parent = <&msmgpio>;
485 spi-max-frequency = <960000>;
486 qcom,channels = <31>;
487 qcom,gain = <50 50 50 50 50 100 50 50 50 50
488 50 50 50 50 100 50 50 50 50 100
489 50 50 50 100 50 50 50 1 1 1
490 1>;
491 qcom,rsense = <40 10 10 25 10 1000 75 25 10 25
492 33 500 200 10 500 100 33 200 25 100
493 75 500 50 200 5 5 3 1 1 1
494 1>;
495 qcom,channel-type = <0xf0000000>;
496 };
497};
498
499&spmi_bus {
500 qcom,pm8941@1 {
501 qcom,leds@d000 {
502 qcom,rgb_2 {
503 status = "ok";
504 qcom,default-state = "on";
505 qcom,turn-off-delay-ms = <1000>;
506 };
507 };
508
509 qcom,leds@d800 {
510 status = "okay";
511 qcom,wled_0 {
512 label = "wled";
513 linux,name = "wled:backlight";
514 linux,default-trigger = "bkl-trigger";
515 qcom,cs-out-en;
516 qcom,op-fdbck = <1>;
517 qcom,default-state = "on";
518 qcom,max-current = <25>;
519 qcom,ctrl-delay-us = <0>;
520 qcom,boost-curr-lim = <3>;
521 qcom,cp-sel = <0>;
522 qcom,switch-freq = <2>;
523 qcom,ovp-val = <2>;
524 qcom,num-strings = <1>;
525 qcom,id = <0>;
526 };
527 };
528 };
529};
530
531&pm8941_chg {
532 status = "ok";
533
Eugene Yasmanf1d4f692013-05-22 14:22:29 +0300534 qcom,charging-disabled;
Eugene Yasmanac6f4632013-05-06 12:02:31 +0300535
Eugene Yasmanf1d4f692013-05-22 14:22:29 +0300536 qcom,chgr@1000 {
Eugene Yasmanac6f4632013-05-06 12:02:31 +0300537 status = "ok";
538 };
539
Eugene Yasmanf1d4f692013-05-22 14:22:29 +0300540 qcom,buck@1100 {
Eugene Yasmanac6f4632013-05-06 12:02:31 +0300541 status = "ok";
542 };
543
Eugene Yasmanf1d4f692013-05-22 14:22:29 +0300544 qcom,usb-chgpth@1300 {
Eugene Yasmanac6f4632013-05-06 12:02:31 +0300545 status = "ok";
546 };
547
Eugene Yasmanf1d4f692013-05-22 14:22:29 +0300548 qcom,dc-chgpth@1400 {
Eugene Yasmanac6f4632013-05-06 12:02:31 +0300549 status = "ok";
550 };
551
Eugene Yasmanf1d4f692013-05-22 14:22:29 +0300552 qcom,boost@1500 {
Eugene Yasmanac6f4632013-05-06 12:02:31 +0300553 status = "ok";
554 };
555
556 qcom,chg-misc@1600 {
557 status = "ok";
558 };
559};
560
561&sdhc_1 {
562 vdd-supply = <&pm8941_l20>;
563 vdd-io-supply = <&pm8941_s3>;
564
565 qcom,vdd-always-on;
566 qcom,vdd-lpm-sup;
567 qcom,vdd-voltage-level = <2950000 2950000>;
568 qcom,vdd-current-level = <800 500000>;
569
570 qcom,vdd-io-always-on;
571 qcom,vdd-io-voltage-level = <1800000 1800000>;
572 qcom,vdd-io-current-level = <250 154000>;
573
574 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
575 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
576 qcom,pad-drv-on = <0x4 0x4 0x4>; /* 10mA, 10mA, 10mA */
577 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
578
579 qcom,nonremovable;
580 status = "ok";
581};
582
583&sdhc_2 {
584 #address-cells = <0>;
585 interrupt-parent = <&sdhc_2>;
586 interrupts = <0 1 2>;
587 #interrupt-cells = <1>;
588 interrupt-map-mask = <0xffffffff>;
589 interrupt-map = <0 &intc 0 125 0
590 1 &intc 0 221 0
591 2 &msmgpio 62 0x3>;
592 interrupt-names = "hc_irq", "pwr_irq", "status_irq";
593 cd-gpios = <&msmgpio 62 0x1>;
594
595 vdd-supply = <&pm8941_l21>;
596 vdd-io-supply = <&pm8941_l13>;
597
598 qcom,vdd-voltage-level = <2950000 2950000>;
599 qcom,vdd-current-level = <9000 800000>;
600
601 qcom,vdd-io-voltage-level = <1800000 2950000>;
602 qcom,vdd-io-current-level = <6 22000>;
603
604 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
605 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
606 qcom,pad-drv-on = <0x4 0x4 0x4>; /* 10mA, 10mA, 10mA */
607 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
608 status = "ok";
609};