blob: 3dd517ba965996172aea7067212d733a68a6cdd1 [file] [log] [blame]
Hanumant Singh2278ab32013-02-21 15:32:17 -08001/* 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/include/ "msm8226.dtsi"
Ray Zhang764496b2013-02-27 09:11:06 +080015/include/ "dsi-panel-nt35590-720p-video.dtsi"
Sreesudhan Ramakrish Ramkumaraffd42f2013-04-01 23:38:23 -070016/include/ "msm8226-camera-sensor-mtp.dtsi"
Hanumant Singh2278ab32013-02-21 15:32:17 -080017
18/ {
19 model = "Qualcomm MSM 8226 MTP";
Stepan Moskovchenkoa971a752013-04-03 16:51:37 -070020 compatible = "qcom,msm8226-mtp", "qcom,msm8226", "qcom,mtp";
Syed Rameez Mustafa64a1c672013-03-02 18:32:27 -080021 qcom,msm-id = <145 8 0>;
Stepan Moskovchenko7d8cdcaa2013-04-25 17:10:55 -070022};
Hanumant Singh2278ab32013-02-21 15:32:17 -080023
Stepan Moskovchenko7d8cdcaa2013-04-25 17:10:55 -070024&soc {
Hanumant Singh2278ab32013-02-21 15:32:17 -080025 serial@f991f000 {
Syed Rameez Mustafa96d52592013-03-02 19:21:49 -080026 status = "ok";
Hanumant Singh2278ab32013-02-21 15:32:17 -080027 };
Amy Maloche41708ba2013-03-03 15:19:27 -080028
Ray Zhang764496b2013-02-27 09:11:06 +080029 qcom,mdss_dsi_nt35590_720p_video {
30 status = "ok";
31 };
32
Amy Maloche41708ba2013-03-03 15:19:27 -080033 i2c@f9927000 { /* BLSP1 QUP5 */
34 synaptics@20 {
35 compatible = "synaptics,rmi4";
36 reg = <0x20>;
37 interrupt-parent = <&msmgpio>;
Amy Malochefcaf14f2013-04-11 18:09:32 -070038 interrupts = <17 0x2008>;
Amy Maloche41708ba2013-03-03 15:19:27 -080039 vdd-supply = <&pm8226_l19>;
40 vcc_i2c-supply = <&pm8226_lvs1>;
41 synaptics,reset-gpio = <&msmgpio 16 0x00>;
Amy Maloche2278a972013-04-23 12:08:30 -070042 synaptics,irq-gpio = <&msmgpio 17 0x2008>;
Amy Maloche41708ba2013-03-03 15:19:27 -080043 synaptics,button-map = <139 102 158>;
44 synaptics,i2c-pull-up;
45 synaptics,reg-en;
46 };
47 };
Amy Maloche24c59dd2013-03-05 11:43:55 -080048
49 gpio_keys {
50 compatible = "gpio-keys";
51 input-name = "gpio-keys";
52
53 camera_focus {
54 label = "camera_focus";
55 gpios = <&msmgpio 108 0x1>;
56 linux,input-type = <1>;
57 linux,code = <0x210>;
58 gpio-key,wakeup;
59 debounce-interval = <15>;
60 };
61
62 camera_snapshot {
63 label = "camera_snapshot";
64 gpios = <&msmgpio 107 0x1>;
65 linux,input-type = <1>;
66 linux,code = <0x2fe>;
67 gpio-key,wakeup;
68 debounce-interval = <15>;
69 };
70
71 vol_up {
72 label = "volume_up";
73 gpios = <&msmgpio 106 0x1>;
74 linux,input-type = <1>;
75 linux,code = <115>;
76 gpio-key,wakeup;
77 debounce-interval = <15>;
78 };
79 };
aiqunyb1e82f32013-03-13 15:35:53 -070080
81 spi@f9923000 {
82 ethernet-switch@3 {
83 compatible = "micrel,ks8851";
84 reg = <3>;
85 interrupt-parent = <&msmgpio>;
86 interrupts = <0 115 0>;
87 spi-max-frequency = <4800000>;
88 rst-gpio = <&msmgpio 114 0>;
89 vdd-io-supply = <&pm8226_lvs1>;
90 vdd-phy-supply = <&pm8226_lvs1>;
91 };
92 };
Bhalchandra Gajarecb0508d2013-03-07 17:33:14 -080093
94 sound {
Bhalchandra Gajareba5e89a2013-03-18 18:29:03 -070095 qcom,audio-routing =
96 "RX_BIAS", "MCLK",
97 "LDO_H", "MCLK",
98 "SPK_OUT", "MCLK",
99 "SPK_OUT", "EXT_VDD_SPKR",
100 "AMIC1", "MIC BIAS1 External",
101 "MIC BIAS1 External", "Handset Mic",
102 "AMIC2", "MIC BIAS2 External",
103 "MIC BIAS2 External", "Headset Mic",
104 "AMIC3", "MIC BIAS1 External",
105 "MIC BIAS1 External", "ANCRight Headset Mic",
106 "AMIC4", "MIC BIAS2 External",
107 "MIC BIAS2 External", "ANCLeft Headset Mic";
108
Bhalchandra Gajarecb0508d2013-03-07 17:33:14 -0800109 qcom,cdc-mclk-gpios = <&pm8226_gpios 1 0>;
Bhalchandra Gajareb5120842013-03-14 17:50:39 -0700110 qcom,cdc-vdd-spkr-gpios = <&pm8226_gpios 2 0>;
Bhalchandra Gajarecb0508d2013-03-07 17:33:14 -0800111 };
Syed Rameez Mustafa64a1c672013-03-02 18:32:27 -0800112};
Krishna Konda0fb72092013-02-26 16:35:51 -0800113
114&sdcc1 {
115 vdd-supply = <&pm8226_l17>;
116 qcom,vdd-always-on;
117 qcom,vdd-lpm-sup;
118 qcom,vdd-voltage-level = <2950000 2950000>;
119 qcom,vdd-current-level = <800 500000>;
120
121 vdd-io-supply = <&pm8226_l6>;
122 qcom,vdd-io-always-on;
123 qcom,vdd-io-voltage-level = <1800000 1800000>;
124 qcom,vdd-io-current-level = <250 154000>;
125
126 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
127 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
Krishna Konda6c5d0f42013-04-12 16:44:26 -0700128 qcom,pad-drv-on = <0x4 0x4 0x4>; /* 10mA, 10mA, 10mA */
Krishna Konda0fb72092013-02-26 16:35:51 -0800129 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
130
131 qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;
132 qcom,sup-voltages = <2950 2950>;
133
134 qcom,bus-speed-mode = "HS200_1p8v", "DDR_1p8v";
135 qcom,nonremovable;
136
Sahitya Tummala8d8141c2013-03-28 11:08:26 +0530137 status = "disabled";
Krishna Konda0fb72092013-02-26 16:35:51 -0800138};
139
Sahitya Tummala9e001362013-03-28 11:00:55 +0530140&sdhc_1 {
141 vdd-supply = <&pm8226_l17>;
142 qcom,vdd-always-on;
143 qcom,vdd-lpm-sup;
144 qcom,vdd-voltage-level = <2950000 2950000>;
145 qcom,vdd-current-level = <800 500000>;
146
147 vdd-io-supply = <&pm8226_l6>;
148 qcom,vdd-io-always-on;
149 qcom,vdd-io-voltage-level = <1800000 1800000>;
150 qcom,vdd-io-current-level = <250 154000>;
151
152 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
153 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
154 qcom,pad-drv-on = <0x4 0x4 0x4>; /* 10mA, 10mA, 10mA */
155 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
156
157 qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;
158 qcom,bus-speed-mode = "HS200_1p8v", "DDR_1p8v";
159 qcom,nonremovable;
160
Sahitya Tummala8d8141c2013-03-28 11:08:26 +0530161 status = "ok";
Sahitya Tummala9e001362013-03-28 11:00:55 +0530162};
163
Krishna Konda0fb72092013-02-26 16:35:51 -0800164&sdcc2 {
165 vdd-supply = <&pm8226_l18>;
166 qcom,vdd-voltage-level = <2950000 2950000>;
167 qcom,vdd-current-level = <9000 800000>;
168
169 vdd-io-supply = <&pm8226_l21>;
170 qcom,vdd-io-always-on;
171 qcom,vdd-io-lpm-sup;
172 qcom,vdd-io-voltage-level = <1800000 2950000>;
173 qcom,vdd-io-current-level = <6 22000>;
174
175 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
176 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
Krishna Konda6c5d0f42013-04-12 16:44:26 -0700177 qcom,pad-drv-on = <0x4 0x4 0x4>; /* 10mA, 10mA, 10mA */
Krishna Konda0fb72092013-02-26 16:35:51 -0800178 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
179
180 qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;
181 qcom,sup-voltages = <2950 2950>;
182
183 qcom,xpc;
184 qcom,bus-speed-mode = "SDR12", "SDR25", "SDR50", "DDR50", "SDR104";
185 qcom,current-limit = <600>; #address-cells = <0>; interrupt-parent = <&sdcc2>;
186 interrupts = <0 1 2>;
187 #interrupt-cells = <1>;
188 interrupt-map-mask = <0xffffffff>;
189 interrupt-map = <0 &intc 0 125 0
190 1 &intc 0 220 0
191 2 &msmgpio 38 0x3>;
192 interrupt-names = "core_irq", "bam_irq", "status_irq";
193 cd-gpios = <&msmgpio 38 0x1>;
194
Sahitya Tummala8d8141c2013-03-28 11:08:26 +0530195 status = "disabled";
Krishna Konda0fb72092013-02-26 16:35:51 -0800196};
Amy Maloched699b942013-03-03 15:47:52 -0800197
Sahitya Tummala9e001362013-03-28 11:00:55 +0530198&sdhc_2 {
199 vdd-supply = <&pm8226_l18>;
200 qcom,vdd-voltage-level = <2950000 2950000>;
201 qcom,vdd-current-level = <9000 800000>;
202
203 vdd-io-supply = <&pm8226_l21>;
204 qcom,vdd-io-always-on;
205 qcom,vdd-io-lpm-sup;
206 qcom,vdd-io-voltage-level = <1800000 2950000>;
207 qcom,vdd-io-current-level = <6 22000>;
208
209 qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
210 qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */
211 qcom,pad-drv-on = <0x4 0x4 0x4>; /* 10mA, 10mA, 10mA */
212 qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */
213
214 qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;
215
216 #address-cells = <0>;
217 interrupt-parent = <&sdhc_2>;
218 interrupts = <0 1 2>;
219 #interrupt-cells = <1>;
220 interrupt-map-mask = <0xffffffff>;
221 interrupt-map = <0 &intc 0 125 0
222 1 &intc 0 221 0
223 2 &msmgpio 38 0x3>;
224 interrupt-names = "hc_irq", "pwr_irq", "status_irq";
225 cd-gpios = <&msmgpio 38 0x1>;
226
Sahitya Tummala8d8141c2013-03-28 11:08:26 +0530227 status = "ok";
Sahitya Tummala9e001362013-03-28 11:00:55 +0530228};
229
Amy Maloched699b942013-03-03 15:47:52 -0800230&spmi_bus {
231 qcom,pm8226@1 {
Fenglin Wu3a707802013-03-21 14:34:20 -0700232 qcom,leds@d300 {
233 status = "okay";
234 };
235
Amy Maloched699b942013-03-03 15:47:52 -0800236 qcom,leds@d800 {
237 status = "okay";
238 qcom,wled_0 {
239 label = "wled";
240 linux,name = "wled:backlight";
241 linux,default-trigger = "bkl-trigger";
242 qcom,cs-out-en;
Amy Malochebd687672013-03-18 11:23:45 -0700243 qcom,op-fdbck = <1>;
Amy Maloched699b942013-03-03 15:47:52 -0800244 qcom,default-state = "on";
245 qcom,max-current = <25>;
246 qcom,ctrl-delay-us = <0>;
247 qcom,boost-curr-lim = <3>;
248 qcom,cp-sel = <0>;
249 qcom,switch-freq = <2>;
Amy Malochef0789c52013-03-26 17:37:32 -0700250 qcom,ovp-val = <0>;
Amy Maloched699b942013-03-03 15:47:52 -0800251 qcom,num-strings = <1>;
252 qcom,id = <0>;
253 };
254 };
255 };
256};
David Keitel7f3f8252013-02-27 15:24:44 -0800257
258&pm8226_gpios {
259 gpio@c000 { /* GPIO 1 */
Bhalchandra Gajarecb0508d2013-03-07 17:33:14 -0800260 /* XO_PMIC_CDC_MCLK enable for tapan codec */
261 qcom,mode = <1>; /* Digital output */
262 qcom,output-type = <0>; /* CMOS logic */
263 qcom,pull = <5>; /* QPNP_PIN_PULL_NO*/
David Keitel75eabfb2013-04-15 19:28:56 -0700264 qcom,vin-sel = <3>; /* QPNP_PIN_VIN3 */
Bhalchandra Gajarecb0508d2013-03-07 17:33:14 -0800265 qcom,out-strength = <3>;/* QPNP_PIN_OUT_STRENGTH_HIGH */
266 qcom,src-sel = <2>; /* QPNP_PIN_SEL_FUNC_1 */
267 qcom,master-en = <1>; /* Enable GPIO */
David Keitel7f3f8252013-02-27 15:24:44 -0800268 };
269
270 gpio@c100 { /* GPIO 2 */
Bhalchandra Gajareb5120842013-03-14 17:50:39 -0700271 qcom,mode = <1>;
272 qcom,output-type = <0>;
273 qcom,pull = <5>;
David Keitel75eabfb2013-04-15 19:28:56 -0700274 qcom,vin-sel = <3>;
Bhalchandra Gajareb5120842013-03-14 17:50:39 -0700275 qcom,out-strength = <3>;
276 qcom,src-sel = <2>;
277 qcom,master-en = <1>;
David Keitel7f3f8252013-02-27 15:24:44 -0800278 };
279
280 gpio@c200 { /* GPIO 3 */
281 };
282
283 gpio@c300 { /* GPIO 4 */
284 };
285
286 gpio@c400 { /* GPIO 5 */
287 };
288
289 gpio@c500 { /* GPIO 6 */
290 };
291
292 gpio@c600 { /* GPIO 7 */
293 };
294
295 gpio@c700 { /* GPIO 8 */
296 };
297};
298
299&pm8226_mpps {
300 mpp@a000 { /* MPP 1 */
301 };
302
303 mpp@a100 { /* MPP 2 */
304 };
305
306 mpp@a200 { /* MPP 3 */
307 };
308
309 mpp@a300 { /* MPP 4 */
310 };
311
312 mpp@a400 { /* MPP 5 */
Siddartha Mohanadossa38803a2013-03-06 10:25:48 -0800313 /* PA_THERM0 config */
314 qcom,mode = <4>; /* AIN input */
315 qcom,invert = <1>; /* Enable MPP */
316 qcom,ain-route = <0>; /* AMUX 5 */
317 qcom,master-en = <1>;
318 qcom,src-sel = <0>; /* Function constant */
David Keitel7f3f8252013-02-27 15:24:44 -0800319 };
320
321 mpp@a500 { /* MPP 6 */
322 };
323
324 mpp@a600 { /* MPP 7 */
325 };
326
327 mpp@a700 { /* MPP 8 */
Siddartha Mohanadossa38803a2013-03-06 10:25:48 -0800328 /* PA_THERM1 config */
329 qcom,mode = <4>; /* AIN input */
330 qcom,invert = <1>; /* Enable MPP */
331 qcom,ain-route = <3>; /* AMUX 8 */
332 qcom,master-en = <1>;
333 qcom,src-sel = <0>; /* Function constant */
David Keitel7f3f8252013-02-27 15:24:44 -0800334 };
335};
Siddartha Mohanadoss175a6c32013-03-06 10:47:08 -0800336
337&pm8226_vadc {
338 chan@14 {
339 label = "pa_therm0";
340 reg = <0x14>;
341 qcom,decimation = <0>;
342 qcom,pre-div-channel-scaling = <0>;
343 qcom,calibration-type = "ratiometric";
344 qcom,scale-function = <2>;
345 qcom,hw-settle-time = <2>;
346 qcom,fast-avg-setup = <0>;
347 };
348
349 chan@17 {
350 label = "pa_therm1";
351 reg = <0x17>;
352 qcom,decimation = <0>;
353 qcom,pre-div-channel-scaling = <0>;
354 qcom,calibration-type = "ratiometric";
355 qcom,scale-function = <2>;
356 qcom,hw-settle-time = <2>;
357 qcom,fast-avg-setup = <0>;
358 };
359};
Xiaozhe Shi36fc6eb2013-04-02 10:45:53 -0700360
361&pm8226_bms {
362 status = "ok";
363};
David Keitela2a6ff82013-04-09 16:52:54 -0700364
365&pm8226_chg {
366 qcom,charging-disabled;
367};