blob: 65e6080428b3fc86a392c80e89c570d82365ab20 [file] [log] [blame]
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -07001/* Copyright (c) 2012, The Linux Foundation. All rights reserved.
2 *
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 Ramkumar39074612012-10-11 20:48:51 -070014/include/ "msm8974-camera-sensor.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
22 qcom,mdss_dsi@fd922800 {
23 qcom,mdss_dsi_toshiba_720p_video {
24 status = "ok";
25 };
26 };
27
28 qcom,hdmi_tx@fd922100 {
29 status = "ok";
30 };
31
32 i2c@f9924000 {
33 atmel_mxt_ts@4a {
34 compatible = "atmel,mxt-ts";
35 reg = <0x4a>;
36 interrupt-parent = <&msmgpio>;
37 interrupts = <61 0x2>;
38 vdd_ana-supply = <&pm8941_l18>;
39 vcc_i2c-supply = <&pm8941_lvs1>;
40 atmel,reset-gpio = <&msmgpio 60 0x00>;
41 atmel,irq-gpio = <&msmgpio 61 0x00>;
42 atmel,panel-coords = <0 0 760 1424>;
43 atmel,display-coords = <0 0 720 1280>;
Sreenivasulu Chalam Charlabf7f6212012-10-17 22:10:24 +053044 atmel,i2c-pull-up;
45 atmel,no-force-update;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -070046 atmel,cfg_1 {
47 atmel,family-id = <0x82>;
48 atmel,variant-id = <0x19>;
49 atmel,version = <0x10>;
50 atmel,build = <0xaa>;
51 atmel,config = [
52 /* Object 6, Instance = 0 */
53 00 00 00 00 00 00
54 /* Object 38, Instance = 0 */
55 15 00 02 10 08 0C 00 00
56 /* Object 7, Instance = 0 */
57 FF FF 32 03
58 /* Object 8, Instance = 0 */
59 0F 00 0A 0A 00 00 0A 00 00 00
60 /* Object 9, Instance = 0 */
61 83 00 00 18 0E 00 70 32 02 01
62 00 03 01 01 05 0A 0A 0A 90 05
63 F8 02 00 00 0F 0F 00 00 48 2D
64 07 0C 00 00 00 00
65 /* Object 15, Instance = 0 */
66 00 00 00 00 00 00 00 00 00 00
67 00
68 /* Object 18, Instance = 0 */
69 00 00
70 /* Object 19, Instance = 0 */
71 00 00 00 00 00 00
72 /* Object 23, Instance = 0 */
73 00 00 00 00 00 00 00 00 00 00
74 00 00 00 00 00
75 /* Object 25, Instance = 0 */
76 00 00 00 00 00 00 00 00 00 00
77 00 00 00 00 00
78 /* Object 40, Instance = 0 */
79 00 00 00 00 00
80 /* Object 42, Instance = 0 */
81 00 00 00 00 00 00 00 00 00 00
82 /* Object 46, Instance = 0 */
83 00 00 10 10 00 00 03 00 00 01
84 /* Object 47, Instance = 0 */
85 08 0A 28 0A 02 0A 00 8C 00 20
86 00 00 00
87 /* Object 55, Instance = 0 */
88 00 00 00 00 00 00
89 /* Object 56, Instance = 0 */
90 03 00 01 18 05 05 05 05 05 05
91 05 05 05 05 05 05 05 05 05 05
92 05 05 05 05 05 05 05 05 00 00
93 00 00 00 00 00 00 00 00 00 00
94 00 00
95 /* Object 57, Instance = 0 */
96 00 00 00
97 /* Object 61, Instance = 0 */
98 00 00 00 00 00
99 /* Object 61, Instance = 1 */
100 00 00 00 00 00
101 /* Object 62, Instance = 0 */
102 7F 03 00 16 00 00 00 00 00 00
103 04 08 10 18 05 00 0A 05 05 50
104 14 19 34 1A 64 00 00 04 40 00
105 00 00 00 00 30 32 02 00 01 00
106 05 00 00 00 00 00 00 00 00 00
107 00 00 0C 00
108 ];
109 };
110 };
111 };
112
113 gpio_keys {
114 compatible = "gpio-keys";
115 input-name = "gpio-keys";
116
117 camera_snapshot {
118 label = "camera_snapshot";
119 gpios = <&pm8941_gpios 3 0x1>;
120 linux,input-type = <1>;
121 linux,code = <0x2fe>;
122 gpio-key,wakeup;
123 debounce-interval = <15>;
124 };
125
126 camera_focus {
127 label = "camera_focus";
128 gpios = <&pm8941_gpios 4 0x1>;
129 linux,input-type = <1>;
130 linux,code = <0x210>;
131 gpio-key,wakeup;
132 debounce-interval = <15>;
133 };
134
135 vol_up {
136 label = "volume_up";
137 gpios = <&pm8941_gpios 5 0x1>;
138 linux,input-type = <1>;
139 linux,code = <115>;
140 gpio-key,wakeup;
141 debounce-interval = <15>;
142 };
143 };
144
145 spi@f9923000 {
146 ethernet-switch@2 {
147 compatible = "micrel,ks8851";
148 reg = <2>;
149 interrupt-parent = <&msmgpio>;
150 interrupts = <94 0>;
151 spi-max-frequency = <4800000>;
152 rst-gpio = <&pm8941_mpps 6 0>;
153 vdd-io-supply = <&spi_eth_vreg>;
154 vdd-phy-supply = <&spi_eth_vreg>;
155 };
156 };
Phani Kumar Uppalapatia2129872012-11-08 20:36:45 -0800157
158 sound {
159 compatible = "qcom,msm8974-audio-taiko";
160 qcom,model = "msm8974-taiko-fluid-snd-card";
161
162 qcom,audio-routing =
163 "RX_BIAS", "MCLK",
164 "LDO_H", "MCLK",
165 "Ext Spk Bottom Pos", "LINEOUT1",
166 "Ext Spk Bottom Neg", "LINEOUT3",
167 "Ext Spk Top Pos", "LINEOUT2",
168 "Ext Spk Top Neg", "LINEOUT4",
169 "AMIC1", "MIC BIAS1 Internal1",
170 "MIC BIAS1 Internal1", "Handset Mic",
171 "AMIC2", "MIC BIAS2 External",
172 "MIC BIAS2 External", "Headset Mic",
173 "AMIC3", "MIC BIAS2 External",
174 "MIC BIAS2 External", "ANCRight Headset Mic",
175 "AMIC4", "MIC BIAS2 External",
176 "MIC BIAS2 External", "ANCLeft Headset Mic",
177 "DMIC1", "MIC BIAS1 External",
178 "MIC BIAS1 External", "Digital Mic1",
179 "DMIC2", "MIC BIAS1 External",
180 "MIC BIAS1 External", "Digital Mic2",
181 "DMIC3", "MIC BIAS3 External",
182 "MIC BIAS3 External", "Digital Mic3",
183 "DMIC4", "MIC BIAS3 External",
184 "MIC BIAS3 External", "Digital Mic4",
185 "DMIC5", "MIC BIAS4 External",
186 "MIC BIAS4 External", "Digital Mic5",
187 "DMIC6", "MIC BIAS4 External",
188 "MIC BIAS4 External", "Digital Mic6";
189
190 qcom,cdc-mclk-gpios = <&pm8941_gpios 15 0>;
191 taiko-mclk-clk = <&pm8941_clkdiv1>;
192 qcom,taiko-mclk-clk-freq = <9600000>;
193 };
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700194};
195
Amy Maloche24de28b2012-09-17 12:09:56 -0700196&spmi_bus {
197 qcom,pm8941@1 {
198 qcom,leds@d800 {
199 status = "okay";
200 qcom,wled_0 {
201 label = "wled";
202 linux,name = "wled:backlight";
203 linux,default-trigger = "bkl-trigger";
204 qcom,cs-out-en;
205 qcom,op-fdbck;
206 qcom,default-state = "off";
207 qcom,max-current = <25>;
208 qcom,ctrl-delay-us = <0>;
209 qcom,boost-curr-lim = <3>;
210 qcom,cp-sel = <0>;
211 qcom,switch-freq = <2>;
212 qcom,ovp-val = <2>;
213 qcom,num-strings = <1>;
214 qcom,id = <0>;
215 };
216 };
217
218 qcom,leds@d900 {
219 status = "disabled";
220 };
221
222 qcom,leds@da00 {
223 status = "disabled";
224 };
225
226 qcom,leds@db00 {
227 status = "disabled";
228 };
229
230 qcom,leds@dc00 {
231 status = "disabled";
232 };
233
234 qcom,leds@dd00 {
235 status = "disabled";
236 };
237
238 qcom,leds@de00 {
239 status = "disabled";
240 };
241
242 qcom,leds@df00 {
243 status = "disabled";
244 };
245
246 qcom,leds@e000 {
247 status = "disabled";
248 };
249
250 qcom,leds@e100 {
251 status = "disabled";
252 };
253 };
254};
255
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700256&sdcc1 {
Oluwafemi Adeyemi6cdfdb82012-11-02 13:36:29 -0700257 qcom,bus-width = <4>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700258};
259
260&sdcc2 {
261 #address-cells = <0>;
262 interrupt-parent = <&sdcc2>;
263 interrupts = <0 1 2>;
264 #interrupt-cells = <1>;
265 interrupt-map-mask = <0xffffffff>;
266 interrupt-map = <0 &intc 0 125 0
267 1 &intc 0 220 0
268 2 &msmgpio 62 0x3>;
269 interrupt-names = "core_irq", "bam_irq", "status_irq";
270 cd-gpios = <&msmgpio 62 0x1>;
271};
272
273&pm8941_gpios {
274 gpio@c000 { /* GPIO 1 */
275 };
276
277 gpio@c100 { /* GPIO 2 */
278 };
279
280 gpio@c200 { /* GPIO 3 */
281 qcom,mode = <0>;
282 qcom,pull = <0>;
283 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700284 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700285 };
286
287 gpio@c300 { /* GPIO 4 */
288 qcom,mode = <0>;
289 qcom,pull = <0>;
290 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700291 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700292 };
293
294 gpio@c400 { /* GPIO 5 */
295 qcom,mode = <0>;
296 qcom,pull = <0>;
297 qcom,vin-sel = <2>;
Michael Bohand734fb22012-10-30 14:19:22 -0700298 qcom,src-sel = <0>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700299 };
300
301 gpio@c500 { /* GPIO 6 */
302 };
303
304 gpio@c600 { /* GPIO 7 */
305 };
306
307 gpio@c700 { /* GPIO 8 */
308 };
309
310 gpio@c800 { /* GPIO 9 */
311 };
312
313 gpio@c900 { /* GPIO 10 */
314 };
315
316 gpio@ca00 { /* GPIO 11 */
317 };
318
319 gpio@cb00 { /* GPIO 12 */
320 };
321
322 gpio@cc00 { /* GPIO 13 */
323 };
324
325 gpio@cd00 { /* GPIO 14 */
326 };
327
328 gpio@ce00 { /* GPIO 15 */
329 qcom,mode = <1>;
330 qcom,output-type = <0>;
331 qcom,pull = <5>;
332 qcom,vin-sel = <2>;
333 qcom,out-strength = <3>;
Michael Bohand734fb22012-10-30 14:19:22 -0700334 qcom,src-sel = <2>;
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700335 qcom,master-en = <1>;
336 };
337
338 gpio@cf00 { /* GPIO 16 */
339 };
340
341 gpio@d000 { /* GPIO 17 */
342 };
343
344 gpio@d100 { /* GPIO 18 */
345 };
346
347 gpio@d200 { /* GPIO 19 */
348 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
349 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
350 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
351 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
352 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
Michael Bohand734fb22012-10-30 14:19:22 -0700353 qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700354 qcom,master-en = <1>;
355 };
356
357 gpio@d300 { /* GPIO 20 */
358 };
359
360 gpio@d400 { /* GPIO 21 */
361 };
362
363 gpio@d500 { /* GPIO 22 */
364 };
365
366 gpio@d600 { /* GPIO 23 */
367 };
368
369 gpio@d700 { /* GPIO 24 */
370 };
371
372 gpio@d800 { /* GPIO 25 */
373 };
374
375 gpio@d900 { /* GPIO 26 */
376 };
377
378 gpio@da00 { /* GPIO 27 */
379 };
380
381 gpio@db00 { /* GPIO 28 */
382 };
383
384 gpio@dc00 { /* GPIO 29 */
385 qcom,pull = <0>; /* set to default pull */
386 qcom,master-en = <1>;
387 qcom,vin-sel = <2>; /* select 1.8 V source */
388 };
389
390 gpio@dd00 { /* GPIO 30 */
391 };
392
393 gpio@de00 { /* GPIO 31 */
394 };
395
396 gpio@df00 { /* GPIO 32 */
397 };
398
399 gpio@e000 { /* GPIO 33 */
400 };
401
402 gpio@e100 { /* GPIO 34 */
403 };
404
405 gpio@e200 { /* GPIO 35 */
406 };
407
408 gpio@e300 { /* GPIO 36 */
409 };
410};
411
412&pm8941_mpps {
413
414 mpp@a000 { /* MPP 1 */
415 };
416
417 mpp@a100 { /* MPP 2 */
418 };
419
420 mpp@a200 { /* MPP 3 */
421 };
422
423 mpp@a300 { /* MPP 4 */
424 };
425
426 mpp@a400 { /* MPP 5 */
427 /* SPI_ETH config */
428 qcom,mode = <1>; /* DIG_OUT */
429 qcom,output-type = <0>; /* CMOS */
430 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
Michael Bohand734fb22012-10-30 14:19:22 -0700431 qcom,src-sel = <0>; /* CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700432 qcom,master-en = <1>; /* ENABLE MPP */
433 };
434
435 mpp@a500 { /* MPP 6 */
436 /* SPI_ETH_RST config */
437 qcom,mode = <1>; /* DIG_OUT */
438 qcom,output-type = <0>; /* CMOS */
439 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
Michael Bohand734fb22012-10-30 14:19:22 -0700440 qcom,src-sel = <0>; /* CONSTANT */
Stepan Moskovchenko7731cd12012-10-23 14:44:15 -0700441 qcom,master-en = <1>; /* ENABLE MPP */
442 };
443
444 mpp@a600 { /* MPP 7 */
445 };
446
447 mpp@a700 { /* MPP 8 */
448 };
449};
450
451&pm8841_mpps {
452
453 mpp@a000 { /* MPP 1 */
454 };
455
456 mpp@a100 { /* MPP 2 */
457 };
458
459 mpp@a200 { /* MPP 3 */
460 };
461
462 mpp@a300 { /* MPP 4 */
463 };
464};