blob: 11c835f988c946407a12c49ddd5229446e01a497 [file] [log] [blame]
David Keitelec74a332013-01-18 18:29:10 -08001/* 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 Ramkumar4c29a452013-02-11 17:20:39 -080014/include/ "msm8974-camera-sensor-fluid.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";
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070024 };
25
26 qcom,hdmi_tx@fd922100 {
27 status = "ok";
28 };
29
30 i2c@f9924000 {
31 atmel_mxt_ts@4a {
32 compatible = "atmel,mxt-ts";
33 reg = <0x4a>;
34 interrupt-parent = <&msmgpio>;
35 interrupts = <61 0x2>;
36 vdd_ana-supply = <&pm8941_l18>;
37 vcc_i2c-supply = <&pm8941_lvs1>;
38 atmel,reset-gpio = <&msmgpio 60 0x00>;
39 atmel,irq-gpio = <&msmgpio 61 0x00>;
40 atmel,panel-coords = <0 0 760 1424>;
41 atmel,display-coords = <0 0 720 1280>;
Sreenivasulu Chalam Charlabf7f6212012-10-17 22:10:24 +053042 atmel,i2c-pull-up;
Amy Malochea90b0052013-02-13 11:57:10 -080043 atmel,no-force-update;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070044 atmel,cfg_1 {
45 atmel,family-id = <0x82>;
46 atmel,variant-id = <0x19>;
47 atmel,version = <0x10>;
48 atmel,build = <0xaa>;
49 atmel,config = [
50 /* Object 6, Instance = 0 */
51 00 00 00 00 00 00
52 /* Object 38, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080053 15 01 00 03 0A 0C 00 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070054 /* Object 7, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080055 20 08 32 03
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070056 /* Object 8, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080057 0F 00 0A 0A 00 00 0A 0A 00 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070058 /* Object 9, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080059 83 00 00 18 0E 00 70 46 02 01
60 00 0A 03 31 04 05 0A 0A 90 05
61 F8 02 05 F1 F1 0F 00 00 08 2D
62 12 06 00 00 00 01
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070063 /* Object 15, Instance = 0 */
64 00 00 00 00 00 00 00 00 00 00
65 00
66 /* Object 18, Instance = 0 */
67 00 00
68 /* Object 19, Instance = 0 */
69 00 00 00 00 00 00
70 /* Object 23, Instance = 0 */
71 00 00 00 00 00 00 00 00 00 00
72 00 00 00 00 00
73 /* Object 25, Instance = 0 */
74 00 00 00 00 00 00 00 00 00 00
75 00 00 00 00 00
76 /* Object 40, Instance = 0 */
77 00 00 00 00 00
78 /* Object 42, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080079 33 1E 19 10 80 00 00 00 FF 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070080 /* Object 46, Instance = 0 */
81 00 00 10 10 00 00 03 00 00 01
82 /* Object 47, Instance = 0 */
83 08 0A 28 0A 02 0A 00 8C 00 20
84 00 00 00
85 /* Object 55, Instance = 0 */
86 00 00 00 00 00 00
87 /* Object 56, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080088 00 00 00 18 05 05 05 05 05 05
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070089 05 05 05 05 05 05 05 05 05 05
90 05 05 05 05 05 05 05 05 00 00
91 00 00 00 00 00 00 00 00 00 00
92 00 00
93 /* Object 57, Instance = 0 */
94 00 00 00
95 /* Object 61, Instance = 0 */
96 00 00 00 00 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070097 /* Object 62, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080098 01 2A 00 16 00 00 00 00 0B 01
99 02 03 04 08 00 00 08 10 18 05
100 00 0A 05 05 50 14 19 34 1A 7F
101 00 00 00 00 00 00 00 00 00 30
102 05 02 00 01 00 05 00 00 00 00
103 00 00 00 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700104 ];
105 };
106 };
107 };
108
Manoj Rao167072b2012-10-29 12:48:29 -0700109 i2c@f9967000 {
110 sii8334@72 {
111 compatible = "qcom,mhl-sii8334";
112 reg = <0x72>;
113 interrupt-parent = <&msmgpio>;
114 interrupts = <82 0x8>;
115 mhl-intr-gpio = <&msmgpio 82 0>;
116 mhl-pwr-gpio = <&msmgpio 12 0>;
117 mhl-rst-gpio = <&pm8941_mpps 8 0>;
118 avcc_18-supply = <&pm8941_l24>;
119 avcc_12-supply = <&pm8941_l2>;
120 smps3a-supply = <&pm8941_s3>;
121 vdda-supply = <&pm8941_l12>;
Manoj Raobabed622013-02-01 20:35:48 -0800122 qcom,hdmi-tx-map = <&mdss_hdmi_tx>;
Manoj Rao167072b2012-10-29 12:48:29 -0700123 };
Amy Maloche527acc42012-12-07 18:40:54 -0800124
125 isa1200@48 {
126 status = "okay";
127 reg = <0x48>;
128 vcc_i2c-supply = <&pm8941_s3>;
129 compatible = "imagis,isa1200";
130 label = "vibrator";
131 imagis,chip-en;
132 imagis,need-pwm-clk;
133 imagis,ext-clk-en;
134 imagis,hap-en-gpio = <&msmgpio 86 0x00>;
135 imagis,max-timeout = <15000>;
136 imagis,pwm-div = <256>;
137 imagis,mode-ctrl = <2>;
138 imagis,regulator {
139 regulator-name = "vcc_i2c";
140 regulator-min-microvolt = <1800000>;
141 regulator-max-microvolt = <1800000>;
142 regulator-max-microamp = <9360>;
143 };
144 };
Manoj Rao167072b2012-10-29 12:48:29 -0700145 };
146
Amy Maloche932657e2012-11-26 11:31:55 -0800147 gen-vkeys {
148 compatible = "qcom,gen-vkeys";
149 label = "atmel_mxt_ts";
150 qcom,disp-maxx = <720>;
151 qcom,disp-maxy = <1280>;
152 qcom,panel-maxx = <760>;
153 qcom,panel-maxy = <1424>;
154 qcom,key-codes = <158 139 102 217>;
155 };
156
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700157 gpio_keys {
158 compatible = "gpio-keys";
159 input-name = "gpio-keys";
160
161 camera_snapshot {
162 label = "camera_snapshot";
163 gpios = <&pm8941_gpios 3 0x1>;
164 linux,input-type = <1>;
165 linux,code = <0x2fe>;
166 gpio-key,wakeup;
167 debounce-interval = <15>;
168 };
169
170 camera_focus {
171 label = "camera_focus";
172 gpios = <&pm8941_gpios 4 0x1>;
173 linux,input-type = <1>;
174 linux,code = <0x210>;
175 gpio-key,wakeup;
176 debounce-interval = <15>;
177 };
178
179 vol_up {
180 label = "volume_up";
181 gpios = <&pm8941_gpios 5 0x1>;
182 linux,input-type = <1>;
183 linux,code = <115>;
184 gpio-key,wakeup;
185 debounce-interval = <15>;
186 };
187 };
188
189 spi@f9923000 {
190 ethernet-switch@2 {
191 compatible = "micrel,ks8851";
192 reg = <2>;
193 interrupt-parent = <&msmgpio>;
194 interrupts = <94 0>;
195 spi-max-frequency = <4800000>;
196 rst-gpio = <&pm8941_mpps 6 0>;
197 vdd-io-supply = <&spi_eth_vreg>;
198 vdd-phy-supply = <&spi_eth_vreg>;
199 };
200 };
Phani Kumar Uppalapatia2129872012-11-08 20:36:45 -0800201
202 sound {
Phani Kumar Uppalapatia2129872012-11-08 20:36:45 -0800203 qcom,model = "msm8974-taiko-fluid-snd-card";
Kiran Kandi52650322012-12-11 15:49:39 -0800204 qcom,hdmi-audio-rx;
Phani Kumar Uppalapatia2129872012-11-08 20:36:45 -0800205 };
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700206};
207
Patrick Lai51f50be2013-01-14 23:04:46 -0800208&slim_msm {
209 taiko_codec {
Kiran Kandi4041f7f2013-02-07 23:17:18 -0800210 qcom,cdc-micbias1-ext-cap;
Patrick Lai51f50be2013-01-14 23:04:46 -0800211 qcom,cdc-micbias2-ext-cap;
Kiran Kandi4041f7f2013-02-07 23:17:18 -0800212 qcom,cdc-micbias3-ext-cap;
213 qcom,cdc-micbias4-ext-cap;
Patrick Lai51f50be2013-01-14 23:04:46 -0800214 };
215};
216
Amy Maloche24de28b2012-09-17 12:09:56 -0700217&spmi_bus {
218 qcom,pm8941@1 {
219 qcom,leds@d800 {
220 status = "okay";
221 qcom,wled_0 {
222 label = "wled";
223 linux,name = "wled:backlight";
224 linux,default-trigger = "bkl-trigger";
225 qcom,cs-out-en;
226 qcom,op-fdbck;
227 qcom,default-state = "off";
228 qcom,max-current = <25>;
229 qcom,ctrl-delay-us = <0>;
230 qcom,boost-curr-lim = <3>;
231 qcom,cp-sel = <0>;
232 qcom,switch-freq = <2>;
233 qcom,ovp-val = <2>;
234 qcom,num-strings = <1>;
235 qcom,id = <0>;
236 };
237 };
238
239 qcom,leds@d900 {
240 status = "disabled";
241 };
242
243 qcom,leds@da00 {
244 status = "disabled";
245 };
246
247 qcom,leds@db00 {
248 status = "disabled";
249 };
250
251 qcom,leds@dc00 {
252 status = "disabled";
253 };
254
255 qcom,leds@dd00 {
256 status = "disabled";
257 };
258
259 qcom,leds@de00 {
260 status = "disabled";
261 };
262
263 qcom,leds@df00 {
264 status = "disabled";
265 };
266
267 qcom,leds@e000 {
268 status = "disabled";
269 };
270
271 qcom,leds@e100 {
272 status = "disabled";
273 };
274 };
275};
276
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700277&sdcc1 {
Oluwafemi Adeyemi6cdfdb82012-11-02 13:36:29 -0700278 qcom,bus-width = <4>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700279};
280
281&sdcc2 {
282 #address-cells = <0>;
283 interrupt-parent = <&sdcc2>;
284 interrupts = <0 1 2>;
285 #interrupt-cells = <1>;
286 interrupt-map-mask = <0xffffffff>;
287 interrupt-map = <0 &intc 0 125 0
288 1 &intc 0 220 0
289 2 &msmgpio 62 0x3>;
290 interrupt-names = "core_irq", "bam_irq", "status_irq";
291 cd-gpios = <&msmgpio 62 0x1>;
292};
293
Jack Pham43ac4272012-12-05 18:02:19 -0800294&usb3 {
295 qcom,otg-capability;
296};
297
Xiaozhe Shi7447fe72012-12-21 09:53:32 -0800298&pm8941_bms {
299 status = "ok";
300};
301
Jack Pham9f9faa92012-12-01 20:13:31 -0800302&pm8941_chg {
303 status = "ok";
304
Jack Pham9f9faa92012-12-01 20:13:31 -0800305 qcom,chg-chgr@1000 {
306 status = "ok";
307 };
308
309 qcom,chg-buck@1100 {
310 status = "ok";
311 };
312
313 qcom,chg-bat-if@1200 {
314 status = "ok";
315 };
316
317 qcom,chg-usb-chgpth@1300 {
318 status = "ok";
319 };
320
321 qcom,chg-dc-chgpth@1400 {
322 status = "ok";
323 };
324
325 qcom,chg-boost@1500 {
326 status = "ok";
327 };
328
329 qcom,chg-misc@1600 {
330 status = "ok";
331 };
332};
333
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700334&pm8941_gpios {
335 gpio@c000 { /* GPIO 1 */
336 };
337
338 gpio@c100 { /* GPIO 2 */
339 };
340
341 gpio@c200 { /* GPIO 3 */
342 qcom,mode = <0>;
343 qcom,pull = <0>;
344 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700345 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700346 };
347
348 gpio@c300 { /* GPIO 4 */
349 qcom,mode = <0>;
350 qcom,pull = <0>;
351 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700352 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700353 };
354
355 gpio@c400 { /* GPIO 5 */
356 qcom,mode = <0>;
357 qcom,pull = <0>;
358 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700359 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700360 };
361
362 gpio@c500 { /* GPIO 6 */
363 };
364
365 gpio@c600 { /* GPIO 7 */
366 };
367
368 gpio@c700 { /* GPIO 8 */
369 };
370
371 gpio@c800 { /* GPIO 9 */
372 };
373
374 gpio@c900 { /* GPIO 10 */
375 };
376
377 gpio@ca00 { /* GPIO 11 */
378 };
379
380 gpio@cb00 { /* GPIO 12 */
Manoj Rao167072b2012-10-29 12:48:29 -0700381 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
382 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
383 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
384 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
385 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
Manoj Rao90067802013-01-18 14:57:25 -0800386 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
Manoj Rao167072b2012-10-29 12:48:29 -0700387 qcom,master-en = <1>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700388 };
389
390 gpio@cc00 { /* GPIO 13 */
391 };
392
393 gpio@cd00 { /* GPIO 14 */
394 };
395
396 gpio@ce00 { /* GPIO 15 */
397 qcom,mode = <1>;
398 qcom,output-type = <0>;
399 qcom,pull = <5>;
400 qcom,vin-sel = <2>;
401 qcom,out-strength = <3>;
Michael Bohand734fb22012-10-30 14:19:22 -0700402 qcom,src-sel = <2>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700403 qcom,master-en = <1>;
404 };
405
406 gpio@cf00 { /* GPIO 16 */
Amy Maloche527acc42012-12-07 18:40:54 -0800407 qcom,mode = <1>;
408 qcom,output-type = <0>;
409 qcom,pull = <5>;
410 qcom,vin-sel = <2>;
411 qcom,out-strength = <3>;
412 qcom,src-sel = <2>;
413 qcom,master-en = <1>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700414 };
415
416 gpio@d000 { /* GPIO 17 */
417 };
418
419 gpio@d100 { /* GPIO 18 */
420 };
421
422 gpio@d200 { /* GPIO 19 */
423 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
424 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
425 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
426 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
427 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
Michael Bohand734fb22012-10-30 14:19:22 -0700428 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700429 qcom,master-en = <1>;
430 };
431
432 gpio@d300 { /* GPIO 20 */
433 };
434
435 gpio@d400 { /* GPIO 21 */
436 };
437
438 gpio@d500 { /* GPIO 22 */
439 };
440
441 gpio@d600 { /* GPIO 23 */
442 };
443
444 gpio@d700 { /* GPIO 24 */
445 };
446
447 gpio@d800 { /* GPIO 25 */
448 };
449
450 gpio@d900 { /* GPIO 26 */
451 };
452
453 gpio@da00 { /* GPIO 27 */
454 };
455
456 gpio@db00 { /* GPIO 28 */
457 };
458
459 gpio@dc00 { /* GPIO 29 */
460 qcom,pull = <0>; /* set to default pull */
461 qcom,master-en = <1>;
462 qcom,vin-sel = <2>; /* select 1.8 V source */
463 };
464
465 gpio@dd00 { /* GPIO 30 */
466 };
467
468 gpio@de00 { /* GPIO 31 */
469 };
470
471 gpio@df00 { /* GPIO 32 */
472 };
473
474 gpio@e000 { /* GPIO 33 */
475 };
476
477 gpio@e100 { /* GPIO 34 */
478 };
479
480 gpio@e200 { /* GPIO 35 */
481 };
482
483 gpio@e300 { /* GPIO 36 */
484 };
485};
486
487&pm8941_mpps {
488
489 mpp@a000 { /* MPP 1 */
490 };
491
492 mpp@a100 { /* MPP 2 */
493 };
494
495 mpp@a200 { /* MPP 3 */
496 };
497
498 mpp@a300 { /* MPP 4 */
499 };
500
501 mpp@a400 { /* MPP 5 */
502 /* SPI_ETH config */
503 qcom,mode = <1>; /* DIG_OUT */
504 qcom,output-type = <0>; /* CMOS */
505 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
Michael Bohand734fb22012-10-30 14:19:22 -0700506 qcom,src-sel = <0>; /* CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700507 qcom,master-en = <1>; /* ENABLE MPP */
508 };
509
510 mpp@a500 { /* MPP 6 */
511 /* SPI_ETH_RST config */
512 qcom,mode = <1>; /* DIG_OUT */
513 qcom,output-type = <0>; /* CMOS */
514 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
Michael Bohand734fb22012-10-30 14:19:22 -0700515 qcom,src-sel = <0>; /* CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700516 qcom,master-en = <1>; /* ENABLE MPP */
517 };
518
519 mpp@a600 { /* MPP 7 */
520 };
521
522 mpp@a700 { /* MPP 8 */
Manoj Rao167072b2012-10-29 12:48:29 -0700523 qcom,mode = <1>; /* DIG_OUT */
524 qcom,output-type = <0>; /* CMOS */
Manoj Rao90067802013-01-18 14:57:25 -0800525 qcom,pull = <0>;
Manoj Rao167072b2012-10-29 12:48:29 -0700526 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
Manoj Rao90067802013-01-18 14:57:25 -0800527 qcom,src-sel = <0>; /* CONSTANT */
Manoj Rao167072b2012-10-29 12:48:29 -0700528 qcom,master-en = <1>; /* ENABLE MPP */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700529 };
530};
531
532&pm8841_mpps {
533
534 mpp@a000 { /* MPP 1 */
535 };
536
537 mpp@a100 { /* MPP 2 */
538 };
539
540 mpp@a200 { /* MPP 3 */
541 };
542
543 mpp@a300 { /* MPP 4 */
544 };
545};
Siddartha Mohanadosse9f24de2012-11-02 17:13:18 -0700546
547&spi_epm {
548 epm-adc@0 {
549 compatible = "cy,epm-adc-cy8c5568lti-114";
550 reg = <0>;
551 interrupt-parent = <&msmgpio>;
552 spi-max-frequency = <960000>;
553 qcom,channels = <31>;
554 qcom,gain = <100 100 100 50 100 100 1 100 1 50
555 1 100 1 100 50 50 50 50 50 50
556 100 50 100 50 50 50 50 50 50 50
557 50>;
558 qcom,rsense = <2 2 2 200 20 2 1 2 1 30
559 1 10 1 30 50 30 500 30 100 30
560 100 500 20 200 1000 20 1000 1000 70 200
561 50>;
562 qcom,channel-type = <0x1540>;
563 };
564};