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