blob: f5f7fbdcfab41edf32c972d1f62e212c11c251c6 [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"
Chandan Uddaraju6d2c8922013-01-24 23:11:12 -080014/include/ "dsi-panel-orise-720p-video.dtsi"
Amy Maloche24de28b2012-09-17 12:09:56 -070015/include/ "msm8974-leds.dtsi"
Sreesudhan Ramakrish Ramkumar3a179a12013-02-13 17:33:54 -080016/include/ "msm8974-camera-sensor-cdp-mtp.dtsi"
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070017
18/ {
19 serial@f991e000 {
20 status = "ok";
21 };
22
Chandan Uddaraju0c33e772012-12-13 22:49:58 -080023 qcom,mdss_dsi_toshiba_720p_video {
24 status = "ok";
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070025 };
26
Chandan Uddaraju6d2c8922013-01-24 23:11:12 -080027 qcom,mdss_dsi_orise_720p_video {
28 status = "disable";
29 };
30
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070031 qcom,hdmi_tx@fd922100 {
32 status = "ok";
33 };
34
35 i2c@f9924000 {
36 atmel_mxt_ts@4a {
37 compatible = "atmel,mxt-ts";
38 reg = <0x4a>;
39 interrupt-parent = <&msmgpio>;
40 interrupts = <61 0x2>;
41 vdd_ana-supply = <&pm8941_l18>;
42 vcc_i2c-supply = <&pm8941_lvs1>;
43 atmel,reset-gpio = <&msmgpio 60 0x00>;
44 atmel,irq-gpio = <&msmgpio 61 0x00>;
45 atmel,panel-coords = <0 0 760 1424>;
46 atmel,display-coords = <0 0 720 1280>;
Sreenivasulu Chalam Charlabf7f6212012-10-17 22:10:24 +053047 atmel,i2c-pull-up;
Amy Malochea90b0052013-02-13 11:57:10 -080048 atmel,no-force-update;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070049 atmel,cfg_1 {
50 atmel,family-id = <0x82>;
51 atmel,variant-id = <0x19>;
52 atmel,version = <0x10>;
53 atmel,build = <0xaa>;
54 atmel,config = [
55 /* Object 6, Instance = 0 */
56 00 00 00 00 00 00
57 /* Object 38, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080058 15 01 00 03 0A 0C 00 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070059 /* Object 7, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080060 20 08 32 03
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070061 /* Object 8, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080062 0F 00 0A 0A 00 00 0A 0A 00 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070063 /* Object 9, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080064 83 00 00 18 0E 00 70 46 02 01
65 00 0A 03 31 04 05 0A 0A 90 05
66 F8 02 05 F1 F1 0F 00 00 08 2D
67 12 06 00 00 00 01
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070068 /* Object 15, Instance = 0 */
69 00 00 00 00 00 00 00 00 00 00
70 00
71 /* Object 18, Instance = 0 */
72 00 00
73 /* Object 19, Instance = 0 */
74 00 00 00 00 00 00
75 /* Object 23, Instance = 0 */
76 00 00 00 00 00 00 00 00 00 00
77 00 00 00 00 00
78 /* Object 25, Instance = 0 */
79 00 00 00 00 00 00 00 00 00 00
80 00 00 00 00 00
81 /* Object 40, Instance = 0 */
82 00 00 00 00 00
83 /* Object 42, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080084 33 1E 19 10 80 00 00 00 FF 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070085 /* Object 46, Instance = 0 */
86 00 00 10 10 00 00 03 00 00 01
87 /* Object 47, Instance = 0 */
88 08 0A 28 0A 02 0A 00 8C 00 20
89 00 00 00
90 /* Object 55, Instance = 0 */
91 00 00 00 00 00 00
92 /* Object 56, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -080093 00 00 00 18 05 05 05 05 05 05
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070094 05 05 05 05 05 05 05 05 05 05
95 05 05 05 05 05 05 05 05 00 00
96 00 00 00 00 00 00 00 00 00 00
97 00 00
98 /* Object 57, Instance = 0 */
99 00 00 00
100 /* Object 61, Instance = 0 */
101 00 00 00 00 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700102 /* Object 62, Instance = 0 */
Amy Maloche84637212012-12-14 15:12:19 -0800103 01 2A 00 16 00 00 00 00 0B 01
104 02 03 04 08 00 00 08 10 18 05
105 00 0A 05 05 50 14 19 34 1A 7F
106 00 00 00 00 00 00 00 00 00 30
107 05 02 00 01 00 05 00 00 00 00
108 00 00 00 00
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700109 ];
110 };
111 };
112 };
113
Amy Maloche932657e2012-11-26 11:31:55 -0800114 gen-vkeys {
115 compatible = "qcom,gen-vkeys";
116 label = "atmel_mxt_ts";
117 qcom,disp-maxx = <720>;
118 qcom,disp-maxy = <1280>;
119 qcom,panel-maxx = <760>;
120 qcom,panel-maxy = <1424>;
121 qcom,key-codes = <158 139 102 217>;
122 };
123
Amy Maloche527acc42012-12-07 18:40:54 -0800124 i2c@f9967000 {
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,smart-en;
133 imagis,need-pwm-clk;
134 imagis,ext-clk-en;
135 imagis,hap-en-gpio = <&msmgpio 86 0x00>;
136 imagis,max-timeout = <15000>;
137 imagis,pwm-div = <256>;
138 imagis,mode-ctrl = <2>;
139 imagis,regulator {
140 regulator-name = "vcc_i2c";
141 regulator-min-microvolt = <1800000>;
142 regulator-max-microvolt = <1800000>;
143 regulator-max-microamp = <9360>;
144 };
145 };
146 };
147
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700148 gpio_keys {
149 compatible = "gpio-keys";
150 input-name = "gpio-keys";
151
152 camera_snapshot {
153 label = "camera_snapshot";
154 gpios = <&pm8941_gpios 3 0x1>;
155 linux,input-type = <1>;
156 linux,code = <0x2fe>;
157 gpio-key,wakeup;
158 debounce-interval = <15>;
159 };
160
161 camera_focus {
162 label = "camera_focus";
163 gpios = <&pm8941_gpios 4 0x1>;
164 linux,input-type = <1>;
165 linux,code = <0x210>;
166 gpio-key,wakeup;
167 debounce-interval = <15>;
168 };
169
170 vol_up {
171 label = "volume_up";
172 gpios = <&pm8941_gpios 5 0x1>;
173 linux,input-type = <1>;
174 linux,code = <115>;
175 gpio-key,wakeup;
176 debounce-interval = <15>;
177 };
178 };
179
180 spi@f9923000 {
181 ethernet-switch@2 {
182 compatible = "micrel,ks8851";
183 reg = <2>;
184 interrupt-parent = <&msmgpio>;
185 interrupts = <94 0>;
186 spi-max-frequency = <4800000>;
187 rst-gpio = <&pm8941_mpps 6 0>;
188 vdd-io-supply = <&spi_eth_vreg>;
189 vdd-phy-supply = <&spi_eth_vreg>;
190 };
191 };
Phani Kumar Uppalapatia2129872012-11-08 20:36:45 -0800192
193 sound {
Phani Kumar Uppalapatia2129872012-11-08 20:36:45 -0800194 qcom,model = "msm8974-taiko-cdp-snd-card";
Kiran Kandi52650322012-12-11 15:49:39 -0800195 qcom,hdmi-audio-rx;
Phani Kumar Uppalapatia2129872012-11-08 20:36:45 -0800196 };
David Collinsf3c0e562012-12-20 11:45:06 -0800197
198 usb2_otg_sw: regulator-tpd4s214 {
199 compatible = "regulator-fixed";
200 regulator-name = "usb2_otg_sw";
201 gpio = <&pm8941_gpios 18 0>;
202 parent-supply = <&pm8941_boost>;
203 startup-delay-us = <17000>;
204 enable-active-high;
205 };
Ming-yi Lin44c2afa2013-02-22 11:36:58 +0800206
207 hsic@f9a00000 {
208 compatible = "qcom,hsic-host";
209 reg = <0xf9a00000 0x400>;
210 interrupts = <0 136 0>, <0 148 0>;
211 interrupt-names = "core_irq", "async_irq";
212 HSIC_VDDCX-supply = <&pm8841_s2>;
213 HSIC_GDSC-supply = <&gdsc_usb_hsic>;
214 hsic,strobe-gpio = <&msmgpio 144 0x00>;
215 hsic,data-gpio = <&msmgpio 145 0x00>;
216 hsic,ignore-cal-pad-config;
217 hsic,strobe-pad-offset = <0x2050>;
218 hsic,data-pad-offset = <0x2054>;
219 };
220
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700221};
222
Amy Maloche24de28b2012-09-17 12:09:56 -0700223&spmi_bus {
224 qcom,pm8941@1 {
225 qcom,leds@d800 {
226 status = "okay";
227 qcom,wled_0 {
228 label = "wled";
229 linux,name = "wled:backlight";
230 linux,default-trigger = "bkl-trigger";
231 qcom,cs-out-en;
232 qcom,op-fdbck;
233 qcom,default-state = "off";
234 qcom,max-current = <25>;
235 qcom,ctrl-delay-us = <0>;
236 qcom,boost-curr-lim = <3>;
237 qcom,cp-sel = <0>;
238 qcom,switch-freq = <2>;
239 qcom,ovp-val = <2>;
240 qcom,num-strings = <1>;
241 qcom,id = <0>;
242 };
243 };
244
245 qcom,leds@d900 {
246 status = "disabled";
247 };
248
249 qcom,leds@da00 {
250 status = "disabled";
251 };
252
253 qcom,leds@db00 {
254 status = "disabled";
255 };
256
257 qcom,leds@dc00 {
258 status = "disabled";
259 };
260
261 qcom,leds@dd00 {
262 status = "disabled";
263 };
264
265 qcom,leds@de00 {
266 status = "disabled";
267 };
268
269 qcom,leds@df00 {
270 status = "disabled";
271 };
272
273 qcom,leds@e000 {
274 status = "disabled";
275 };
276
277 qcom,leds@e100 {
278 status = "disabled";
279 };
280 };
281};
282
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700283&sdcc2 {
284 #address-cells = <0>;
285 interrupt-parent = <&sdcc2>;
286 interrupts = <0 1 2>;
287 #interrupt-cells = <1>;
288 interrupt-map-mask = <0xffffffff>;
289 interrupt-map = <0 &intc 0 125 0
290 1 &intc 0 220 0
291 2 &msmgpio 62 0x3>;
292 interrupt-names = "core_irq", "bam_irq", "status_irq";
293 cd-gpios = <&msmgpio 62 0x1>;
294 wp-gpios = <&pm8941_gpios 29 0x1>;
295};
296
Mayank Rana3d073cf2012-12-18 10:23:27 +0530297&uart7 {
298 status = "ok";
299};
300
Jack Pham43ac4272012-12-05 18:02:19 -0800301&usb3 {
302 qcom,otg-capability;
303};
304
David Keiteldb2602d2012-11-27 15:59:54 -0800305&pm8941_chg {
306 status = "ok";
307
308 qcom,chg-charging-disabled;
David Keitel9773bcc2012-12-13 11:39:31 -0800309 qcom,chg-use-default-batt-values;
David Keiteldb2602d2012-11-27 15:59:54 -0800310
311 qcom,chg-chgr@1000 {
312 status = "ok";
313 };
314
315 qcom,chg-buck@1100 {
316 status = "ok";
317 };
318
319 qcom,chg-bat-if@1200 {
320 status = "ok";
321 };
322
323 qcom,chg-usb-chgpth@1300 {
324 status = "ok";
325 };
326
327 qcom,chg-dc-chgpth@1400 {
328 status = "ok";
329 };
330
331 qcom,chg-boost@1500 {
332 status = "ok";
333 };
334
335 qcom,chg-misc@1600 {
336 status = "ok";
337 };
338};
339
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700340&pm8941_gpios {
341 gpio@c000 { /* GPIO 1 */
342 };
343
344 gpio@c100 { /* GPIO 2 */
345 };
346
347 gpio@c200 { /* GPIO 3 */
348 qcom,mode = <0>;
349 qcom,pull = <0>;
350 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700351 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700352 };
353
354 gpio@c300 { /* GPIO 4 */
355 qcom,mode = <0>;
356 qcom,pull = <0>;
357 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700358 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700359 };
360
361 gpio@c400 { /* GPIO 5 */
362 qcom,mode = <0>;
363 qcom,pull = <0>;
364 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700365 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700366 };
367
368 gpio@c500 { /* GPIO 6 */
369 };
370
371 gpio@c600 { /* GPIO 7 */
372 };
373
374 gpio@c700 { /* GPIO 8 */
375 };
376
377 gpio@c800 { /* GPIO 9 */
378 };
379
380 gpio@c900 { /* GPIO 10 */
381 };
382
383 gpio@ca00 { /* GPIO 11 */
384 };
385
386 gpio@cb00 { /* GPIO 12 */
387 };
388
389 gpio@cc00 { /* GPIO 13 */
390 };
391
392 gpio@cd00 { /* GPIO 14 */
393 };
394
395 gpio@ce00 { /* GPIO 15 */
396 qcom,mode = <1>;
397 qcom,output-type = <0>;
398 qcom,pull = <5>;
399 qcom,vin-sel = <2>;
400 qcom,out-strength = <3>;
Michael Bohand734fb22012-10-30 14:19:22 -0700401 qcom,src-sel = <2>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700402 qcom,master-en = <1>;
403 };
404
405 gpio@cf00 { /* GPIO 16 */
Amy Maloche527acc42012-12-07 18:40:54 -0800406 qcom,mode = <1>;
407 qcom,output-type = <0>;
408 qcom,pull = <2>;
409 qcom,vin-sel = <2>;
410 qcom,out-strength = <2>;
411 qcom,src-sel = <2>;
412 qcom,master-en = <1>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700413 };
414
415 gpio@d000 { /* GPIO 17 */
416 };
417
418 gpio@d100 { /* GPIO 18 */
David Collinsf3c0e562012-12-20 11:45:06 -0800419 /* usb2_otg_sw regulator enable */
420 qcom,mode = <1>; /* Digital output */
421 qcom,output-type = <0>; /* CMOS logic */
422 qcom,invert = <0>; /* Output low initially */
423 qcom,vin-sel = <2>; /* PM8941 S3 = 1.8 V */
424 qcom,src-sel = <0>; /* Constant */
425 qcom,out-strength = <2>; /* Medium drive strength */
426 qcom,master-en = <1>; /* Enable GPIO */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700427 };
428
429 gpio@d200 { /* GPIO 19 */
430 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
431 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
432 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
433 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
434 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
Michael Bohand734fb22012-10-30 14:19:22 -0700435 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700436 qcom,master-en = <1>;
437 };
438
439 gpio@d300 { /* GPIO 20 */
440 };
441
442 gpio@d400 { /* GPIO 21 */
443 };
444
445 gpio@d500 { /* GPIO 22 */
446 };
447
448 gpio@d600 { /* GPIO 23 */
449 };
450
451 gpio@d700 { /* GPIO 24 */
452 };
453
454 gpio@d800 { /* GPIO 25 */
455 };
456
457 gpio@d900 { /* GPIO 26 */
458 };
459
460 gpio@da00 { /* GPIO 27 */
461 };
462
463 gpio@db00 { /* GPIO 28 */
464 };
465
466 gpio@dc00 { /* GPIO 29 */
467 qcom,pull = <0>; /* set to default pull */
468 qcom,master-en = <1>;
469 qcom,vin-sel = <2>; /* select 1.8 V source */
470 };
471
472 gpio@dd00 { /* GPIO 30 */
473 };
474
475 gpio@de00 { /* GPIO 31 */
476 };
477
478 gpio@df00 { /* GPIO 32 */
479 };
480
481 gpio@e000 { /* GPIO 33 */
482 };
483
484 gpio@e100 { /* GPIO 34 */
485 };
486
487 gpio@e200 { /* GPIO 35 */
488 };
489
490 gpio@e300 { /* GPIO 36 */
491 };
492};
493
494&pm8941_mpps {
495
496 mpp@a000 { /* MPP 1 */
497 };
498
499 mpp@a100 { /* MPP 2 */
500 };
501
502 mpp@a200 { /* MPP 3 */
503 };
504
505 mpp@a300 { /* MPP 4 */
506 };
507
508 mpp@a400 { /* MPP 5 */
509 /* SPI_ETH config */
510 qcom,mode = <1>; /* DIG_OUT */
511 qcom,output-type = <0>; /* CMOS */
512 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
Michael Bohand734fb22012-10-30 14:19:22 -0700513 qcom,src-sel = <0>; /* CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700514 qcom,master-en = <1>; /* ENABLE MPP */
515 };
516
517 mpp@a500 { /* MPP 6 */
518 /* SPI_ETH_RST config */
519 qcom,mode = <1>; /* DIG_OUT */
520 qcom,output-type = <0>; /* CMOS */
521 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
Michael Bohand734fb22012-10-30 14:19:22 -0700522 qcom,src-sel = <0>; /* CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700523 qcom,master-en = <1>; /* ENABLE MPP */
524 };
525
526 mpp@a600 { /* MPP 7 */
527 };
528
529 mpp@a700 { /* MPP 8 */
530 };
531};
532
533&pm8841_mpps {
534
535 mpp@a000 { /* MPP 1 */
536 };
537
538 mpp@a100 { /* MPP 2 */
539 };
540
541 mpp@a200 { /* MPP 3 */
542 };
543
544 mpp@a300 { /* MPP 4 */
545 };
546};
Kiran Kandi4041f7f2013-02-07 23:17:18 -0800547
548&slim_msm {
549 taiko_codec {
550 qcom,cdc-micbias1-ext-cap;
551 qcom,cdc-micbias3-ext-cap;
552 qcom,cdc-micbias4-ext-cap;
553 };
554};