blob: a35b9d25cd440f1d1af2be54914bd0fff7a6522c [file] [log] [blame]
Amy Maloche71880c52013-01-04 11:56:23 -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
Amy Maloche24de28b2012-09-17 12:09:56 -070013/include/ "msm8974-leds.dtsi"
Sreesudhan Ramakrish Ramkumardee14bc2012-11-14 14:24:19 -080014/include/ "msm8974-camera-sensor-liquid.dtsi"
Sreesudhan Ramakrish Ramkumar39074612012-10-11 20:48:51 -070015
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070016/ {
17 serial@f991e000 {
18 status = "ok";
19 };
20
21 qcom,mdss_edp@fd923400 {
22 status = "ok";
23 };
24
25 i2c@f9967000 {
26 battery@b {
27 compatible = "ti,bq28400-battery";
28 reg = <0xb>;
Eugene Yasmand72132d2013-01-20 13:00:52 +020029 ti,temp-cold = <2>; /* degree celsius */
30 ti,temp-hot = <43>; /* degree celsius */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070031 };
Amir Samuelov6b72fc62012-11-01 20:05:04 +020032
33 charger@2b {
34 compatible = "summit,smb350-charger";
35 reg = <0x2b>; /* 0x56/0x57 */
36 summit,stat-gpio = <&pm8941_gpios 30 0x00>;
37 summit,chg-en-n-gpio = <&pm8941_gpios 10 0x00>;
38 summit,chg-susp-n-gpio = <&pm8941_gpios 13 0x00>;
39 summit,chg-current-ma = <1600>;
40 summit,term-current-ma = <300>;
41 };
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070042 };
43
44 gpio_keys {
45 compatible = "gpio-keys";
46 input-name = "gpio-keys";
47
48 home {
49 label = "home";
50 gpios = <&pm8941_gpios 1 0x1>;
51 linux,input-type = <1>;
52 linux,code = <102>;
53 gpio-key,wakeup;
54 debounce-interval = <15>;
55 };
56
57 vol_down {
58 label = "volume_down";
59 gpios = <&pm8941_gpios 2 0x1>;
60 linux,input-type = <1>;
61 linux,code = <114>;
62 gpio-key,wakeup;
63 debounce-interval = <15>;
64 };
65
66 vol_up {
67 label = "volume_up";
68 gpios = <&pm8941_gpios 5 0x1>;
69 linux,input-type = <1>;
70 linux,code = <115>;
71 gpio-key,wakeup;
72 debounce-interval = <15>;
73 };
74 };
75
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070076 qcom,hdmi_tx@fd922100 {
77 status = "ok";
Ujwal Patel1a835132012-11-14 22:11:59 -080078
79 qcom,hdmi-tx-mux-sel = <&pm8841_mpps 3 0>;
80 qcom,hdmi-tx-mux-en = <&pm8841_mpps 4 0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070081 };
82
Mohan Pallaka8cc86d62012-11-09 11:29:47 +053083 drv2667_vreg: drv2667_vdd_vreg {
84 compatible = "regulator-fixed";
85 regulator-name = "vdd_drv2667";
86 };
87
Mohan Pallaka28f9fb42012-09-17 15:25:23 +053088 i2c@f9967000 {
89 ti-drv2667@59 {
90 compatible = "ti,drv2667";
91 reg = <0x59>;
92 vdd-supply = <&drv2667_vreg>;
93 vdd-i2c-supply = <&pm8941_s3>;
94 ti,label = "vibrator";
95 ti,gain = <2>;
96 ti,idle-timeout-ms = <20>;
97 ti,max-runtime-ms = <15000>;
98 ti,mode = <2>;
99 ti,wav-seq = [
100 /* wave form id */
101 01
102 /* header size, start and stop bytes */
103 05 80 06 00 09
104 /* repeat, amp, freq, duration, envelope */
105 01 ff 19 02 00];
106 };
107 };
108
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700109 i2c@f9924000 {
110 atmel_mxt_ts@4a {
111 compatible = "atmel,mxt-ts";
112 reg = <0x4a>;
113 interrupt-parent = <&msmgpio>;
114 interrupts = <61 0x2>;
115 vdd_ana-supply = <&pm8941_l22>;
116 vcc_i2c-supply = <&pm8941_s3>;
117 atmel,reset-gpio = <&msmgpio 60 0x00>;
118 atmel,irq-gpio = <&msmgpio 61 0x00>;
119 atmel,panel-coords = <0 0 1080 1920>;
120 atmel,display-coords = <0 0 1080 1920>;
Sreenivasulu Chalam Charlabf7f6212012-10-17 22:10:24 +0530121 atmel,i2c-pull-up;
Amy Maloche71880c52013-01-04 11:56:23 -0800122 atmel,no-force-update;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700123 atmel,cfg_1 {
124 atmel,family-id = <0xa2>;
125 atmel,variant-id = <0x00>;
126 atmel,version = <0x11>;
127 atmel,build = <0xaa>;
128 atmel,config = [
129 /* Object 6, Instance = 0 */
130 00 00 00 00 00 00
131 /* Object 38, Instance = 0 */
132 16 00 00 14 09 0C 00 00 00 00
133 00 00 00 00 00 00 00 00 00 00
134 00 00 00 00 00 00 00 00 00 00
135 00 00 00 00 00 00 00 00 00 00
136 00 00 00 00 00 00 00 00 00 00
137 00 00 00 00 00 00 00 00 00 00
138 00 00 00 00
139 /* Object 7, Instance = 0 */
140 FF FF 0A 03
141 /* Object 8, Instance = 0 */
142 5F 00 14 14 00 00 00 01 00 00
143 /* Object 9, Instance = 0 */
144 8F 00 00 20 34 00 87 3C 08 03
145 00 05 03 80 0A 14 14 0A 80 07
146 38 04 00 00 00 00 00 00 00 00
147 0F 0F 2E 33 02 00
148 /* Object 15, Instance = 0 */
149 00 00 00 00 00 00 00 00 00 00
150 00
151 /* Object 18, Instance = 0 */
152 04 00
153 /* Object 24, Instance = 0 */
154 00 00 00 00 00 00 00 00 00 00
155 00 00 00 00 00 00 00 00 00
156 /* Object 25, Instance = 0 */
157 00 00 54 6F F0 55 00 00 00 00
158 00 00 00 00 00
159 /* Object 27, Instance = 0 */
160 00 00 00 00 00 00 00
161 /* Object 40, Instance = 0 */
162 00 14 14 14 14
163 /* Object 42, Instance = 0 */
164 20 14 00 00 00 14 11 00 03 00
165 /* Object 43, Instance = 0 */
166 09 00 01 01 91 00 80 00 00 00
167 00 00
168 /* Object 46, Instance = 0 */
169 00 00 10 10 00 00 01 00 00 0F
170 0A
171 /* Object 47, Instance = 0 */
172 00 14 23 02 05 1E 01 78 03 10
173 00 00 0C 00 00 00 00 00 00 00
174 00 00
175 /* Object 55, Instance = 0 */
176 00 00 00 00 00 00 00
177 /* Object 56, Instance = 0 */
178 02 00 01 30 13 14 14 14 15 15
179 15 15 15 15 15 16 16 16 16 16
180 16 16 16 16 16 15 14 14 14 14
181 15 14 14 14 14 13 00 00 01 02
182 05 05 00 00 00 00 00 00 00 00
183 00
184 /* Object 57, Instance = 0 */
185 00 00 00
186 /* Object 61, Instance = 0 */
187 00 00 00 00 00
188 /* Object 62, Instance = 0 */
189 00 01 03 01 00 00 00 00 00 0A
190 0F 14 19 23 05 00 0A 05 05 69
191 23 23 34 11 64 06 06 04 40 00
192 00 00 00 00 69 4B 02 00 00 80
193 0A 14 14 18 18 10 10 80 00 80
194 00 00 0F 02 00 00 00 00 00 00
195 00 00 00 00 00 00 00 00 00 00
196 00 00 00 00
197 /* Object 63, Instance = 0 */
198 00 00 00 00 00 00 00 00 00 00
199 00 00
200 ];
201 };
Amy Malochef78eacc2013-02-25 19:30:00 -0800202 atmel,cfg_2 {
203 atmel,family-id = <0xa2>;
204 atmel,variant-id = <0x00>;
205 atmel,version = <0x11>;
206 atmel,build = <0xaa>;
207 atmel,config = [
208 /* Object 6, Instance = 0 */
209 00 00 00 00 00 00
210 /* Object 38, Instance = 0 */
211 19 01 00 0D 02 0D 00 00 00 00
212 00 00 00 00 00 00 00 00 00 00
213 00 00 00 00 00 00 00 00 00 00
214 00 00 00 00 00 00 00 00 00 00
215 00 00 00 00 00 00 00 00 00 00
216 00 00 00 00 00 00 00 00 00 00
217 00 00 00 00
218 /* Object 7, Instance = 0 */
219 20 08 32 C3
220 /* Object 8, Instance = 0 */
221 41 00 14 14 00 00 00 01 00 00
222 /* Object 9, Instance = 0 */
223 8F 00 00 20 34 00 87 4B 02 03
224 00 05 03 40 0A 14 14 0A 80 07
225 38 04 03 03 03 03 08 28 02 3C
226 0F 0F 2E 33 01 00
227 /* Object 15, Instance = 0 */
228 00 00 00 00 00 00 00 00 00 00
229 00
230 /* Object 18, Instance = 0 */
231 04 00
232 /* Object 24, Instance = 0 */
233 00 00 00 00 00 00 00 00 00 00
234 00 00 00 00 00 00 00 00 00
235 /* Object 25, Instance = 0 */
236 00 00 54 6F F0 55 00 00 00 00
237 00 00 00 00 00
238 /* Object 27, Instance = 0 */
239 00 00 00 00 00 00 00
240 /* Object 40, Instance = 0 */
241 00 14 14 14 14
242 /* Object 42, Instance = 0 */
243 23 32 14 14 80 00 0A 00 05 05
244 /* Object 43, Instance = 0 */
245 08 00 01 01 91 00 80 00 00 00
246 00 00
247 /* Object 46, Instance = 0 */
248 00 00 18 18 00 00 01 00 00 0F
249 0A
250 /* Object 47, Instance = 0 */
251 00 14 28 02 05 28 01 78 03 10
252 00 00 0C 00 00 00 00 00 00 00
253 00 00
254 /* Object 55, Instance = 0 */
255 00 00 00 00 00 00 00
256 /* Object 56, Instance = 0 */
257 01 00 00 30 13 14 14 14 15 15
258 15 15 15 15 15 16 16 16 16 16
259 16 16 16 16 16 15 14 14 14 14
260 15 14 14 14 14 13 03 20 03 01
261 0A 04 00 00 00 00 00 00 00 00
262 1A
263 /* Object 57, Instance = 0 */
264 00 00 00
265 /* Object 61, Instance = 0 */
266 00 00 00 00 00
267 /* Object 62, Instance = 0 */
268 00 03 00 07 02 00 00 00 00 00
269 0F 17 23 2D 05 00 05 03 03 69
270 14 14 34 11 64 06 06 04 40 00
271 00 00 00 00 69 3C 02 04 01 00
272 0A 14 14 03 03 03 03 00 00 00
273 00 64 1E 01 00 00 00 00 00 00
274 00 00 00 00 00 00 00 00 00 00
275 00 00 00 00
276 /* Object 63, Instance = 0 */
277 00 00 00 00 00 00 00 00 00 00
278 00 00
279 /* Object 65, Instance = 0 */
280 00 00 00 00 00 00 00 00 00 00
281 00 00 00 00 00 00 00
282 /* Object 66, Instance = 0 */
283 00 00 00 00 00
284 ];
285 };
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700286 };
287 };
288
289 ext_5v: regulator-smb210 {
290 compatible = "regulator-fixed";
291 regulator-name = "ext_5v";
292 gpio = <&pm8941_mpps 2 0>;
Eugene Yasman8d2d68d2012-11-13 15:00:58 +0200293 startup-delay-us = <12000>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700294 enable-active-high;
295 };
Tanya Finkelb4fea122012-11-14 14:23:37 +0200296
Pradeep Panigrahic2a86fe2013-02-22 10:49:01 +0530297 bt_ar3002 {
298 compatible = "qca,ar3002";
299 qca,bt-reset-gpio = <&pm8941_gpios 34 0>;
300 };
301
Tanya Finkelb4fea122012-11-14 14:23:37 +0200302 sound {
303 qcom,model = "msm8974-taiko-liquid-snd-card";
Tanya Finkel4ecb6a02012-11-30 22:04:42 +0200304
305 qcom,audio-routing =
306 "RX_BIAS", "MCLK",
307 "LDO_H", "MCLK",
308 "Lineout_1 amp", "LINEOUT1",
309 "Lineout_3 amp", "LINEOUT3",
310 "Lineout_2 amp", "LINEOUT2",
311 "Lineout_4 amp", "LINEOUT4",
Tanya Finkel88340112013-01-21 15:38:55 +0200312 "AMIC1", "MIC BIAS4 External",
313 "MIC BIAS4 External", "Analog Mic4",
Tanya Finkel4ecb6a02012-11-30 22:04:42 +0200314 "AMIC2", "MIC BIAS2 External",
315 "MIC BIAS2 External", "Headset Mic",
316 "AMIC3", "MIC BIAS2 External",
317 "MIC BIAS2 External", "ANCRight Headset Mic",
318 "AMIC4", "MIC BIAS2 External",
319 "MIC BIAS2 External", "ANCLeft Headset Mic",
Tanya Finkel88340112013-01-21 15:38:55 +0200320 "AMIC5", "MIC BIAS1 External",
321 "MIC BIAS1 External", "Analog Mic6",
322 "AMIC6", "MIC BIAS1 External",
323 "MIC BIAS1 External", "Analog Mic7",
Tanya Finkel70e29ed2012-12-06 21:51:16 +0200324 "DMIC1", "MIC BIAS3 External",
Tanya Finkel88340112013-01-21 15:38:55 +0200325 "MIC BIAS3 External", "Digital Mic1",
Tanya Finkel70e29ed2012-12-06 21:51:16 +0200326 "DMIC2", "MIC BIAS3 External",
Tanya Finkel88340112013-01-21 15:38:55 +0200327 "MIC BIAS3 External", "Digital Mic2",
Tanya Finkel70e29ed2012-12-06 21:51:16 +0200328 "DMIC3", "MIC BIAS2 External",
Tanya Finkel88340112013-01-21 15:38:55 +0200329 "MIC BIAS2 External", "Digital Mic3",
Tanya Finkel4ecb6a02012-11-30 22:04:42 +0200330 "DMIC4", "MIC BIAS3 External",
331 "MIC BIAS3 External", "Digital Mic4",
Tanya Finkel70e29ed2012-12-06 21:51:16 +0200332 "DMIC5", "MIC BIAS2 External",
Tanya Finkel88340112013-01-21 15:38:55 +0200333 "MIC BIAS2 External", "Digital Mic5",
Tanya Finkel70e29ed2012-12-06 21:51:16 +0200334 "DMIC6", "MIC BIAS2 External",
Tanya Finkel88340112013-01-21 15:38:55 +0200335 "MIC BIAS2 External", "Digital Mic6";
Tanya Finkel4ecb6a02012-11-30 22:04:42 +0200336
Tanya Finkelb4fea122012-11-14 14:23:37 +0200337 qcom,ext-spk-amp-supply = <&ext_5v>;
338 qcom,ext-spk-amp-gpio = <&pm8841_mpps 1 0>;
Tanya Finkelca619322013-01-20 15:43:58 +0200339 qcom,dock-plug-det-irq = <&pm8841_mpps 2 0>;
Kiran Kandi52650322012-12-11 15:49:39 -0800340 qcom,hdmi-audio-rx;
Tanya Finkelb4fea122012-11-14 14:23:37 +0200341 };
Eugene Yasman588351a2012-12-10 11:37:17 +0200342
343 hsic_hub {
344 compatible = "qcom,hsic-smsc-hub";
345 #address-cells = <1>;
346 #size-cells = <1>;
347 ranges;
348 smsc,reset-gpio = <&pm8941_gpios 8 0x00>;
349 smsc,refclk-gpio = <&pm8941_gpios 16 0x00>;
350 smsc,int-gpio = <&msmgpio 50 0x00>;
351 hub_int-supply = <&pm8941_l10>;
352 hub_vbus-supply = <&ext_5v>;
353
Manu Gautam0df3d132013-03-13 07:21:22 +0530354 hsic_host: hsic@f9a00000 {
Eugene Yasman588351a2012-12-10 11:37:17 +0200355 compatible = "qcom,hsic-host";
356 reg = <0xf9a00000 0x400>;
Manu Gautam0df3d132013-03-13 07:21:22 +0530357 #address-cells = <0>;
358 interrupt-parent = <&hsic_host>;
359 interrupts = <0 1 2>;
360 #interrupt-cells = <1>;
361 interrupt-map-mask = <0xffffffff>;
362 interrupt-map = <0 &intc 0 136 0
363 1 &intc 0 148 0
364 2 &msmgpio 144 0x8>;
365 interrupt-names = "core_irq", "async_irq", "wakeup";
Eugene Yasman588351a2012-12-10 11:37:17 +0200366 HSIC_VDDCX-supply = <&pm8841_s2>;
367 HSIC_GDSC-supply = <&gdsc_usb_hsic>;
368 hsic,strobe-gpio = <&msmgpio 144 0x00>;
369 hsic,data-gpio = <&msmgpio 145 0x00>;
370 hsic,ignore-cal-pad-config;
371 hsic,strobe-pad-offset = <0x2050>;
372 hsic,data-pad-offset = <0x2054>;
Manu Gautamcb7e9632013-03-18 12:44:08 +0530373
374 qcom,msm-bus,name = "hsic";
375 qcom,msm-bus,num-cases = <2>;
376 qcom,msm-bus,active-only = <0>;
377 qcom,msm-bus,num-paths = <1>;
378 qcom,msm-bus,vectors-KBps =
379 <85 512 0 0>,
380 <85 512 40000 160000>;
Eugene Yasman588351a2012-12-10 11:37:17 +0200381 };
382 };
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700383};
384
Adrian Salido-Moreno9954ca62013-01-30 14:39:04 -0800385&mdss_fb0 {
386 qcom,memory-reservation-size = <0x1000000>; /* size 16MB */
387};
388
Mayank Rana35f27802013-02-14 18:22:50 +0530389&uart7 {
390 status = "ok";
391 qcom,tx-gpio = <&msmgpio 41 0x00>;
392 qcom,rx-gpio = <&msmgpio 42 0x00>;
393 qcom,cts-gpio = <&msmgpio 43 0x00>;
394 qcom,rfr-gpio = <&msmgpio 44 0x00>;
395};
396
Manu Gautam5ee54032012-11-02 15:17:32 +0530397&usb3 {
David Keitelf2170cc2013-02-20 17:49:03 -0800398 qcom,otg-capability;
Manu Gautam5ee54032012-11-02 15:17:32 +0530399};
400
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700401&pm8941_mvs1 {
402 parent-supply = <&ext_5v>;
403};
404
405&pm8941_mvs2 {
406 parent-supply = <&ext_5v>;
407};
408
409&pm8941_gpios {
410 gpio@c000 { /* GPIO 1 */
411 qcom,mode = <0>;
412 qcom,pull = <0>;
413 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700414 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700415 };
416
417 gpio@c100 { /* GPIO 2 */
418 qcom,mode = <0>;
419 qcom,pull = <0>;
420 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700421 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700422 };
423
424 gpio@c200 { /* GPIO 3 */
425 };
426
427 gpio@c300 { /* GPIO 4 */
428 };
429
430 gpio@c400 { /* GPIO 5 */
431 qcom,mode = <0>;
432 qcom,pull = <0>;
433 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700434 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700435 };
436
437 gpio@c500 { /* GPIO 6 */
438 };
439
440 gpio@c600 { /* GPIO 7 */
441 };
442
443 gpio@c700 { /* GPIO 8 */
Eugene Yasman588351a2012-12-10 11:37:17 +0200444 /* HSIC_HUB-RESET */
445 qcom,mode = <1>; /* DIG_OUT */
446 qcom,pull = <5>; /* PULL_NO */
447 qcom,out-strength = <2>; /* STRENGTH_MED */
448 qcom,master-en = <1>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700449 };
450
451 gpio@c800 { /* GPIO 9 */
452 };
453
454 gpio@c900 { /* GPIO 10 */
Amir Samuelov6b72fc62012-11-01 20:05:04 +0200455 /* SMB350-CHG-EN-N */
456 qcom,mode = <1>; /* DIG_OUT */
457 qcom,output-type = <0>; /* CMOS */
458 qcom,pull = <5>; /* PULL_NO */
459 qcom,vin-sel = <0>; /* VPH */
460 qcom,out-strength = <2>; /* STRENGTH_MED */
461 qcom,src-sel = <0>; /* CONSTANT */
462 qcom,master-en = <1>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700463 };
464
465 gpio@ca00 { /* GPIO 11 */
466 };
467
468 gpio@cb00 { /* GPIO 12 */
469 };
470
471 gpio@cc00 { /* GPIO 13 */
Amir Samuelov6b72fc62012-11-01 20:05:04 +0200472 /* SMB350-CHG-SUSP-N */
473 qcom,mode = <1>; /* DIG_OUT */
474 qcom,output-type = <0>; /* CMOS */
475 qcom,pull = <5>; /* PULL_NO */
476 qcom,vin-sel = <0>; /* VPH */
477 qcom,out-strength = <2>; /* STRENGTH_MED */
478 qcom,src-sel = <0>; /* CONSTANT */
479 qcom,master-en = <1>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700480 };
481
482 gpio@cd00 { /* GPIO 14 */
483 };
484
485 gpio@ce00 { /* GPIO 15 */
486 qcom,mode = <1>;
487 qcom,output-type = <0>;
488 qcom,pull = <5>;
489 qcom,vin-sel = <2>;
490 qcom,out-strength = <3>;
Michael Bohand734fb22012-10-30 14:19:22 -0700491 qcom,src-sel = <2>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700492 qcom,master-en = <1>;
493 };
494
495 gpio@cf00 { /* GPIO 16 */
Eugene Yasman588351a2012-12-10 11:37:17 +0200496 /* HSIC_HUB-INT_N */
497 qcom,mode = <1>;
498 qcom,output-type = <0>;
499 qcom,pull = <5>;
500 qcom,vin-sel = <2>;
501 qcom,out-strength = <3>;
502 qcom,src-sel = <2>;
503 qcom,master-en = <1>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700504 };
505
506 gpio@d000 { /* GPIO 17 */
507 };
508
509 gpio@d100 { /* GPIO 18 */
510 };
511
512 gpio@d200 { /* GPIO 19 */
513 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
514 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
515 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
516 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
517 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
Michael Bohand734fb22012-10-30 14:19:22 -0700518 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700519 qcom,master-en = <1>;
520 };
521
522 gpio@d300 { /* GPIO 20 */
523 };
524
525 gpio@d400 { /* GPIO 21 */
526 };
527
528 gpio@d500 { /* GPIO 22 */
529 };
530
531 gpio@d600 { /* GPIO 23 */
532 };
533
534 gpio@d700 { /* GPIO 24 */
535 };
536
537 gpio@d800 { /* GPIO 25 */
538 };
539
540 gpio@d900 { /* GPIO 26 */
541 };
542
543 gpio@da00 { /* GPIO 27 */
544 };
545
546 gpio@db00 { /* GPIO 28 */
547 };
548
549 gpio@dc00 { /* GPIO 29 */
550 qcom,pull = <0>; /* set to default pull */
551 qcom,master-en = <1>;
552 qcom,vin-sel = <2>; /* select 1.8 V source */
553 };
554
555 gpio@dd00 { /* GPIO 30 */
Amir Samuelov6b72fc62012-11-01 20:05:04 +0200556 /* SMB350-STAT */
557 qcom,mode = <0>; /* DIG_IN */
558 qcom,pull = <5>; /* PULL_NO */
559 qcom,vin-sel = <2>; /* S3 1.8V */
560 qcom,src-sel = <0>; /* CONSTANT */
561 qcom,master-en = <1>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700562 };
563
564 gpio@de00 { /* GPIO 31 */
565 };
566
567 gpio@df00 { /* GPIO 32 */
568 };
569
570 gpio@e000 { /* GPIO 33 */
Alexander Lifshitz7cddb5e2012-11-14 15:46:37 +0200571 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
572 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
573 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
574 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
575 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
576 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
577 qcom,invert = <1>;
578 qcom,master-en = <1>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700579 };
580
581 gpio@e100 { /* GPIO 34 */
Alexander Lifshitz7cddb5e2012-11-14 15:46:37 +0200582 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
583 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
584 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
585 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
586 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
587 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
588 qcom,invert = <0>;
589 qcom,master-en = <1>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700590 };
591
592 gpio@e200 { /* GPIO 35 */
593 };
594
595 gpio@e300 { /* GPIO 36 */
596 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
597 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
598 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
599 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
600 qcom,out-strength = <3>; /* QPNP_PIN_OUT_STRENGTH_HIGH */
Michael Bohand734fb22012-10-30 14:19:22 -0700601 qcom,src-sel = <3>; /* QPNP_PIN_SEL_FUNC_2 */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700602 qcom,master-en = <1>;
603 };
604};
605
606&pm8941_mpps {
607
608 mpp@a000 { /* MPP 1 */
609 };
610
611 mpp@a100 { /* MPP 2 */
612 /* ext_5v regulator enable */
613 qcom,mode = <1>; /* Digital output */
614 qcom,invert = <0>; /* Output low initially */
615 qcom,vin-sel = <2>; /* PM8941 S3 = 1.8 V */
Michael Bohand734fb22012-10-30 14:19:22 -0700616 qcom,src-sel = <0>; /* Constant */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700617 qcom,master-en = <1>; /* Enable MPP */
618 };
619
620 mpp@a200 { /* MPP 3 */
621 };
622
623 mpp@a300 { /* MPP 4 */
624 };
625
626 mpp@a400 { /* MPP 5 */
627 /* SPI_ETH config */
628 qcom,mode = <1>; /* DIG_OUT */
629 qcom,output-type = <0>; /* CMOS */
630 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
Michael Bohand734fb22012-10-30 14:19:22 -0700631 qcom,src-sel = <0>; /* CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700632 qcom,master-en = <1>; /* ENABLE MPP */
633 };
634
635 mpp@a500 { /* MPP 6 */
636 /* SPI_ETH_RST config */
637 qcom,mode = <1>; /* DIG_OUT */
638 qcom,output-type = <0>; /* CMOS */
639 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
Michael Bohand734fb22012-10-30 14:19:22 -0700640 qcom,src-sel = <0>; /* CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700641 qcom,master-en = <1>; /* ENABLE MPP */
642 };
643
644 mpp@a600 { /* MPP 7 */
645 };
646
647 mpp@a700 { /* MPP 8 */
648 };
649};
650
651&pm8841_mpps {
652
653 mpp@a000 { /* MPP 1 */
Tanya Finkelb4fea122012-11-14 14:23:37 +0200654 /* CLASS_D_EN speakers PA */
655 qcom,mode = <1>; /* DIG_OUT */
656 qcom,output-type = <0>; /* PNP_PIN_OUT_BUF_CMOS */
657 qcom,vin-sel = <2>; /* S3A 1.8v */
658 qcom,src-select = <0>; /* CONSTANT */
659 qcom,master-en = <1>; /* ENABLE MPP */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700660 };
661
662 mpp@a100 { /* MPP 2 */
Tanya Finkelca619322013-01-20 15:43:58 +0200663 /* DOCK_PLUG_DET speakers+docking detect irq*/
664 qcom,mode = <0>; /* DIG_IN */
665 qcom,vin-sel = <2>; /* S3A 1.8v */
666 qcom,src-sel = <0>; /* CONSTANT */
667 qcom,master-en = <1>; /* ENABLE MPP */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700668 };
669
670 mpp@a200 { /* HDMI_MUX_SEL MPP 3*/
671 status = "ok";
672 qcom,mode = <1>; /* DIG_OUT */
673 qcom,output-type = <0>; /* CMOS */
674 qcom,vin-sel = <2>; /* PM8841_S3A 1.8V */
Michael Bohand734fb22012-10-30 14:19:22 -0700675 qcom,src-sel = <0>; /* CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700676 qcom,master-en = <1>; /* ENABLE MPP */
677 };
678
679 mpp@a300 { /* HDMI_MUX_EN MPP 4*/
680 status = "ok";
681 qcom,mode = <1>; /* DIG_OUT */
682 qcom,output-type = <0>; /* CMOS */
683 qcom,vin-sel = <0>; /* PM8841_VPH 3.4V */
Michael Bohand734fb22012-10-30 14:19:22 -0700684 qcom,src-sel = <0>; /* CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700685 qcom,master-en = <1>; /* ENABLE MPP */
686 };
Sreenivasulu Chalam Charlabf7f6212012-10-17 22:10:24 +0530687};
Siddartha Mohanadosse9f24de2012-11-02 17:13:18 -0700688
Tanya Finkel5f9a3d12013-01-05 01:25:17 +0200689&slim_msm {
690 taiko_codec {
691 qcom,cdc-micbias2-ext-cap;
Kiran Kandi4041f7f2013-02-07 23:17:18 -0800692 qcom,cdc-micbias3-ext-cap;
Tanya Finkel5f9a3d12013-01-05 01:25:17 +0200693 };
694};
695
Siddartha Mohanadosse9f24de2012-11-02 17:13:18 -0700696&spi_epm {
697 epm-adc@0 {
698 compatible = "cy,epm-adc-cy8c5568lti-114";
699 reg = <0>;
700 interrupt-parent = <&msmgpio>;
701 spi-max-frequency = <960000>;
702 qcom,channels = <31>;
703 qcom,gain = <50 50 50 50 50 100 50 50 50 50
704 50 50 50 50 100 50 50 50 50 100
705 50 50 50 100 50 50 50 1 1 1
706 1>;
707 qcom,rsense = <40 10 10 25 10 1000 75 25 10 25
708 33 500 200 10 500 100 33 200 25 100
709 75 500 50 200 5 5 3 1 1 1
710 1>;
711 qcom,channel-type = <0xf0000000>;
712 };
713};
Asaf Penso001cc3a2013-01-21 21:15:10 +0200714
715&spmi_bus {
716 qcom,pm8941@1 {
717 qcom,leds@d000 {
718 qcom,rgb_2 {
719 status = "ok";
720 qcom,default-state = "on";
721 qcom,turn-off-delay-ms = <1000>;
722 };
723 };
724 };
725};
David Keitelf2170cc2013-02-20 17:49:03 -0800726
727&pm8941_chg {
728 status = "ok";
729
730 qcom,chg-charging-disabled;
731
732 qcom,chg-chgr@1000 {
733 status = "ok";
734 };
735
736 qcom,chg-buck@1100 {
737 status = "ok";
738 };
739
740 qcom,chg-usb-chgpth@1300 {
741 status = "ok";
742 };
743
744 qcom,chg-dc-chgpth@1400 {
745 status = "ok";
746 };
747
748 qcom,chg-boost@1500 {
749 status = "ok";
750 };
751
752 qcom,chg-misc@1600 {
753 status = "ok";
754 };
755};
Venkat Gopalakrishnan9855edd2012-09-17 15:05:13 -0700756
757&sdhc_1 {
758 vdd-supply = <&pm8941_l20>;
759 vdd-io-supply = <&pm8941_s3>;
760
761 qcom,vdd-voltage-level = <2950000 2950000>;
762 qcom,vdd-current-level = <800 500000>;
763
764 qcom,vdd-io-always-on;
765 qcom,vdd-io-voltage-level = <1800000 1800000>;
766 qcom,vdd-io-current-level = <250 154000>;
767
768 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
769 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
770 qcom,pad-drv-on = <0x7 0x4 0x4>; /* 16mA, 10mA, 10mA */
771 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
772
773 qcom,nonremovable;
774};
775
776&sdhc_2 {
777 vdd-supply = <&pm8941_l21>;
778 vdd-io-supply = <&pm8941_l13>;
779
780 qcom,vdd-voltage-level = <2950000 2950000>;
781 qcom,vdd-current-level = <9000 800000>;
782
783 qcom,vdd-io-always-on;
784 qcom,vdd-io-lpm-sup;
785 qcom,vdd-io-voltage-level = <1800000 2950000>;
786 qcom,vdd-io-current-level = <6 22000>;
787
788 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
789 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
790 qcom,pad-drv-on = <0x7 0x4 0x4>; /* 16mA, 10mA, 10mA */
791 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
792};