blob: bbdc2b8df62d3ed8464663bf02395e6eb319160f [file] [log] [blame]
Hanumant Singhce222232013-03-19 14:19:59 -07001/* Copyright (c) 2013, 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/dts-v1/;
14
15/include/ "msm8610.dtsi"
Xiaoming Zhou3727c4d2013-03-29 09:24:29 -040016/include/ "dsi-v2-panel-truly-wvga-video.dtsi"
Lokesh Kumar Aakulu25213502013-05-07 17:43:03 -070017/include/ "msm8610-camera-sensor-cdp-mtp.dtsi"
Hanumant Singhce222232013-03-19 14:19:59 -070018
19/ {
20 model = "Qualcomm MSM 8610 CDP";
Stepan Moskovchenkoa971a752013-04-03 16:51:37 -070021 compatible = "qcom,msm8610-cdp", "qcom,msm8610", "qcom,cdp";
Abhimanyu Kapur35bc0842013-04-19 20:02:58 -070022 qcom,msm-id = <147 1 0>, <165 1 0>, <161 1 0>, <162 1 0>,
23 <163 1 0>, <164 1 0>, <166 1 0>;
Stepan Moskovchenko7d8cdcaa2013-04-25 17:10:55 -070024};
Hanumant Singhce222232013-03-19 14:19:59 -070025
Stepan Moskovchenko7d8cdcaa2013-04-25 17:10:55 -070026&soc {
Hanumant Singh6b346712013-04-09 16:26:09 -070027 serial@f991e000 {
Hanumant Singhce222232013-03-19 14:19:59 -070028 status = "ok";
29 };
Chun Zhangf39a0652013-05-01 15:57:54 -070030
31 i2c@f9923000{
32 atmel_mxt_ts@4a {
33 compatible = "atmel,mxt-ts";
34 reg = <0x4a>;
35 interrupt-parent = <&msmgpio>;
36 interrupts = <1 0x2>;
37 vdd_ana-supply = <&pm8110_l19>;
38 vcc_i2c-supply = <&pm8110_l14>;
39 atmel,reset-gpio = <&msmgpio 0 0x00>;
40 atmel,irq-gpio = <&msmgpio 1 0x00>;
41 atmel,panel-coords = <0 0 508 880>;
42 atmel,display-coords = <0 0 480 800>;
43 atmel,i2c-pull-up;
44 atmel,no-force-update;
45 atmel,cfg_1 {
46 atmel,family-id = <0x81>;
47 atmel,variant-id = <0x15>;
48 atmel,version = <0x11>;
49 atmel,build = <0xaa>;
50 atmel,config = [
51 /* Object 6, Instance = 0 */
52 00 00 00 00 00 00
53 /* Object 38, Instance = 0 */
54 1D 01 00 0C 04 0D 00 00
55 /* Object 7, Instance = 0 */
56 20 08 32
57 /* Object 8, Instance = 0 */
58 19 00 14 14 FF 00 FF 00 00 00
59 /* Object 9, Instance = 0 */
60 83 00 00 13 0B 00 20 32 01 03
61 00 32 05 30 0A 05 0A 00 70 03
62 FC 01 00 36 2F 2C 00 00 40 00
63 00 0A 00 00 02
64 /* Object 18, Instance = 0 */
65 00 00
66 /* Object 19, Instance = 0 */
67 00 00 00 00 00 00
68 /* Object 25, Instance = 0 */
69 03 00 18 79 A8 61
70 /* Object 58, Instance = 0 */
71 00 00 00 00 00 00 00 00 00 00
72 00
73 /* Object 42, Instance = 0 */
74 00 00 00 00 00 00 00 00
75 /* Object 46, Instance = 0 */
76 04 03 08 10 00 00 00 00 00
77 /* Object 47, Instance = 0 */
78 00 00 00 00 00 00 00 00 00 00
79 /* Object 48, Instance = 0 */
80 00 00 00 00 00 00 00 00 00 00
81 00 00 00 00 00 00 00 00 00 00
82 00 00 00 00 00 00 00 00 00 00
83 00 00 00 00 00 00 00 00 00 00
84 00 00 00 00 00 00 00 00 00 00
85 00 00 00 00
86 /* Object 55, Instance = 0 */
87 00 00 00 00
88 ];
89 };
90 };
91 };
Chun Zhanga9508d82013-05-08 13:33:55 -070092
93 gen-vkeys {
94 compatible = "qcom,gen-vkeys";
95 label = "atmel_mxt_ts";
96 qcom,disp-maxx = <480>;
97 qcom,disp-maxy = <800>;
98 qcom,panel-maxx = <508>;
99 qcom,panel-maxy = <880>;
100 qcom,key-codes = <158 102 139>;
101 qcom,y-offset = <35>;
102 };
Chun Zhang59621fc2013-05-08 13:48:31 -0700103
104 gpio_keys {
105 compatible = "gpio-keys";
106 input-name = "gpio-keys";
107
108 camera_snapshot {
109 label = "camera_snapshot";
110 gpios = <&msmgpio 73 0x1>;
111 linux,input-type = <1>;
112 linux,code = <0x2fe>;
113 gpio-key,wakeup;
114 debounce-interval = <15>;
115 };
116
117 camera_focus {
118 label = "camera_focus";
119 gpios = <&msmgpio 74 0x1>;
120 linux,input-type = <1>;
121 linux,code = <0x210>;
122 gpio-key,wakeup;
123 debounce-interval = <15>;
124 };
125
126 vol_up {
127 label = "volume_up";
128 gpios = <&msmgpio 72 0x1>;
129 linux,input-type = <1>;
130 linux,code = <115>;
131 gpio-key,wakeup;
132 debounce-interval = <15>;
133 };
134 };
quic_yandongyd6d0bf22013-05-16 22:13:11 +0800135
136 sound {
137 qcom,audio-routing =
138 "RX_BIAS", "MCLK",
139 "INT_LDO_H", "MCLK",
140 "MIC BIAS External", "Handset Mic",
141 "MIC BIAS Internal2", "Headset Mic",
142 "AMIC1", "MIC BIAS External",
143 "AMIC2", "MIC BIAS Internal2";
144 };
Hanumant Singhce222232013-03-19 14:19:59 -0700145};
146
Kuirong Wangc6d072c2013-01-29 10:33:03 -0800147&i2c_cdc {
148 msm8x10_wcd_codec@0d{
149 compatible = "qcom,msm8x10-wcd-i2c";
150 reg = <0x0d>;
151 cdc-vdda-cp-supply = <&pm8110_s4>;
152 qcom,cdc-vdda-cp-voltage = <2150000 2150000>;
153 qcom,cdc-vdda-cp-current = <650000>;
154
155 cdc-vdda-h-supply = <&pm8110_l6>;
156 qcom,cdc-vdda-h-voltage = <1800000 1800000>;
157 qcom,cdc-vdda-h-current = <250000>;
158
159 cdc-vdd-px-supply = <&pm8110_l6>;
160 qcom,cdc-vdd-px-voltage = <1800000 1800000>;
161 qcom,cdc-vdd-px-current = <10000>;
162
163 cdc-vdd-1p2v-supply = <&pm8110_l4>;
164 qcom,cdc-vdd-1p2v-voltage = <1200000 1200000>;
165 qcom,cdc-vdd-1p2v-current = <5000>;
166
167 cdc-vdd-mic-bias-supply = <&pm8110_l20>;
168 qcom,cdc-vdd-mic-bias-voltage = <3075000 3075000>;
169 qcom,cdc-vdd-mic-bias-current = <25000>;
170
171 qcom,cdc-micbias-cfilt-sel = <0x0>;
172 qcom,cdc-micbias-cfilt-mv = <1800000>;
173 qcom,cdc-mclk-clk-rate = <12288000>;
174 };
175
176 msm8x10_wcd_codec@77{
177 compatible = "qcom,msm8x10-wcd-i2c";
178 reg = <0x77>;
179 };
180
181 msm8x10_wcd_codec@66{
182 compatible = "qcom,msm8x10-wcd-i2c";
183 reg = <0x66>;
184 };
185
186 msm8x10_wcd_codec@55{
187 compatible = "qcom,msm8x10-wcd-i2c";
188 reg = <0x55>;
189 };
190};
191
Amy Maloche9a113c12013-04-11 19:46:20 -0700192&spmi_bus {
193 qcom,pm8110@0 {
Chun Zhang9e808b82013-04-18 15:38:18 -0700194 qcom,leds@a100 {
195 status = "okay";
196 qcom,led_mpp_2 {
197 label = "mpp";
198 linux,name = "button-backlight";
199 linux-default-trigger = "hr-trigger";
200 qcom,default-state = "off";
201 qcom,max-current = <40>;
202 qcom,id = <6>;
203 qcom,source-sel = <1>;
204 qcom,mode-ctrl = <0x60>;
Amy Maloche33b42382013-05-29 16:13:51 -0700205 qcom,mode = "manual";
Chun Zhang9e808b82013-04-18 15:38:18 -0700206 };
207 };
208
Amy Maloche9a113c12013-04-11 19:46:20 -0700209 qcom,leds@a200 {
210 status = "okay";
211 qcom,led_mpp_3 {
212 label = "mpp";
213 linux,name = "wled-backlight";
Chun Zhang970bf5d2013-04-23 13:58:25 -0700214 linux,default-trigger = "bkl-trigger";
Amy Maloche9a113c12013-04-11 19:46:20 -0700215 qcom,default-state = "on";
216 qcom,max-current = <40>;
217 qcom,id = <6>;
218 qcom,source-sel = <1>;
219 qcom,mode-ctrl = <0x10>;
Amy Maloche33b42382013-05-29 16:13:51 -0700220 qcom,mode = "manual";
Amy Maloche9a113c12013-04-11 19:46:20 -0700221 };
222 };
223 };
224};
225
Linux Build Service Accountc9771c62013-05-02 14:18:17 -0700226&spmi_bus {
Chun Zhang3450f832013-04-15 11:46:29 -0700227 qcom,pm8110@1 {
228 qcom,vibrator@c000 {
229 status = "okay";
230 qcom,vib-timeout-ms = <15000>;
231 qcom,vib-vtg-level-mV = <3100>;
232 };
233 };
234};
235
Venkat Gopalakrishnana6ce5f22013-04-04 14:24:57 -0700236&sdhc_1 {
237 vdd-supply = <&pm8110_l17>;
238 qcom,vdd-always-on;
239 qcom,vdd-lpm-sup;
240 qcom,vdd-voltage-level = <2900000 2900000>;
241 qcom,vdd-current-level = <200 400000>;
242
243 vdd-io-supply = <&pm8110_l6>;
244 qcom,vdd-io-always-on;
Venkat Gopalakrishnan7636d142013-05-17 12:34:45 -0700245 qcom,vdd-io-lpm-sup;
Venkat Gopalakrishnana6ce5f22013-04-04 14:24:57 -0700246 qcom,vdd-io-voltage-level = <1800000 1800000>;
247 qcom,vdd-io-current-level = <200 60000>;
248
249 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
250 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
Venkat Gopalakrishnanaa6c1e62013-04-12 00:07:51 -0700251 qcom,pad-drv-on = <0x7 0x4 0x4>; /* 16mA, 10mA, 10mA */
Venkat Gopalakrishnana6ce5f22013-04-04 14:24:57 -0700252 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
253
254 qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;
255 qcom,bus-speed-mode = "HS200_1p8v", "DDR_1p8v";
256 qcom,nonremovable;
257
Venkat Gopalakrishnan587b2252013-04-05 12:16:50 -0700258 status = "ok";
Venkat Gopalakrishnana6ce5f22013-04-04 14:24:57 -0700259};
260
261&sdhc_2 {
262 vdd-supply = <&pm8110_l18>;
263 qcom,vdd-voltage-level = <2950000 2950000>;
264 qcom,vdd-current-level = <15000 400000>;
265
266 vdd-io-supply = <&pm8110_l21>;
Venkat Gopalakrishnana6ce5f22013-04-04 14:24:57 -0700267 qcom,vdd-io-voltage-level = <1800000 2950000>;
268 qcom,vdd-io-current-level = <200 50000>;
269
270 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
271 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
Venkat Gopalakrishnanaa6c1e62013-04-12 00:07:51 -0700272 qcom,pad-drv-on = <0x7 0x4 0x4>; /* 16mA, 10mA, 10mA */
Venkat Gopalakrishnana6ce5f22013-04-04 14:24:57 -0700273 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
274
275 qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;
276
277 #address-cells = <0>;
278 interrupt-parent = <&sdhc_2>;
279 interrupts = <0 1 2>;
280 #interrupt-cells = <1>;
281 interrupt-map-mask = <0xffffffff>;
282 interrupt-map = <0 &intc 0 125 0
283 1 &intc 0 221 0
284 2 &msmgpio 42 0x3>;
285 interrupt-names = "hc_irq", "pwr_irq", "status_irq";
286 cd-gpios = <&msmgpio 42 0x1>;
287
Venkat Gopalakrishnan587b2252013-04-05 12:16:50 -0700288 status = "ok";
Venkat Gopalakrishnana6ce5f22013-04-04 14:24:57 -0700289};
Xiaozhe Shif7d9daf2013-04-08 15:29:55 -0700290
291&pm8110_chg {
292 status = "ok";
Xiaozhe Shi8bc042a2013-04-18 15:44:08 -0700293 qcom,charging-disabled;
294 qcom,use-default-batt-values;
Xiaozhe Shif7d9daf2013-04-08 15:29:55 -0700295
Xiaozhe Shi8bc042a2013-04-18 15:44:08 -0700296 qcom,chgr@1000 {
Xiaozhe Shif7d9daf2013-04-08 15:29:55 -0700297 status = "ok";
298 };
299
Xiaozhe Shi8bc042a2013-04-18 15:44:08 -0700300 qcom,buck@1100 {
Xiaozhe Shif7d9daf2013-04-08 15:29:55 -0700301 status = "ok";
302 };
303
Xiaozhe Shi8bc042a2013-04-18 15:44:08 -0700304 qcom,usb-chgpth@1300 {
Xiaozhe Shif7d9daf2013-04-08 15:29:55 -0700305 status = "ok";
306 };
307
308 qcom,chg-misc@1600 {
309 status = "ok";
310 };
311};
Xiaozhe Shi3e3c5692013-04-24 10:36:32 -0700312
313&pm8110_gpios {
314 gpio@c000 { /* GPIO 1 */
315 };
316
317 gpio@c100 { /* GPIO 2 */
318 };
319
320 gpio@c200 { /* GPIO 3 */
321 };
322
323 gpio@c300 { /* GPIO 4 */
324 };
325};
326
327&pm8110_mpps {
328 mpp@a000 { /* MPP 1 */
329 };
330
331 mpp@a100 { /* MPP 2 */
Chun Zhangd0c63be2013-04-26 10:45:02 -0700332 status = "disabled";
Xiaozhe Shi3e3c5692013-04-24 10:36:32 -0700333 };
334
335 mpp@a200 { /* MPP 3 */
Chun Zhangd0c63be2013-04-26 10:45:02 -0700336 status = "disabled";
Xiaozhe Shi3e3c5692013-04-24 10:36:32 -0700337 };
338
339 mpp@a300 { /* MPP 4 */
Siddartha Mohanadoss6ef34562013-05-31 17:54:23 -0700340 /* PA_THERM config */
341 qcom,mode = <4>; /* AIN input */
342 qcom,invert = <1>; /* Enable MPP */
343 qcom,ain-route = <3>; /* AMUX 8 */
344 qcom,master-en = <1>;
345 qcom,src-sel = <0>; /* Function constant */
Xiaozhe Shi3e3c5692013-04-24 10:36:32 -0700346 };
347};
Pratik Pateldd3a52a2013-04-09 19:12:04 -0700348
349/* CoreSight */
350&tpiu {
351 qcom,seta-gpios = <&msmgpio 4 0>,
352 <&msmgpio 5 0>,
353 <&msmgpio 6 0>,
354 <&msmgpio 7 0>,
355 <&msmgpio 22 0>,
356 <&msmgpio 23 0>,
357 <&msmgpio 24 0>,
358 <&msmgpio 25 0>,
359 <&msmgpio 26 0>,
360 <&msmgpio 27 0>,
361 <&msmgpio 28 0>,
362 <&msmgpio 29 0>,
363 <&msmgpio 30 0>,
364 <&msmgpio 31 0>,
365 <&msmgpio 94 0>,
366 <&msmgpio 95 0>,
367 <&msmgpio 96 0>,
368 <&msmgpio 97 0>;
369 qcom,seta-gpios-func = <9 9 8 11 2 2 2 2 2 2 3 2 3 3 4 4 4 4>;
370 qcom,seta-gpios-drv = <7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7>;
371 qcom,seta-gpios-pull = <0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0>;
372 qcom,seta-gpios-dir = <2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2>;
373
374 qcom,setb-gpios = <&msmgpio 8 0>,
375 <&msmgpio 10 0>,
376 <&msmgpio 11 0>,
377 <&msmgpio 13 0>,
378 <&msmgpio 14 0>,
379 <&msmgpio 15 0>,
380 <&msmgpio 16 0>,
381 <&msmgpio 17 0>,
382 <&msmgpio 18 0>,
383 <&msmgpio 19 0>,
384 <&msmgpio 20 0>,
385 <&msmgpio 21 0>,
386 <&msmgpio 42 0>,
387 <&msmgpio 80 0>,
388 <&msmgpio 81 0>,
389 <&msmgpio 82 0>,
390 <&msmgpio 83 0>,
391 <&msmgpio 84 0>;
392 qcom,setb-gpios-func = <10 8 8 6 9 9 9 9 9 9 9 9 5 7 7 8 8 8>;
393 qcom,setb-gpios-drv = <7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7>;
394 qcom,setb-gpios-pull = <0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0>;
395 qcom,setb-gpios-dir = <2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2>;
396};