blob: 4f0469c0215fbb0b17153792049319aa3a1dfab7 [file] [log] [blame]
Mayank Rana3d073cf2012-12-18 10:23:27 +05301/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -07002 *
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-toshiba-720p-video.dtsi"
Sreesudhan Ramakrish Ramkumar3a179a12013-02-13 17:33:54 -080014/include/ "msm8974-camera-sensor-cdp-mtp.dtsi"
Amy Maloche24de28b2012-09-17 12:09:56 -070015/include/ "msm8974-leds.dtsi"
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070016
17/ {
18 serial@f991e000 {
19 status = "ok";
20 };
21
Chandan Uddaraju0c33e772012-12-13 22:49:58 -080022 qcom,mdss_dsi_toshiba_720p_video {
23 status = "ok";
Siddhartha Agrawal1d0557b2013-03-06 14:53:11 -080024 qcom,cont-splash-enabled;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070025 };
26
27 qcom,hdmi_tx@fd922100 {
28 status = "disabled";
29 };
30
31 i2c@f9924000 {
32 atmel_mxt_ts@4a {
33 compatible = "atmel,mxt-ts";
34 reg = <0x4a>;
35 interrupt-parent = <&msmgpio>;
36 interrupts = <61 0x2>;
37 vdd_ana-supply = <&pm8941_l18>;
38 vcc_i2c-supply = <&pm8941_lvs1>;
39 atmel,reset-gpio = <&msmgpio 60 0x00>;
40 atmel,irq-gpio = <&msmgpio 61 0x00>;
41 atmel,panel-coords = <0 0 760 1424>;
42 atmel,display-coords = <0 0 720 1280>;
Sreenivasulu Chalam Charlabf7f6212012-10-17 22:10:24 +053043 atmel,i2c-pull-up;
Amy Malochea90b0052013-02-13 11:57:10 -080044 atmel,no-force-update;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070045 atmel,cfg_1 {
46 atmel,family-id = <0x82>;
47 atmel,variant-id = <0x19>;
48 atmel,version = <0x10>;
49 atmel,build = <0xaa>;
50 atmel,config = [
51 /* Object 6, Instance = 0 */
52 00 00 00 00 00 00
53 /* Object 38, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080054 15 01 00 03 0A 0C 00 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070055 /* Object 7, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080056 20 08 32 03
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070057 /* Object 8, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080058 0F 00 0A 0A 00 00 0A 0A 00 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070059 /* Object 9, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080060 83 00 00 18 0E 00 70 46 02 01
61 00 0A 03 31 04 05 0A 0A 90 05
62 F8 02 05 F1 F1 0F 00 00 08 2D
63 12 06 00 00 00 01
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070064 /* Object 15, Instance = 0 */
65 00 00 00 00 00 00 00 00 00 00
66 00
67 /* Object 18, Instance = 0 */
68 00 00
69 /* Object 19, Instance = 0 */
70 00 00 00 00 00 00
71 /* Object 23, Instance = 0 */
72 00 00 00 00 00 00 00 00 00 00
73 00 00 00 00 00
74 /* Object 25, Instance = 0 */
75 00 00 00 00 00 00 00 00 00 00
76 00 00 00 00 00
77 /* Object 40, Instance = 0 */
78 00 00 00 00 00
79 /* Object 42, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080080 33 1E 19 10 80 00 00 00 FF 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070081 /* Object 46, Instance = 0 */
82 00 00 10 10 00 00 03 00 00 01
83 /* Object 47, Instance = 0 */
84 08 0A 28 0A 02 0A 00 8C 00 20
85 00 00 00
86 /* Object 55, Instance = 0 */
87 00 00 00 00 00 00
88 /* Object 56, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080089 00 00 00 18 05 05 05 05 05 05
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070090 05 05 05 05 05 05 05 05 05 05
91 05 05 05 05 05 05 05 05 00 00
92 00 00 00 00 00 00 00 00 00 00
93 00 00
94 /* Object 57, Instance = 0 */
95 00 00 00
96 /* Object 61, Instance = 0 */
97 00 00 00 00 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070098 /* Object 62, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080099 01 2A 00 16 00 00 00 00 0B 01
100 02 03 04 08 00 00 08 10 18 05
101 00 0A 05 05 50 14 19 34 1A 7F
102 00 00 00 00 00 00 00 00 00 30
103 05 02 00 01 00 05 00 00 00 00
104 00 00 00 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700105 ];
106 };
107 };
108 };
109
Amy Maloche932657e2012-11-26 11:31:55 -0800110 gen-vkeys {
111 compatible = "qcom,gen-vkeys";
112 label = "atmel_mxt_ts";
113 qcom,disp-maxx = <720>;
114 qcom,disp-maxy = <1280>;
115 qcom,panel-maxx = <760>;
116 qcom,panel-maxy = <1424>;
117 qcom,key-codes = <158 139 102 217>;
118 };
119
Amy Maloche527acc42012-12-07 18:40:54 -0800120 i2c@f9967000 {
121 isa1200@48 {
122 status = "okay";
123 reg = <0x48>;
124 vcc_i2c-supply = <&pm8941_s3>;
125 compatible = "imagis,isa1200";
126 label = "vibrator";
127 imagis,chip-en;
128 imagis,need-pwm-clk;
129 imagis,ext-clk-en;
130 imagis,hap-en-gpio = <&msmgpio 86 0x00>;
131 imagis,max-timeout = <15000>;
132 imagis,pwm-div = <256>;
133 imagis,mode-ctrl = <2>;
134 imagis,regulator {
135 regulator-name = "vcc_i2c";
136 regulator-min-microvolt = <1800000>;
137 regulator-max-microvolt = <1800000>;
138 regulator-max-microamp = <9360>;
139 };
140 };
141 };
142
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700143 gpio_keys {
144 compatible = "gpio-keys";
145 input-name = "gpio-keys";
146
147 camera_snapshot {
148 label = "camera_snapshot";
149 gpios = <&pm8941_gpios 3 0x1>;
150 linux,input-type = <1>;
151 linux,code = <0x2fe>;
152 gpio-key,wakeup;
153 debounce-interval = <15>;
154 };
155
156 camera_focus {
157 label = "camera_focus";
158 gpios = <&pm8941_gpios 4 0x1>;
159 linux,input-type = <1>;
160 linux,code = <0x210>;
161 gpio-key,wakeup;
162 debounce-interval = <15>;
163 };
164
165 vol_up {
166 label = "volume_up";
167 gpios = <&pm8941_gpios 5 0x1>;
168 linux,input-type = <1>;
169 linux,code = <115>;
170 gpio-key,wakeup;
171 debounce-interval = <15>;
172 };
173 };
174
175 spi@f9923000 {
176 ethernet-switch@2 {
177 compatible = "micrel,ks8851";
178 reg = <2>;
179 interrupt-parent = <&msmgpio>;
180 interrupts = <94 0>;
181 spi-max-frequency = <4800000>;
182 rst-gpio = <&pm8941_mpps 6 0>;
183 vdd-io-supply = <&spi_eth_vreg>;
184 vdd-phy-supply = <&spi_eth_vreg>;
185 };
186 };
Phani Kumar Uppalapatia2129872012-11-08 20:36:45 -0800187
188 sound {
Phani Kumar Uppalapatia2129872012-11-08 20:36:45 -0800189 qcom,model = "msm8974-taiko-mtp-snd-card";
Phani Kumar Uppalapatia2129872012-11-08 20:36:45 -0800190 };
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700191};
192
Amy Maloche24de28b2012-09-17 12:09:56 -0700193&spmi_bus {
194 qcom,pm8941@1 {
195 qcom,leds@d800 {
196 status = "okay";
197 qcom,wled_0 {
198 label = "wled";
199 linux,name = "wled:backlight";
200 linux,default-trigger = "bkl-trigger";
201 qcom,cs-out-en;
202 qcom,op-fdbck;
Siddhartha Agrawal12315e62013-02-24 11:23:02 -0800203 qcom,default-state = "on";
Amy Maloche24de28b2012-09-17 12:09:56 -0700204 qcom,max-current = <25>;
205 qcom,ctrl-delay-us = <0>;
206 qcom,boost-curr-lim = <3>;
207 qcom,cp-sel = <0>;
208 qcom,switch-freq = <2>;
209 qcom,ovp-val = <2>;
210 qcom,num-strings = <1>;
211 qcom,id = <0>;
212 };
213 };
214
215 qcom,leds@d900 {
216 status = "disabled";
217 };
218
219 qcom,leds@da00 {
220 status = "disabled";
221 };
222
223 qcom,leds@db00 {
224 status = "disabled";
225 };
226
227 qcom,leds@dc00 {
228 status = "disabled";
229 };
230
231 qcom,leds@dd00 {
232 status = "disabled";
233 };
234
235 qcom,leds@de00 {
236 status = "disabled";
237 };
238
239 qcom,leds@df00 {
240 status = "disabled";
241 };
242
243 qcom,leds@e000 {
244 status = "disabled";
245 };
246
247 qcom,leds@e100 {
248 status = "disabled";
249 };
250 };
251};
252
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700253&sdcc2 {
254 #address-cells = <0>;
255 interrupt-parent = <&sdcc2>;
256 interrupts = <0 1 2>;
257 #interrupt-cells = <1>;
258 interrupt-map-mask = <0xffffffff>;
259 interrupt-map = <0 &intc 0 125 0
260 1 &intc 0 220 0
261 2 &msmgpio 62 0x3>;
262 interrupt-names = "core_irq", "bam_irq", "status_irq";
263 cd-gpios = <&msmgpio 62 0x1>;
264};
265
Venkat Gopalakrishnan9855edd2012-09-17 15:05:13 -0700266&sdhc_1 {
267 vdd-supply = <&pm8941_l20>;
268 vdd-io-supply = <&pm8941_s3>;
269
270 qcom,vdd-voltage-level = <2950000 2950000>;
271 qcom,vdd-current-level = <800 500000>;
272
273 qcom,vdd-io-always-on;
274 qcom,vdd-io-voltage-level = <1800000 1800000>;
275 qcom,vdd-io-current-level = <250 154000>;
276
277 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
278 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
279 qcom,pad-drv-on = <0x7 0x4 0x4>; /* 16mA, 10mA, 10mA */
280 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
281
282 qcom,nonremovable;
283};
284
285&sdhc_2 {
Sahitya Tummala6b152f82013-03-12 15:02:12 +0530286 #address-cells = <0>;
287 interrupt-parent = <&sdhc_2>;
288 interrupts = <0 1 2>;
289 #interrupt-cells = <1>;
290 interrupt-map-mask = <0xffffffff>;
291 interrupt-map = <0 &intc 0 125 0
292 1 &intc 0 221 0
293 2 &msmgpio 62 0x3>;
294 interrupt-names = "hc_irq", "pwr_irq", "status_irq";
295 cd-gpios = <&msmgpio 62 0x1>;
296
Venkat Gopalakrishnan9855edd2012-09-17 15:05:13 -0700297 vdd-supply = <&pm8941_l21>;
298 vdd-io-supply = <&pm8941_l13>;
299
300 qcom,vdd-voltage-level = <2950000 2950000>;
301 qcom,vdd-current-level = <9000 800000>;
302
303 qcom,vdd-io-always-on;
304 qcom,vdd-io-lpm-sup;
305 qcom,vdd-io-voltage-level = <1800000 2950000>;
306 qcom,vdd-io-current-level = <6 22000>;
307
308 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
309 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
310 qcom,pad-drv-on = <0x7 0x4 0x4>; /* 16mA, 10mA, 10mA */
311 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
312};
313
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700314&usb_otg {
315 qcom,hsusb-otg-otg-control = <2>;
316};
317
Mayank Rana3d073cf2012-12-18 10:23:27 +0530318&uart7 {
319 status = "ok";
320};
321
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700322&usb3 {
Manu Gautam6c0ff032012-11-02 14:55:35 +0530323 qcom,otg-capability;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700324};
325
Xiaozhe Shi03a44bf2012-11-12 15:59:27 -0800326&pm8941_bms {
327 status = "ok";
328};
329
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700330&pm8941_chg {
331 status = "ok";
332
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700333 qcom,chg-chgr@1000 {
334 status = "ok";
335 };
336
337 qcom,chg-buck@1100 {
338 status = "ok";
339 };
340
341 qcom,chg-bat-if@1200 {
342 status = "ok";
343 };
344
345 qcom,chg-usb-chgpth@1300 {
346 status = "ok";
347 };
348
349 qcom,chg-dc-chgpth@1400 {
350 status = "ok";
351 };
352
353 qcom,chg-boost@1500 {
354 status = "ok";
355 };
356
357 qcom,chg-misc@1600 {
358 status = "ok";
359 };
360};
361
362&pm8941_gpios {
363 gpio@c000 { /* GPIO 1 */
364 };
365
366 gpio@c100 { /* GPIO 2 */
367 };
368
369 gpio@c200 { /* GPIO 3 */
370 qcom,mode = <0>;
371 qcom,pull = <0>;
372 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700373 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700374 };
375
376 gpio@c300 { /* GPIO 4 */
377 qcom,mode = <0>;
378 qcom,pull = <0>;
379 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700380 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700381 };
382
383 gpio@c400 { /* GPIO 5 */
384 qcom,mode = <0>;
385 qcom,pull = <0>;
386 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700387 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700388 };
389
390 gpio@c500 { /* GPIO 6 */
391 };
392
393 gpio@c600 { /* GPIO 7 */
394 };
395
396 gpio@c700 { /* GPIO 8 */
397 };
398
399 gpio@c800 { /* GPIO 9 */
400 };
401
402 gpio@c900 { /* GPIO 10 */
403 };
404
405 gpio@ca00 { /* GPIO 11 */
406 };
407
408 gpio@cb00 { /* GPIO 12 */
409 };
410
411 gpio@cc00 { /* GPIO 13 */
412 };
413
414 gpio@cd00 { /* GPIO 14 */
415 };
416
417 gpio@ce00 { /* GPIO 15 */
418 qcom,mode = <1>;
419 qcom,output-type = <0>;
420 qcom,pull = <5>;
421 qcom,vin-sel = <2>;
422 qcom,out-strength = <3>;
Michael Bohand734fb22012-10-30 14:19:22 -0700423 qcom,src-sel = <2>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700424 qcom,master-en = <1>;
425 };
426
427 gpio@cf00 { /* GPIO 16 */
Amy Maloche527acc42012-12-07 18:40:54 -0800428 qcom,mode = <1>;
429 qcom,output-type = <0>;
430 qcom,pull = <5>;
431 qcom,vin-sel = <2>;
432 qcom,out-strength = <3>;
433 qcom,src-sel = <2>;
434 qcom,master-en = <1>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700435 };
436
437 gpio@d000 { /* GPIO 17 */
438 };
439
440 gpio@d100 { /* GPIO 18 */
441 };
442
443 gpio@d200 { /* GPIO 19 */
444 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
445 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
446 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
447 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
448 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
Michael Bohand734fb22012-10-30 14:19:22 -0700449 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700450 qcom,master-en = <1>;
451 };
452
453 gpio@d300 { /* GPIO 20 */
454 };
455
456 gpio@d400 { /* GPIO 21 */
457 };
458
459 gpio@d500 { /* GPIO 22 */
460 };
461
462 gpio@d600 { /* GPIO 23 */
463 };
464
465 gpio@d700 { /* GPIO 24 */
466 };
467
468 gpio@d800 { /* GPIO 25 */
469 };
470
471 gpio@d900 { /* GPIO 26 */
472 };
473
474 gpio@da00 { /* GPIO 27 */
475 };
476
477 gpio@db00 { /* GPIO 28 */
478 };
479
480 gpio@dc00 { /* GPIO 29 */
481 qcom,pull = <0>; /* set to default pull */
482 qcom,master-en = <1>;
483 qcom,vin-sel = <2>; /* select 1.8 V source */
484 };
485
486 gpio@dd00 { /* GPIO 30 */
487 };
488
489 gpio@de00 { /* GPIO 31 */
490 };
491
492 gpio@df00 { /* GPIO 32 */
493 };
494
495 gpio@e000 { /* GPIO 33 */
496 };
497
498 gpio@e100 { /* GPIO 34 */
499 };
500
501 gpio@e200 { /* GPIO 35 */
502 };
503
504 gpio@e300 { /* GPIO 36 */
505 };
506};
507
508&pm8941_mpps {
509
510 mpp@a000 { /* MPP 1 */
511 };
512
513 mpp@a100 { /* MPP 2 */
514 };
515
516 mpp@a200 { /* MPP 3 */
517 };
518
519 mpp@a300 { /* MPP 4 */
520 };
521
522 mpp@a400 { /* MPP 5 */
523 /* SPI_ETH config */
524 qcom,mode = <1>; /* DIG_OUT */
525 qcom,output-type = <0>; /* CMOS */
526 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
Michael Bohand734fb22012-10-30 14:19:22 -0700527 qcom,src-sel = <0>; /* CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700528 qcom,master-en = <1>; /* ENABLE MPP */
529 };
530
531 mpp@a500 { /* MPP 6 */
532 /* SPI_ETH_RST config */
533 qcom,mode = <1>; /* DIG_OUT */
534 qcom,output-type = <0>; /* CMOS */
535 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
Michael Bohand734fb22012-10-30 14:19:22 -0700536 qcom,src-sel = <0>; /* CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700537 qcom,master-en = <1>; /* ENABLE MPP */
538 };
539
540 mpp@a600 { /* MPP 7 */
541 };
542
543 mpp@a700 { /* MPP 8 */
544 };
545};
546
547&pm8841_mpps {
548
549 mpp@a000 { /* MPP 1 */
550 };
551
552 mpp@a100 { /* MPP 2 */
553 };
554
555 mpp@a200 { /* MPP 3 */
556 };
557
558 mpp@a300 { /* MPP 4 */
559 };
560};
561
562&slim_msm {
563 taiko_codec {
Kiran Kandi4041f7f2013-02-07 23:17:18 -0800564 qcom,cdc-micbias1-ext-cap;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700565 qcom,cdc-micbias2-ext-cap;
Kiran Kandi4041f7f2013-02-07 23:17:18 -0800566 qcom,cdc-micbias4-ext-cap;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700567 };
568};
Siddartha Mohanadosse9f24de2012-11-02 17:13:18 -0700569
570&spi_epm {
571 epm-adc@0 {
572 compatible = "cy,epm-adc-cy8c5568lti-114";
573 reg = <0>;
574 interrupt-parent = <&msmgpio>;
575 spi-max-frequency = <960000>;
576 qcom,channels = <31>;
577 qcom,gain = <100 100 100 50 100 100 1 100 1 50
578 1 100 1 100 50 50 50 50 50 50
579 100 50 100 50 50 50 50 50 50 50
580 50>;
581 qcom,rsense = <2 2 2 200 20 2 1 2 1 30
582 1 10 1 30 50 30 500 30 100 30
583 100 500 20 200 1000 20 1000 1000 70 200
584 50>;
585 qcom,channel-type = <0x1540>;
586 };
587};