ARM: dts: Add max77693-haptic node for exynos4412-trats2
[deliverable/linux.git] / arch / arm / boot / dts / exynos5250-spring.dts
CommitLineData
53dd4138
AF
1/*
2 * Google Spring board device tree source
3 *
4 * Copyright (c) 2013 Google, Inc
5 * Copyright (c) 2014 SUSE LINUX Products GmbH
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 */
11
12/dts-v1/;
13#include <dt-bindings/gpio/gpio.h>
14#include <dt-bindings/interrupt-controller/irq.h>
15#include <dt-bindings/input/input.h>
16#include "exynos5250.dtsi"
17
18/ {
19 model = "Google Spring";
20 compatible = "google,spring", "samsung,exynos5250", "samsung,exynos5";
21
22 memory {
23 reg = <0x40000000 0x80000000>;
24 };
25
26 chosen {
27 bootargs = "console=tty1";
28 };
29
30 gpio-keys {
31 compatible = "gpio-keys";
32 pinctrl-names = "default";
33 pinctrl-0 = <&power_key_irq>, <&lid_irq>;
34
35 power {
36 label = "Power";
37 gpios = <&gpx1 3 GPIO_ACTIVE_LOW>;
38 linux,code = <KEY_POWER>;
39 gpio-key,wakeup;
40 };
41
42 lid-switch {
43 label = "Lid";
44 gpios = <&gpx3 5 GPIO_ACTIVE_LOW>;
45 linux,input-type = <5>; /* EV_SW */
46 linux,code = <0>; /* SW_LID */
47 debounce-interval = <1>;
48 gpio-key,wakeup;
49 };
50 };
51
52 usb-hub {
53 compatible = "smsc,usb3503a";
54 reset-gpios = <&gpe1 0 GPIO_ACTIVE_LOW>;
55 };
56
57 fixed-rate-clocks {
58 xxti {
59 compatible = "samsung,clock-xxti";
60 clock-frequency = <24000000>;
61 };
62 };
63};
64
65&dp {
66 status = "okay";
67 pinctrl-names = "default";
68 pinctrl-0 = <&dp_hpd_gpio>;
69 samsung,color-space = <0>;
70 samsung,dynamic-range = <0>;
71 samsung,ycbcr-coeff = <0>;
72 samsung,color-depth = <1>;
73 samsung,link-rate = <0x0a>;
74 samsung,lane-count = <1>;
75 samsung,hpd-gpio = <&gpc3 0 GPIO_ACTIVE_HIGH>;
76};
77
78&ehci {
79 samsung,vbus-gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
80};
81
82&fimd {
83 status = "okay";
84 samsung,invert-vclk;
85};
86
87&hdmi {
88 hpd-gpio = <&gpx3 7 GPIO_ACTIVE_HIGH>;
89 pinctrl-names = "default";
90 pinctrl-0 = <&hdmi_hpd_irq>;
91 phy = <&hdmiphy>;
92 ddc = <&i2c_2>;
93 hdmi-en-supply = <&ldo8_reg>;
94 vdd-supply = <&ldo8_reg>;
95 vdd_osc-supply = <&ldo10_reg>;
96 vdd_pll-supply = <&ldo8_reg>;
97};
98
99&i2c_0 {
100 status = "okay";
101 samsung,i2c-sda-delay = <100>;
102 samsung,i2c-max-bus-freq = <378000>;
103
104 s5m8767-pmic@66 {
105 compatible = "samsung,s5m8767-pmic";
106 reg = <0x66>;
107 interrupt-parent = <&gpx3>;
108 interrupts = <2 IRQ_TYPE_NONE>;
109 pinctrl-names = "default";
110 pinctrl-0 = <&s5m8767_irq &s5m8767_dvs &s5m8767_ds>;
111 wakeup-source;
112
113 s5m8767,pmic-buck-dvs-gpios = <&gpd1 0 GPIO_ACTIVE_LOW>, /* DVS1 */
114 <&gpd1 1 GPIO_ACTIVE_LOW>, /* DVS2 */
115 <&gpd1 2 GPIO_ACTIVE_LOW>; /* DVS3 */
116
117 s5m8767,pmic-buck-ds-gpios = <&gpx2 3 GPIO_ACTIVE_LOW>, /* SET1 */
118 <&gpx2 4 GPIO_ACTIVE_LOW>, /* SET2 */
119 <&gpx2 5 GPIO_ACTIVE_LOW>; /* SET3 */
120
121 /*
122 * The following arrays of DVS voltages are not used, since we are
123 * not using GPIOs to control PMIC bucks, but they must be defined
124 * to please the driver.
125 */
126 s5m8767,pmic-buck2-dvs-voltage = <1350000>, <1300000>,
127 <1250000>, <1200000>,
128 <1150000>, <1100000>,
129 <1000000>, <950000>;
130
131 s5m8767,pmic-buck3-dvs-voltage = <1100000>, <1100000>,
132 <1100000>, <1100000>,
133 <1000000>, <1000000>,
134 <1000000>, <1000000>;
135
136 s5m8767,pmic-buck4-dvs-voltage = <1200000>, <1200000>,
137 <1200000>, <1200000>,
138 <1200000>, <1200000>,
139 <1200000>, <1200000>;
140
141 clocks {
142 compatible = "samsung,s5m8767-clk";
143 #clock-cells = <1>;
144 clock-output-names = "en32khz_ap",
145 "en32khz_cp",
146 "en32khz_bt";
147 };
148
149 regulators {
150 ldo4_reg: LDO4 {
151 regulator-name = "P1.0V_LDO_OUT4";
152 regulator-min-microvolt = <1000000>;
153 regulator-max-microvolt = <1000000>;
154 regulator-always-on;
155 op_mode = <0>;
156 };
157
158 ldo5_reg: LDO5 {
159 regulator-name = "P1.0V_LDO_OUT5";
160 regulator-min-microvolt = <1000000>;
161 regulator-max-microvolt = <1000000>;
162 regulator-always-on;
163 op_mode = <0>;
164 };
165
166 ldo6_reg: LDO6 {
167 regulator-name = "vdd_mydp";
168 regulator-min-microvolt = <1000000>;
169 regulator-max-microvolt = <1000000>;
170 regulator-always-on;
171 op_mode = <3>;
172 };
173
174 ldo7_reg: LDO7 {
175 regulator-name = "P1.1V_LDO_OUT7";
176 regulator-min-microvolt = <1100000>;
177 regulator-max-microvolt = <1100000>;
178 regulator-always-on;
179 op_mode = <3>;
180 };
181
182 ldo8_reg: LDO8 {
183 regulator-name = "P1.0V_LDO_OUT8";
184 regulator-min-microvolt = <1000000>;
185 regulator-max-microvolt = <1000000>;
186 regulator-always-on;
187 op_mode = <3>;
188 };
189
190 ldo10_reg: LDO10 {
191 regulator-name = "P1.8V_LDO_OUT10";
192 regulator-min-microvolt = <1800000>;
193 regulator-max-microvolt = <1800000>;
194 regulator-always-on;
195 op_mode = <3>;
196 };
197
198 ldo11_reg: LDO11 {
199 regulator-name = "P1.8V_LDO_OUT11";
200 regulator-min-microvolt = <1800000>;
201 regulator-max-microvolt = <1800000>;
202 regulator-always-on;
203 op_mode = <0>;
204 };
205
206 ldo12_reg: LDO12 {
207 regulator-name = "P3.0V_LDO_OUT12";
208 regulator-min-microvolt = <3000000>;
209 regulator-max-microvolt = <3000000>;
210 regulator-always-on;
211 op_mode = <3>;
212 };
213
214 ldo13_reg: LDO13 {
215 regulator-name = "P1.8V_LDO_OUT13";
216 regulator-min-microvolt = <1800000>;
217 regulator-max-microvolt = <1800000>;
218 regulator-always-on;
219 op_mode = <0>;
220 };
221
222 ldo14_reg: LDO14 {
223 regulator-name = "P1.8V_LDO_OUT14";
224 regulator-min-microvolt = <1800000>;
225 regulator-max-microvolt = <1800000>;
226 regulator-always-on;
227 op_mode = <3>;
228 };
229
230 ldo15_reg: LDO15 {
231 regulator-name = "P1.0V_LDO_OUT15";
232 regulator-min-microvolt = <1000000>;
233 regulator-max-microvolt = <1000000>;
234 regulator-always-on;
235 op_mode = <3>;
236 };
237
238 ldo16_reg: LDO16 {
239 regulator-name = "P1.8V_LDO_OUT16";
240 regulator-min-microvolt = <1800000>;
241 regulator-max-microvolt = <1800000>;
242 regulator-always-on;
243 op_mode = <3>;
244 };
245
246 ldo17_reg: LDO17 {
247 regulator-name = "P2.8V_LDO_OUT17";
248 regulator-min-microvolt = <2800000>;
249 regulator-max-microvolt = <2800000>;
250 regulator-always-on;
251 op_mode = <0>;
252 };
253
254 ldo25_reg: LDO25 {
255 regulator-name = "vdd_bridge";
256 regulator-min-microvolt = <1200000>;
257 regulator-max-microvolt = <1200000>;
258 regulator-always-on;
259 op_mode = <1>;
260 };
261
262 buck1_reg: BUCK1 {
263 regulator-name = "vdd_mif";
264 regulator-min-microvolt = <950000>;
265 regulator-max-microvolt = <1300000>;
266 regulator-always-on;
267 regulator-boot-on;
268 op_mode = <3>;
269 };
270
271 buck2_reg: BUCK2 {
272 regulator-name = "vdd_arm";
273 regulator-min-microvolt = <850000>;
274 regulator-max-microvolt = <1350000>;
275 regulator-always-on;
276 regulator-boot-on;
277 op_mode = <3>;
278 };
279
280 buck3_reg: BUCK3 {
281 regulator-name = "vdd_int";
282 regulator-min-microvolt = <900000>;
283 regulator-max-microvolt = <1200000>;
284 regulator-always-on;
285 regulator-boot-on;
286 op_mode = <3>;
287 };
288
289 buck4_reg: BUCK4 {
290 regulator-name = "vdd_g3d";
291 regulator-min-microvolt = <850000>;
292 regulator-max-microvolt = <1300000>;
293 regulator-boot-on;
294 op_mode = <3>;
295 };
296
297 buck5_reg: BUCK5 {
298 regulator-name = "P1.8V_BUCK_OUT5";
299 regulator-min-microvolt = <1800000>;
300 regulator-max-microvolt = <1800000>;
301 regulator-always-on;
302 regulator-boot-on;
303 op_mode = <1>;
304 };
305
306 buck6_reg: BUCK6 {
307 regulator-name = "P1.2V_BUCK_OUT6";
308 regulator-min-microvolt = <1200000>;
309 regulator-max-microvolt = <1200000>;
310 regulator-always-on;
311 regulator-boot-on;
312 op_mode = <0>;
313 };
314
315 buck9_reg: BUCK9 {
316 regulator-name = "vdd_ummc";
317 regulator-min-microvolt = <950000>;
318 regulator-max-microvolt = <3000000>;
319 regulator-always-on;
320 regulator-boot-on;
321 op_mode = <3>;
322 };
323 };
324 };
325};
326
327&i2c_1 {
328 status = "okay";
329 samsung,i2c-sda-delay = <100>;
330 samsung,i2c-max-bus-freq = <378000>;
331};
332
333/*
334 * Disabled pullups since external part has its own pullups and
335 * double-pulling gets us out of spec in some cases.
336 */
337&i2c2_bus {
338 samsung,pin-pud = <0>;
339};
340
341&i2c_2 {
342 status = "okay";
343 samsung,i2c-sda-delay = <100>;
344 samsung,i2c-max-bus-freq = <66000>;
345
346 hdmiddc@50 {
347 compatible = "samsung,exynos4210-hdmiddc";
348 reg = <0x50>;
349 };
350};
351
352&i2c_3 {
353 status = "okay";
354 samsung,i2c-sda-delay = <100>;
355 samsung,i2c-max-bus-freq = <66000>;
356};
357
358&i2c_4 {
359 status = "okay";
360 samsung,i2c-sda-delay = <100>;
361 samsung,i2c-max-bus-freq = <66000>;
362
363 cros_ec: embedded-controller {
364 compatible = "google,cros-ec-i2c";
365 reg = <0x1e>;
366 interrupts = <6 IRQ_TYPE_NONE>;
367 interrupt-parent = <&gpx1>;
368 wakeup-source;
369 pinctrl-names = "default";
370 pinctrl-0 = <&ec_irq>;
371 };
372};
373
374&i2c_5 {
375 status = "okay";
376 samsung,i2c-sda-delay = <100>;
377 samsung,i2c-max-bus-freq = <66000>;
378};
379
380&i2c_7 {
381 status = "okay";
382 samsung,i2c-sda-delay = <100>;
383 samsung,i2c-max-bus-freq = <66000>;
384};
385
386&i2c_8 {
387 status = "okay";
388 samsung,i2c-sda-delay = <100>;
389 samsung,i2c-max-bus-freq = <378000>;
390
391 hdmiphy: hdmiphy@38 {
392 compatible = "samsung,exynos4212-hdmiphy";
393 reg = <0x38>;
394 };
395};
396
397&i2s0 {
398 status = "okay";
399};
400
401&mfc {
402 samsung,mfc-r = <0x43000000 0x800000>;
403 samsung,mfc-l = <0x51000000 0x800000>;
404};
405
406&mmc_0 {
407 status = "okay";
408 num-slots = <1>;
409 supports-highspeed;
410 broken-cd;
411 card-detect-delay = <200>;
412 samsung,dw-mshc-ciu-div = <3>;
413 samsung,dw-mshc-sdr-timing = <2 3>;
414 samsung,dw-mshc-ddr-timing = <1 2>;
415 pinctrl-names = "default";
416 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus4 &sd0_bus8>;
417
418 slot@0 {
419 reg = <0>;
420 bus-width = <8>;
421 };
422};
423
424/*
425 * On Spring we've got SIP WiFi and so can keep drive strengths low to
426 * reduce EMI.
427 */
428&mmc_1 {
429 status = "okay";
430 num-slots = <1>;
431 supports-highspeed;
432 broken-cd;
433 card-detect-delay = <200>;
434 samsung,dw-mshc-ciu-div = <3>;
435 samsung,dw-mshc-sdr-timing = <2 3>;
436 samsung,dw-mshc-ddr-timing = <1 2>;
437 pinctrl-names = "default";
438 pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_cd &sd1_bus4>;
439
440 slot@0 {
441 reg = <0>;
442 bus-width = <4>;
443 };
444};
445
446&pinctrl_0 {
447 s5m8767_dvs: s5m8767-dvs {
448 samsung,pins = "gpd1-0", "gpd1-1", "gpd1-2";
449 samsung,pin-function = <0>;
450 samsung,pin-pud = <1>;
451 samsung,pin-drv = <0>;
452 };
453
454 dp_hpd_gpio: dp-hpd-gpio {
455 samsung,pins = "gpc3-0";
456 samsung,pin-function = <0>;
457 samsung,pin-pud = <3>;
458 samsung,pin-drv = <0>;
459 };
460
461 power_key_irq: power-key-irq {
462 samsung,pins = "gpx1-3";
463 samsung,pin-function = <0>;
464 samsung,pin-pud = <0>;
465 samsung,pin-drv = <0>;
466 };
467
468 ec_irq: ec-irq {
469 samsung,pins = "gpx1-6";
470 samsung,pin-function = <0>;
471 samsung,pin-pud = <0>;
472 samsung,pin-drv = <0>;
473 };
474
475 s5m8767_ds: s5m8767-ds {
476 samsung,pins = "gpx2-3", "gpx2-4", "gpx2-5";
477 samsung,pin-function = <0>;
478 samsung,pin-pud = <1>;
479 samsung,pin-drv = <0>;
480 };
481
482 s5m8767_irq: s5m8767-irq {
483 samsung,pins = "gpx3-2";
484 samsung,pin-function = <0>;
485 samsung,pin-pud = <0>;
486 samsung,pin-drv = <0>;
487 };
488
489 lid_irq: lid-irq {
490 samsung,pins = "gpx3-5";
491 samsung,pin-function = <0>;
492 samsung,pin-pud = <0>;
493 samsung,pin-drv = <0>;
494 };
495
496 hdmi_hpd_irq: hdmi-hpd-irq {
497 samsung,pins = "gpx3-7";
498 samsung,pin-function = <0>;
499 samsung,pin-pud = <1>;
500 samsung,pin-drv = <0>;
501 };
502};
503
504&pinctrl_1 {
505 hsic_reset: hsic-reset {
506 samsung,pins = "gpe1-0";
507 samsung,pin-function = <1>;
508 samsung,pin-pud = <0>;
509 samsung,pin-drv = <0>;
510 };
511};
512
513&sd1_bus4 {
514 samsung,pin-drv = <0>;
515};
516
517&sd1_cd {
518 samsung,pin-drv = <0>;
519};
520
521&sd1_clk {
522 samsung,pin-drv = <0>;
523};
524
525&sd1_cmd {
526 samsung,pin-pud = <3>;
527 samsung,pin-drv = <0>;
528};
529
530&spi_1 {
531 status = "okay";
532 samsung,spi-src-clk = <0>;
533 num-cs = <1>;
534};
535
536#include "cros-ec-keyboard.dtsi"
This page took 0.049152 seconds and 5 git commands to generate.