blob: 2eacb464c5fbd46f22f16cfb544ffc01369cd1ba [file] [log] [blame]
Amir Samuelovf3f42582012-09-06 14:34:09 +03001/* 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/dts-v1/;
14
15/include/ "msm8974.dtsi"
16
17/ {
18 model = "Qualcomm MSM 8974 LIQUID";
19 compatible = "qcom,msm8974-liquid", "qcom,msm8974";
20 qcom,msm-id = <126 9 0>;
21
22 serial@f991e000 {
23 status = "ok";
24 };
Amy Maloched96a26f2012-09-24 17:00:00 -070025
Asaf Penso4f186422012-10-18 11:25:15 +020026 qcom,mdss_edp@fd923400 {
27 status = "ok";
28 };
29
Amy Maloched96a26f2012-09-24 17:00:00 -070030 gpio_keys {
31 compatible = "gpio-keys";
32 input-name = "gpio-keys";
33
34 home {
35 label = "home";
36 gpios = <&pm8941_gpios 1 0x1>;
37 linux,input-type = <1>;
38 linux,code = <102>;
39 gpio-key,wakeup;
40 debounce-interval = <15>;
41 };
42
43 vol_down {
44 label = "volume_down";
45 gpios = <&pm8941_gpios 2 0x1>;
46 linux,input-type = <1>;
47 linux,code = <114>;
48 gpio-key,wakeup;
49 debounce-interval = <15>;
50 };
51
52 vol_up {
53 label = "volume_up";
54 gpios = <&pm8941_gpios 5 0x1>;
55 linux,input-type = <1>;
56 linux,code = <115>;
57 gpio-key,wakeup;
58 debounce-interval = <15>;
59 };
60 };
Ujwal Patelc8433752012-10-10 13:46:01 -070061
Adrian Salido-Moreno9eba7592012-10-19 18:02:17 -070062 qcom,mdss_mdp@fd900000 {
63 qcom,memory-reservation-size = <0x1000000>; /* size 16MB */
64 };
65
Ujwal Patelc8433752012-10-10 13:46:01 -070066 qcom,hdmi_tx@fd922100 {
67 status = "ok";
68 };
Amir Samuelov4c0a4b52012-09-11 11:22:07 +030069
70 i2c@f9924000 {
71 atmel_mxt_ts@4a {
72 compatible = "atmel,mxt-ts";
73 reg = <0x4a>;
74 interrupt-parent = <&msmgpio>;
75 interrupts = <61 0x2>;
76 vdd_ana-supply = <&pm8941_l22>;
77 vcc_i2c-supply = <&pm8941_s3>;
78 atmel,reset-gpio = <&msmgpio 60 0x00>;
79 atmel,irq-gpio = <&msmgpio 61 0x00>;
80 atmel,panel-coords = <0 0 1080 1920>;
81 atmel,display-coords = <0 0 1080 1920>;
82 atmel,i2c-pull-up = <1>;
83 atmel,cfg_1 {
84 atmel,family-id = <0xa2>;
85 atmel,variant-id = <0x00>;
86 atmel,version = <0x11>;
87 atmel,build = <0xaa>;
88 atmel,config = [
89 /* Object 6, Instance = 0 */
90 00 00 00 00 00 00
91 /* Object 38, Instance = 0 */
92 16 00 00 14 09 0C 00 00 00 00
93 00 00 00 00 00 00 00 00 00 00
94 00 00 00 00 00 00 00 00 00 00
95 00 00 00 00 00 00 00 00 00 00
96 00 00 00 00 00 00 00 00 00 00
97 00 00 00 00 00 00 00 00 00 00
98 00 00 00 00
99 /* Object 7, Instance = 0 */
100 FF FF 0A 03
101 /* Object 8, Instance = 0 */
102 5F 00 14 14 00 00 00 01 00 00
103 /* Object 9, Instance = 0 */
104 8F 00 00 20 34 00 87 3C 08 03
105 00 05 03 80 0A 14 14 0A 80 07
106 38 04 00 00 00 00 00 00 00 00
107 0F 0F 2E 33 02 00
108 /* Object 15, Instance = 0 */
109 00 00 00 00 00 00 00 00 00 00
110 00
111 /* Object 18, Instance = 0 */
112 04 00
113 /* Object 24, Instance = 0 */
114 00 00 00 00 00 00 00 00 00 00
115 00 00 00 00 00 00 00 00 00
116 /* Object 25, Instance = 0 */
117 00 00 54 6F F0 55 00 00 00 00
118 00 00 00 00 00
119 /* Object 27, Instance = 0 */
120 00 00 00 00 00 00 00
121 /* Object 40, Instance = 0 */
122 00 14 14 14 14
123 /* Object 42, Instance = 0 */
124 20 14 00 00 00 14 11 00 03 00
125 /* Object 43, Instance = 0 */
126 09 00 01 01 91 00 80 00 00 00
127 00 00
128 /* Object 46, Instance = 0 */
129 00 00 10 10 00 00 01 00 00 0F
130 0A
131 /* Object 47, Instance = 0 */
132 00 14 23 02 05 1E 01 78 03 10
133 00 00 0C 00 00 00 00 00 00 00
134 00 00
135 /* Object 55, Instance = 0 */
136 00 00 00 00 00 00 00
137 /* Object 56, Instance = 0 */
138 02 00 01 30 13 14 14 14 15 15
139 15 15 15 15 15 16 16 16 16 16
140 16 16 16 16 16 15 14 14 14 14
141 15 14 14 14 14 13 00 00 01 02
142 05 05 00 00 00 00 00 00 00 00
143 00
144 /* Object 57, Instance = 0 */
145 00 00 00
146 /* Object 61, Instance = 0 */
147 00 00 00 00 00
148 /* Object 62, Instance = 0 */
149 00 01 03 01 00 00 00 00 00 0A
150 0F 14 19 23 05 00 0A 05 05 69
151 23 23 34 11 64 06 06 04 40 00
152 00 00 00 00 69 4B 02 00 00 80
153 0A 14 14 18 18 10 10 80 00 80
154 00 00 0F 02 00 00 00 00 00 00
155 00 00 00 00 00 00 00 00 00 00
156 00 00 00 00
157 /* Object 63, Instance = 0 */
158 00 00 00 00 00 00 00 00 00 00
159 00 00
160 ];
161 };
162 };
163 };
Linux Build Service Account0d1cda52012-10-23 04:07:02 -0700164
David Collinsec642192012-10-12 14:01:59 -0700165 ext_5v: regulator-smb210 {
166 compatible = "regulator-fixed";
167 regulator-name = "ext_5v";
168 gpio = <&pm8941_mpps 2 0>;
169 enable-active-high;
170 };
171};
172
173&pm8941_mvs1 {
174 parent-supply = <&ext_5v>;
175};
176
177&pm8941_mvs2 {
178 parent-supply = <&ext_5v>;
Amir Samuelovf3f42582012-09-06 14:34:09 +0300179};
180
Michael Bohand5ea7242012-10-01 18:01:51 -0700181&pm8941_gpios {
182 gpio@c000 { /* GPIO 1 */
Amy Maloched96a26f2012-09-24 17:00:00 -0700183 qcom,mode = <0>;
184 qcom,pull = <0>;
185 qcom,vin-sel = <2>;
186 qcom,select = <0>;
Michael Bohand5ea7242012-10-01 18:01:51 -0700187 };
Amir Samuelovf3f42582012-09-06 14:34:09 +0300188
Michael Bohand5ea7242012-10-01 18:01:51 -0700189 gpio@c100 { /* GPIO 2 */
Amy Maloched96a26f2012-09-24 17:00:00 -0700190 qcom,mode = <0>;
191 qcom,pull = <0>;
192 qcom,vin-sel = <2>;
193 qcom,select = <0>;
Michael Bohand5ea7242012-10-01 18:01:51 -0700194 };
195
196 gpio@c200 { /* GPIO 3 */
Michael Bohand5ea7242012-10-01 18:01:51 -0700197 };
198
199 gpio@c300 { /* GPIO 4 */
Michael Bohand5ea7242012-10-01 18:01:51 -0700200 };
201
202 gpio@c400 { /* GPIO 5 */
203 qcom,mode = <0>;
204 qcom,pull = <0>;
205 qcom,vin-sel = <2>;
206 qcom,select = <0>;
207 };
208
209 gpio@c500 { /* GPIO 6 */
210 };
211
212 gpio@c600 { /* GPIO 7 */
213 };
214
215 gpio@c700 { /* GPIO 8 */
216 };
217
218 gpio@c800 { /* GPIO 9 */
219 };
220
221 gpio@c900 { /* GPIO 10 */
222 };
223
224 gpio@ca00 { /* GPIO 11 */
225 };
226
227 gpio@cb00 { /* GPIO 12 */
228 };
229
230 gpio@cc00 { /* GPIO 13 */
231 };
232
233 gpio@cd00 { /* GPIO 14 */
234 };
235
236 gpio@ce00 { /* GPIO 15 */
237 qcom,mode = <1>;
238 qcom,output-type = <0>;
239 qcom,pull = <5>;
240 qcom,vin-sel = <2>;
241 qcom,out-strength = <3>;
242 qcom,src-select = <2>;
243 qcom,master-en = <1>;
244 };
245
246 gpio@cf00 { /* GPIO 16 */
247 };
248
249 gpio@d000 { /* GPIO 17 */
250 };
251
252 gpio@d100 { /* GPIO 18 */
253 };
254
255 gpio@d200 { /* GPIO 19 */
256 qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */
257 qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */
258 qcom,pull = <5>; /* QPNP_PIN_PULL_NO */
259 qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */
260 qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */
261 qcom,src-select = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */
262 qcom,master-en = <1>;
263 };
264
265 gpio@d300 { /* GPIO 20 */
266 };
267
268 gpio@d400 { /* GPIO 21 */
269 };
270
271 gpio@d500 { /* GPIO 22 */
272 };
273
274 gpio@d600 { /* GPIO 23 */
275 };
276
277 gpio@d700 { /* GPIO 24 */
278 };
279
280 gpio@d800 { /* GPIO 25 */
281 };
282
283 gpio@d900 { /* GPIO 26 */
284 };
285
286 gpio@da00 { /* GPIO 27 */
287 };
288
289 gpio@db00 { /* GPIO 28 */
290 };
291
292 gpio@dc00 { /* GPIO 29 */
293 qcom,pull = <0>; /* set to default pull */
294 qcom,master-en = <1>;
295 qcom,vin-sel = <2>; /* select 1.8 V source */
296 };
297
298 gpio@dd00 { /* GPIO 30 */
299 };
300
301 gpio@de00 { /* GPIO 31 */
302 };
303
304 gpio@df00 { /* GPIO 32 */
305 };
306
307 gpio@e000 { /* GPIO 33 */
308 };
309
310 gpio@e100 { /* GPIO 34 */
311 };
312
313 gpio@e200 { /* GPIO 35 */
314 };
315
316 gpio@e300 { /* GPIO 36 */
317 };
318};
319
320&pm8941_mpps {
321
322 mpp@a000 { /* MPP 1 */
323 };
324
325 mpp@a100 { /* MPP 2 */
David Collinsec642192012-10-12 14:01:59 -0700326 /* ext_5v regulator enable */
327 qcom,mode = <1>; /* Digital output */
328 qcom,invert = <0>; /* Output low initially */
329 qcom,vin-sel = <2>; /* PM8941 S3 = 1.8 V */
330 qcom,src-select = <0>; /* Constant */
331 qcom,master-en = <1>; /* Enable MPP */
Michael Bohand5ea7242012-10-01 18:01:51 -0700332 };
333
334 mpp@a200 { /* MPP 3 */
335 };
336
337 mpp@a300 { /* MPP 4 */
338 };
339
340 mpp@a400 { /* MPP 5 */
341 /* SPI_ETH config */
342 qcom,mode = <1>; /* DIG_OUT */
343 qcom,output-type = <0>; /* CMOS */
344 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
345 qcom,src-select = <0>; /* CONSTANT */
346 qcom,master-en = <1>; /* ENABLE MPP */
347 };
348
349 mpp@a500 { /* MPP 6 */
350 /* SPI_ETH_RST config */
351 qcom,mode = <1>; /* DIG_OUT */
352 qcom,output-type = <0>; /* CMOS */
353 qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */
354 qcom,src-select = <0>; /* CONSTANT */
355 qcom,master-en = <1>; /* ENABLE MPP */
356 };
357
358 mpp@a600 { /* MPP 7 */
359 };
360
361 mpp@a700 { /* MPP 8 */
362 };
363};
364
365&pm8841_mpps {
366
367 mpp@a000 { /* MPP 1 */
368 };
369
370 mpp@a100 { /* MPP 2 */
371 };
372
Asaf Penso94f13cb2012-10-16 22:31:47 +0200373 mpp@a200 { /* HDMI_MUX_SEL MPP 3*/
374 status = "ok";
375 qcom,mode = <1>; /* DIG_OUT */
376 qcom,output-type = <0>; /* CMOS */
377 qcom,vin-sel = <2>; /* PM8841_S3A 1.8V */
378 qcom,src-select = <0>; /* CONSTANT */
379 qcom,master-en = <1>; /* ENABLE MPP */
Michael Bohand5ea7242012-10-01 18:01:51 -0700380 };
381
Asaf Penso94f13cb2012-10-16 22:31:47 +0200382 mpp@a300 { /* HDMI_MUX_EN MPP 4*/
383 status = "ok";
384 qcom,mode = <1>; /* DIG_OUT */
385 qcom,output-type = <0>; /* CMOS */
386 qcom,vin-sel = <0>; /* PM8841_VPH 3.4V */
387 qcom,src-select = <0>; /* CONSTANT */
388 qcom,master-en = <1>; /* ENABLE MPP */
Michael Bohand5ea7242012-10-01 18:01:51 -0700389 };
390};