blob: 4163b95c8b4ee5b1e7f7f94d7e0ce196020f1ba0 [file] [log] [blame]
Simmi Pateriya48403aa2013-11-08 14:20:58 +05301/* Copyright (c) 2013-2014, The Linux Foundation. All rights reserved.
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -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
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -070013/include/ "msm8226-camera-sensor-cdp.dtsi"
14
15&soc {
16 serial@f991f000 {
17 status = "ok";
18 };
19
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -070020 i2c@f9927000 { /* BLSP1 QUP5 */
21 synaptics@20 {
22 compatible = "synaptics,rmi4";
23 reg = <0x20>;
24 interrupt-parent = <&msmgpio>;
25 interrupts = <17 0x2008>;
26 vdd-supply = <&pm8226_l19>;
27 vcc_i2c-supply = <&pm8226_lvs1>;
28 synaptics,reset-gpio = <&msmgpio 16 0x00>;
29 synaptics,irq-gpio = <&msmgpio 17 0x2008>;
Amy Malochef4a3fdb2013-11-04 15:37:19 -080030 synaptics,display-coords = <0 0 1079 1919>;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -070031 synaptics,i2c-pull-up;
Amy Maloche80c15572013-09-19 15:15:23 -070032 synaptics,power-down;
33 synaptics,disable-gpios;
Mohan Pallakaa7024462014-01-27 16:57:13 -080034 synaptics,fw-image-name = "PR1469074-s3408bt_001F010D.img";
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -070035 };
36 };
37
Amy Malochef4a3fdb2013-11-04 15:37:19 -080038 gen-vkeys {
39 compatible = "qcom,gen-vkeys";
40 label = "synaptics_rmi4_i2c";
41 qcom,disp-maxx = <1079>;
42 qcom,disp-maxy = <1919>;
43 qcom,panel-maxx = <1079>;
44 qcom,panel-maxy = <2084>;
45 qcom,key-codes = <158 139 102 217>;
46 };
47
Syed Rameez Mustafa80ba3672013-10-31 14:07:51 -070048 i2c@f9925000 { /* BLSP1 QUP3 */
49 nfc-nci@0e {
50 compatible = "qcom,nfc-nci";
51 reg = <0x0e>;
52 qcom,irq-gpio = <&msmgpio 21 0x00>;
53 qcom,dis-gpio = <&msmgpio 20 0x00>;
54 qcom,clk-src = "BBCLK2";
55 qcom,clk-en-gpio = <&msmgpio 0 0x00>;
56 interrupt-parent = <&msmgpio>;
57 interrupts = <21 0>;
58 qcom,clk-gpio = <&pm8226_gpios 3 0>;
59 };
60 };
61
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -070062 gpio_keys {
63 compatible = "gpio-keys";
64 input-name = "gpio-keys";
65
66 camera_focus {
67 label = "camera_focus";
68 gpios = <&msmgpio 108 0x1>;
69 linux,input-type = <1>;
70 linux,code = <0x210>;
71 gpio-key,wakeup;
72 debounce-interval = <15>;
73 };
74
75 camera_snapshot {
76 label = "camera_snapshot";
77 gpios = <&msmgpio 107 0x1>;
78 linux,input-type = <1>;
79 linux,code = <0x2fe>;
80 gpio-key,wakeup;
81 debounce-interval = <15>;
82 };
83
84 vol_up {
85 label = "volume_up";
86 gpios = <&msmgpio 106 0x1>;
87 linux,input-type = <1>;
88 linux,code = <115>;
89 gpio-key,wakeup;
90 debounce-interval = <15>;
91 };
92 };
93
94 spi@f9923000 {
95 ethernet-switch@3 {
96 compatible = "micrel,ks8851";
97 reg = <3>;
98 interrupt-parent = <&msmgpio>;
fangpanf6f96072013-07-17 16:10:34 -070099 interrupts = <115 0x8>;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700100 spi-max-frequency = <4800000>;
101 rst-gpio = <&msmgpio 114 0>;
102 vdd-io-supply = <&pm8226_lvs1>;
103 vdd-phy-supply = <&pm8226_lvs1>;
104 };
105 };
106
107 sound {
108 qcom,audio-routing =
109 "RX_BIAS", "MCLK",
110 "LDO_H", "MCLK",
111 "SPK_OUT", "MCLK",
112 "SPK_OUT", "EXT_VDD_SPKR",
113 "AMIC1", "MIC BIAS1 Internal1",
114 "MIC BIAS1 Internal1", "Handset Mic",
115 "AMIC2", "MIC BIAS2 External",
116 "MIC BIAS2 External", "Headset Mic",
117 "AMIC4", "MIC BIAS2 External",
118 "MIC BIAS2 External", "ANCRight Headset Mic",
119 "AMIC5", "MIC BIAS2 External",
120 "MIC BIAS2 External", "ANCLeft Headset Mic",
121 "DMIC1", "MIC BIAS1 External",
122 "MIC BIAS1 External", "Digital Mic1",
123 "DMIC2", "MIC BIAS1 External",
124 "MIC BIAS1 External", "Digital Mic2",
125 "DMIC3", "MIC BIAS3 External",
126 "MIC BIAS3 External", "Digital Mic3",
127 "DMIC4", "MIC BIAS3 External",
128 "MIC BIAS3 External", "Digital Mic4";
129
130 qcom,cdc-mclk-gpios = <&pm8226_gpios 1 0>;
131 qcom,cdc-vdd-spkr-gpios = <&pm8226_gpios 2 0>;
Phani Kumar Uppalapatibcaa52f2013-09-23 20:27:59 -0700132 qcom,headset-jack-type-NC;
Simmi Pateriya48403aa2013-11-08 14:20:58 +0530133 qcom,mbhc-audio-jack-type = "6-pole-jack";
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700134 };
Phani Kumar Uppalapatic2f9c222013-05-09 19:17:58 -0700135
136 sound-9302 {
137 qcom,audio-routing =
138 "RX_BIAS", "MCLK",
139 "LDO_H", "MCLK",
140 "SPK_OUT", "MCLK",
141 "SPK_OUT", "EXT_VDD_SPKR",
142 "AMIC1", "MIC BIAS1 External",
143 "MIC BIAS1 External", "Handset Mic",
144 "AMIC2", "MIC BIAS2 External",
145 "MIC BIAS2 External", "Headset Mic",
146 "AMIC3", "MIC BIAS1 External",
147 "MIC BIAS1 External", "Handset Mic";
148
149 qcom,cdc-mclk-gpios = <&pm8226_gpios 1 0>;
150 qcom,cdc-vdd-spkr-gpios = <&pm8226_gpios 2 0>;
Phani Kumar Uppalapatibcaa52f2013-09-23 20:27:59 -0700151 qcom,headset-jack-type-NC;
Phani Kumar Uppalapatic2f9c222013-05-09 19:17:58 -0700152 };
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700153};
154
155&sdcc1 {
156 vdd-supply = <&pm8226_l17>;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700157 qcom,vdd-voltage-level = <2950000 2950000>;
158 qcom,vdd-current-level = <800 500000>;
159
160 vdd-io-supply = <&pm8226_l6>;
161 qcom,vdd-io-always-on;
162 qcom,vdd-io-voltage-level = <1800000 1800000>;
163 qcom,vdd-io-current-level = <250 154000>;
164
165 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
166 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
167 qcom,pad-drv-on = <0x4 0x4 0x4>; /* 10mA, 10mA, 10mA */
168 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
169
170 qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;
171 qcom,sup-voltages = <2950 2950>;
172
173 qcom,bus-speed-mode = "HS200_1p8v", "DDR_1p8v";
174 qcom,nonremovable;
175
176 status = "disabled";
177};
178
179&sdhc_1 {
180 vdd-supply = <&pm8226_l17>;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700181 qcom,vdd-voltage-level = <2950000 2950000>;
182 qcom,vdd-current-level = <800 500000>;
183
184 vdd-io-supply = <&pm8226_l6>;
185 qcom,vdd-io-always-on;
186 qcom,vdd-io-voltage-level = <1800000 1800000>;
187 qcom,vdd-io-current-level = <250 154000>;
188
189 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
190 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
191 qcom,pad-drv-on = <0x4 0x4 0x4>; /* 10mA, 10mA, 10mA */
192 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
193
194 qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;
195 qcom,bus-speed-mode = "HS200_1p8v", "DDR_1p8v";
196 qcom,nonremovable;
197
198 status = "ok";
199};
200
201&sdcc2 {
202 vdd-supply = <&pm8226_l18>;
203 qcom,vdd-voltage-level = <2950000 2950000>;
204 qcom,vdd-current-level = <9000 800000>;
205
206 vdd-io-supply = <&pm8226_l21>;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700207 qcom,vdd-io-voltage-level = <1800000 2950000>;
208 qcom,vdd-io-current-level = <6 22000>;
209
210 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
211 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
212 qcom,pad-drv-on = <0x4 0x4 0x4>; /* 10mA, 10mA, 10mA */
213 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
214
215 qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;
216 qcom,sup-voltages = <2950 2950>;
217
218 qcom,xpc;
219 qcom,bus-speed-mode = "SDR12", "SDR25", "SDR50", "DDR50", "SDR104";
220 qcom,current-limit = <600>;
221
222 #address-cells = <0>;
223 interrupt-parent = <&sdcc2>;
224 interrupts = <0 1 2>;
225 #interrupt-cells = <1>;
226 interrupt-map-mask = <0xffffffff>;
227 interrupt-map = <0 &intc 0 125 0
228 1 &intc 0 220 0
229 2 &msmgpio 38 0x3>;
230 interrupt-names = "core_irq", "bam_irq", "status_irq";
231 cd-gpios = <&msmgpio 38 0x1>;
232
233 status = "disabled";
234};
235
236&sdhc_2 {
237 vdd-supply = <&pm8226_l18>;
238 qcom,vdd-voltage-level = <2950000 2950000>;
239 qcom,vdd-current-level = <9000 800000>;
240
241 vdd-io-supply = <&pm8226_l21>;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700242 qcom,vdd-io-voltage-level = <1800000 2950000>;
243 qcom,vdd-io-current-level = <6 22000>;
244
245 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
246 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
247 qcom,pad-drv-on = <0x4 0x4 0x4>; /* 10mA, 10mA, 10mA */
248 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
249
250 qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;
251
252 #address-cells = <0>;
253 interrupt-parent = <&sdhc_2>;
254 interrupts = <0 1 2>;
255 #interrupt-cells = <1>;
256 interrupt-map-mask = <0xffffffff>;
257 interrupt-map = <0 &intc 0 125 0
258 1 &intc 0 221 0
259 2 &msmgpio 38 0x3>;
260 interrupt-names = "hc_irq", "pwr_irq", "status_irq";
261 cd-gpios = <&msmgpio 38 0x1>;
262
263 status = "ok";
264};
265
Krishna Kondaf92e4262013-07-08 16:21:57 -0700266&sdcc3 {
267 qcom,sup-voltages = <1800 1800>;
268 status = "disabled";
269};
270
271&sdhc_3 {
272 qcom,sup-voltages = <1800 1800>;
273 status = "disabled";
274};
275
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700276&spmi_bus {
277 qcom,pm8226@0 {
278 qcom,leds@a100 {
279 status = "okay";
280 qcom,led_mpp_2 {
281 label = "mpp";
282 linux,name = "button-backlight";
283 linux,default-trigger = "none";
284 qcom,default-state = "off";
285 qcom,max-current = <40>;
286 qcom,current-setting = <5>;
287 qcom,id = <6>;
288 qcom,mode = "manual";
289 qcom,source-sel = <1>;
290 qcom,mode-ctrl = <0x60>;
291 };
292 };
293
294 qcom,leds@a300 {
295 status = "okay";
296 qcom,led_mpp_4 {
297 label = "mpp";
298 linux,name = "green";
Shantanu Jain997a42a2013-08-22 16:55:59 +0530299 linux,default-trigger = "battery-full";
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700300 qcom,default-state = "off";
301 qcom,max-current = <40>;
302 qcom,current-setting = <5>;
303 qcom,id = <6>;
Amy Malocheba8aa742013-06-05 11:08:40 -0700304 qcom,mode = "pwm";
305 qcom,pwm-us = <1000>;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700306 qcom,source-sel = <8>;
307 qcom,mode-ctrl = <0x60>;
308 qcom,pwm-channel = <0>;
309 qcom,start-idx = <1>;
Amy Maloched70ffba2013-06-25 14:04:29 -0700310 qcom,ramp-step-ms = <120>;
311 qcom,duty-pcts = [00 00 00 00 00
312 00 00 00 00 00
313 50 00 00 00 00
314 00 00 00 00 00
315 00];
Amy Malocheba8aa742013-06-05 11:08:40 -0700316 qcom,use-blink;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700317 };
318 };
319
320 qcom,leds@a500 {
321 status = "okay";
322 qcom,led_mpp_6 {
323 label = "mpp";
324 linux,name = "red";
Shantanu Jain997a42a2013-08-22 16:55:59 +0530325 linux,default-trigger = "battery-charging";
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700326 qcom,default-state = "off";
327 qcom,max-current = <40>;
328 qcom,current-setting = <5>;
329 qcom,id = <6>;
Amy Malocheba8aa742013-06-05 11:08:40 -0700330 qcom,mode = "pwm";
331 qcom,pwm-us = <1000>;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700332 qcom,mode-ctrl = <0x60>;
333 qcom,source-sel = <10>;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700334 qcom,pwm-channel = <5>;
335 qcom,start-idx = <1>;
Amy Maloched70ffba2013-06-25 14:04:29 -0700336 qcom,ramp-step-ms = <120>;
337 qcom,duty-pcts = [00 00 00 00 00
338 00 00 00 00 00
339 50 00 00 00 00
340 00 00 00 00 00
341 00];
Amy Malocheba8aa742013-06-05 11:08:40 -0700342 qcom,use-blink;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700343 };
344 };
345 };
346
347 qcom,pm8226@1 {
348 qcom,leds@d800 {
349 status = "okay";
350 qcom,wled_0 {
351 label = "wled";
352 linux,name = "wled:backlight";
353 linux,default-trigger = "bkl-trigger";
354 qcom,cs-out-en;
355 qcom,op-fdbck = <1>;
356 qcom,default-state = "on";
Wu Fenglin2e57afc2013-06-05 18:07:13 +0800357 qcom,max-current = <20>;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700358 qcom,ctrl-delay-us = <0>;
359 qcom,boost-curr-lim = <3>;
360 qcom,cp-sel = <0>;
Amy Maloche9eccb4c2013-07-12 14:31:56 -0700361 qcom,switch-freq = <11>;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700362 qcom,ovp-val = <0>;
363 qcom,num-strings = <1>;
364 qcom,id = <0>;
365 };
366 };
Shantanu Jainab582d82013-08-22 17:00:27 +0530367
368 qcom,vibrator@c000 {
369 status = "okay";
370 qcom,vib-timeout-ms = <15000>;
371 qcom,vib-vtg-level-mV = <3100>;
372 };
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700373 };
374};
375
376&pm8226_gpios {
377 gpio@c000 { /* GPIO 1 */
378 /* XO_PMIC_CDC_MCLK enable for tapan codec */
379 qcom,mode = <1>; /* Digital output */
380 qcom,output-type = <0>; /* CMOS logic */
381 qcom,pull = <5>; /* QPNP_PIN_PULL_NO*/
382 qcom,vin-sel = <3>; /* QPNP_PIN_VIN3 */
383 qcom,out-strength = <3>;/* QPNP_PIN_OUT_STRENGTH_HIGH */
384 qcom,src-sel = <2>; /* QPNP_PIN_SEL_FUNC_1 */
385 qcom,master-en = <1>; /* Enable GPIO */
386 };
387
388 gpio@c100 { /* GPIO 2 */
389 qcom,mode = <1>;
390 qcom,output-type = <0>;
391 qcom,pull = <5>;
392 qcom,vin-sel = <3>;
393 qcom,out-strength = <3>;
394 qcom,src-sel = <2>;
395 qcom,master-en = <1>;
396 };
397
398 gpio@c200 { /* GPIO 3 */
Syed Rameez Mustafa80ba3672013-10-31 14:07:51 -0700399 qcom,mode = <0>; /* QPNP_PIN_MODE_DIG_IN */
400 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
401 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
402 qcom,src-sel = <2>; /* QPNP_PIN_SEL_FUNC_1 */
403 qcom,master-en = <1>;
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700404 };
405
406 gpio@c300 { /* GPIO 4 */
407 };
408
409 gpio@c400 { /* GPIO 5 */
410 };
411
412 gpio@c500 { /* GPIO 6 */
413 };
414
415 gpio@c600 { /* GPIO 7 */
416 };
417
418 gpio@c700 { /* GPIO 8 */
419 };
420};
421
422&pm8226_mpps {
423 mpp@a000 { /* MPP 1 */
424 };
425
426 mpp@a100 { /* MPP 2 */
427 };
428
429 mpp@a200 { /* MPP 3 */
430 };
431
432 mpp@a300 { /* MPP 4 */
433 };
434
435 mpp@a400 { /* MPP 5 */
Siddartha Mohanadoss808ecdb2013-05-17 14:45:11 -0700436 /* PA_THERM0 config */
437 qcom,mode = <4>; /* AIN input */
438 qcom,invert = <1>; /* Enable MPP */
439 qcom,ain-route = <0>; /* AMUX 5 */
440 qcom,master-en = <1>;
441 qcom,src-sel = <0>; /* Function constant */
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700442 };
443
444 mpp@a500 { /* MPP 6 */
445 };
446
447 mpp@a600 { /* MPP 7 */
448 };
449
450 mpp@a700 { /* MPP 8 */
Siddartha Mohanadoss808ecdb2013-05-17 14:45:11 -0700451 /* PA_THERM1 config */
452 qcom,mode = <4>; /* AIN input */
453 qcom,invert = <1>; /* Enable MPP */
454 qcom,ain-route = <3>; /* AMUX 8 */
455 qcom,master-en = <1>;
456 qcom,src-sel = <0>; /* Function constant */
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700457 };
458};
459
460&pm8226_chg {
461 qcom,charging-disabled;
462 qcom,use-default-batt-values;
Fenglin Wu0ed3c472013-03-22 11:26:14 -0700463
464 qcom,bat-if@1200 {
465 status = "disabled";
466 };
Syed Rameez Mustafa8f192fb2013-05-24 12:02:43 -0700467};
David Collins091bb242013-05-23 11:08:24 -0700468
Siddartha Mohanadoss808ecdb2013-05-17 14:45:11 -0700469&pm8226_vadc {
470 chan@14 {
471 label = "pa_therm0";
472 reg = <0x14>;
473 qcom,decimation = <0>;
474 qcom,pre-div-channel-scaling = <0>;
475 qcom,calibration-type = "ratiometric";
476 qcom,scale-function = <2>;
477 qcom,hw-settle-time = <2>;
478 qcom,fast-avg-setup = <0>;
479 };
480
481 chan@17 {
482 label = "pa_therm1";
483 reg = <0x17>;
484 qcom,decimation = <0>;
485 qcom,pre-div-channel-scaling = <0>;
486 qcom,calibration-type = "ratiometric";
487 qcom,scale-function = <2>;
488 qcom,hw-settle-time = <2>;
489 qcom,fast-avg-setup = <0>;
490 };
491};
Aravind Venkateswaranfc022542013-11-04 14:37:13 -0800492
493&mdss_mdp {
494 qcom,mdss-pref-prim-intf = "dsi";
495};
496
497&mdss_dsi0 {
498 qcom,dsi-pref-prim-pan = <&dsi_jdi_1080_vid>;
499 qcom,platform-enable-gpio = <&msmgpio 109 0>;
500};
501
502&dsi_jdi_1080_vid {
503 qcom,cont-splash-enabled;
504};