blob: 222c4cba1f04e1a1c616e91b24c9d40b5002d8d0 [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 MTP";
Stepan Moskovchenkoa971a752013-04-03 16:51:37 -070021 compatible = "qcom,msm8610-mtp", "qcom,msm8610", "qcom,mtp";
Abhimanyu Kapur35bc0842013-04-19 20:02:58 -070022 qcom,msm-id = <147 8 0>, <165 8 0>, <161 8 0>, <162 8 0>,
23 <163 8 0>, <164 8 0>, <166 8 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 {
David Ng1ecb8a12013-04-22 14:39:52 -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 };
Hanumant Singhce222232013-03-19 14:19:59 -0700135};
136
Kuirong Wangc6d072c2013-01-29 10:33:03 -0800137&i2c_cdc {
138 msm8x10_wcd_codec@0d{
139 compatible = "qcom,msm8x10-wcd-i2c";
140 reg = <0x0d>;
141 cdc-vdda-cp-supply = <&pm8110_s4>;
142 qcom,cdc-vdda-cp-voltage = <2150000 2150000>;
143 qcom,cdc-vdda-cp-current = <650000>;
144
145 cdc-vdda-h-supply = <&pm8110_l6>;
146 qcom,cdc-vdda-h-voltage = <1800000 1800000>;
147 qcom,cdc-vdda-h-current = <250000>;
148
149 cdc-vdd-px-supply = <&pm8110_l6>;
150 qcom,cdc-vdd-px-voltage = <1800000 1800000>;
151 qcom,cdc-vdd-px-current = <10000>;
152
153 cdc-vdd-1p2v-supply = <&pm8110_l4>;
154 qcom,cdc-vdd-1p2v-voltage = <1200000 1200000>;
155 qcom,cdc-vdd-1p2v-current = <5000>;
156
157 cdc-vdd-mic-bias-supply = <&pm8110_l20>;
158 qcom,cdc-vdd-mic-bias-voltage = <3075000 3075000>;
159 qcom,cdc-vdd-mic-bias-current = <25000>;
160
161 qcom,cdc-micbias-cfilt-sel = <0x0>;
162 qcom,cdc-micbias-cfilt-mv = <1800000>;
163 qcom,cdc-mclk-clk-rate = <12288000>;
164 };
165
166 msm8x10_wcd_codec@77{
167 compatible = "qcom,msm8x10-wcd-i2c";
168 reg = <0x77>;
169 };
170
171 msm8x10_wcd_codec@66{
172 compatible = "qcom,msm8x10-wcd-i2c";
173 reg = <0x66>;
174 };
175
176 msm8x10_wcd_codec@55{
177 compatible = "qcom,msm8x10-wcd-i2c";
178 reg = <0x55>;
179 };
180};
181
Amy Maloche9a113c12013-04-11 19:46:20 -0700182&spmi_bus {
183 qcom,pm8110@0 {
Chun Zhang9e808b82013-04-18 15:38:18 -0700184 qcom,leds@a100 {
185 status = "okay";
186 qcom,led_mpp_2 {
187 label = "mpp";
188 linux,name = "button-backlight";
189 linux-default-trigger = "hr-trigger";
190 qcom,default-state = "off";
191 qcom,max-current = <40>;
192 qcom,id = <6>;
193 qcom,source-sel = <1>;
194 qcom,mode-ctrl = <0x60>;
Amy Maloche33b42382013-05-29 16:13:51 -0700195 qcom,mode = "manual";
Chun Zhang9e808b82013-04-18 15:38:18 -0700196 };
197 };
198
Amy Maloche9a113c12013-04-11 19:46:20 -0700199 qcom,leds@a200 {
200 status = "okay";
201 qcom,led_mpp_3 {
202 label = "mpp";
203 linux,name = "wled-backlight";
Chun Zhang970bf5d2013-04-23 13:58:25 -0700204 linux,default-trigger = "bkl-trigger";
Amy Maloche9a113c12013-04-11 19:46:20 -0700205 qcom,default-state = "on";
206 qcom,max-current = <40>;
207 qcom,id = <6>;
208 qcom,source-sel = <1>;
209 qcom,mode-ctrl = <0x10>;
Amy Maloche33b42382013-05-29 16:13:51 -0700210 qcom,mode = "manual";
Amy Maloche9a113c12013-04-11 19:46:20 -0700211 };
212 };
213 };
214};
215
Linux Build Service Accountc9771c62013-05-02 14:18:17 -0700216&spmi_bus {
Chun Zhang3450f832013-04-15 11:46:29 -0700217 qcom,pm8110@1 {
218 qcom,vibrator@c000 {
219 status = "okay";
220 qcom,vib-timeout-ms = <15000>;
221 qcom,vib-vtg-level-mV = <3100>;
222 };
223 };
224};
225
Venkat Gopalakrishnana6ce5f22013-04-04 14:24:57 -0700226&sdhc_1 {
227 vdd-supply = <&pm8110_l17>;
228 qcom,vdd-always-on;
229 qcom,vdd-lpm-sup;
230 qcom,vdd-voltage-level = <2900000 2900000>;
231 qcom,vdd-current-level = <200 400000>;
232
233 vdd-io-supply = <&pm8110_l6>;
234 qcom,vdd-io-always-on;
Venkat Gopalakrishnan7636d142013-05-17 12:34:45 -0700235 qcom,vdd-io-lpm-sup;
Venkat Gopalakrishnana6ce5f22013-04-04 14:24:57 -0700236 qcom,vdd-io-voltage-level = <1800000 1800000>;
237 qcom,vdd-io-current-level = <200 60000>;
238
239 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
240 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
241 qcom,pad-drv-on = <0x4 0x4 0x4>; /* 10mA, 10mA, 10mA */
242 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
243
244 qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;
245 qcom,bus-speed-mode = "HS200_1p8v", "DDR_1p8v";
246 qcom,nonremovable;
247
Venkat Gopalakrishnan587b2252013-04-05 12:16:50 -0700248 status = "ok";
Venkat Gopalakrishnana6ce5f22013-04-04 14:24:57 -0700249};
250
251&sdhc_2 {
252 vdd-supply = <&pm8110_l18>;
253 qcom,vdd-voltage-level = <2950000 2950000>;
254 qcom,vdd-current-level = <15000 400000>;
255
256 vdd-io-supply = <&pm8110_l21>;
Venkat Gopalakrishnana6ce5f22013-04-04 14:24:57 -0700257 qcom,vdd-io-voltage-level = <1800000 2950000>;
258 qcom,vdd-io-current-level = <200 50000>;
259
260 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
261 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
262 qcom,pad-drv-on = <0x4 0x4 0x4>; /* 10mA, 10mA, 10mA */
263 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
264
265 qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;
266
267 #address-cells = <0>;
268 interrupt-parent = <&sdhc_2>;
269 interrupts = <0 1 2>;
270 #interrupt-cells = <1>;
271 interrupt-map-mask = <0xffffffff>;
272 interrupt-map = <0 &intc 0 125 0
273 1 &intc 0 221 0
274 2 &msmgpio 42 0x3>;
275 interrupt-names = "hc_irq", "pwr_irq", "status_irq";
276 cd-gpios = <&msmgpio 42 0x1>;
277
Venkat Gopalakrishnan587b2252013-04-05 12:16:50 -0700278 status = "ok";
Venkat Gopalakrishnana6ce5f22013-04-04 14:24:57 -0700279};
Xiaozhe Shif7d9daf2013-04-08 15:29:55 -0700280
281&pm8110_chg {
282 status = "ok";
Xiaozhe Shi8bc042a2013-04-18 15:44:08 -0700283 qcom,charging-disabled;
Xiaozhe Shif7d9daf2013-04-08 15:29:55 -0700284
Xiaozhe Shi8bc042a2013-04-18 15:44:08 -0700285 qcom,chgr@1000 {
Xiaozhe Shif7d9daf2013-04-08 15:29:55 -0700286 status = "ok";
287 };
288
Xiaozhe Shi8bc042a2013-04-18 15:44:08 -0700289 qcom,buck@1100 {
Xiaozhe Shif7d9daf2013-04-08 15:29:55 -0700290 status = "ok";
291 };
292
Xiaozhe Shi8bc042a2013-04-18 15:44:08 -0700293 qcom,bat-if@1200 {
Xiaozhe Shif7d9daf2013-04-08 15:29:55 -0700294 status = "ok";
295 };
296
Xiaozhe Shi8bc042a2013-04-18 15:44:08 -0700297 qcom,usb-chgpth@1300 {
Xiaozhe Shif7d9daf2013-04-08 15:29:55 -0700298 status = "ok";
299 };
300
301 qcom,chg-misc@1600 {
302 status = "ok";
303 };
304};
Xiaozhe Shi3e3c5692013-04-24 10:36:32 -0700305
306&pm8110_gpios {
307 gpio@c000 { /* GPIO 1 */
308 };
309
310 gpio@c100 { /* GPIO 2 */
311 };
312
313 gpio@c200 { /* GPIO 3 */
314 };
315
316 gpio@c300 { /* GPIO 4 */
317 };
318};
319
320&pm8110_mpps {
321 mpp@a000 { /* MPP 1 */
322 };
323
324 mpp@a100 { /* MPP 2 */
Chun Zhangd0c63be2013-04-26 10:45:02 -0700325 status = "disabled";
Xiaozhe Shi3e3c5692013-04-24 10:36:32 -0700326 };
327
328 mpp@a200 { /* MPP 3 */
Chun Zhangd0c63be2013-04-26 10:45:02 -0700329 status = "disabled";
Xiaozhe Shi3e3c5692013-04-24 10:36:32 -0700330 };
331
332 mpp@a300 { /* MPP 4 */
333 };
334};
Xiaozhe Shi294c7e22013-04-17 14:59:15 -0700335
336&pm8110_bms {
337 status = "ok";
338};