Merge tag 'regmap-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie...
[deliverable/linux.git] / arch / arm / boot / dts / omap4-sdp.dts
CommitLineData
492beedf
BC
1/*
2 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8/dts-v1/;
9
98ef7957
FV
10#include "omap443x.dtsi"
11#include "elpida_ecb240abacn.dtsi"
492beedf
BC
12
13/ {
14 model = "TI OMAP4 SDP board";
15 compatible = "ti,omap4-sdp", "ti,omap4430", "ti,omap4";
16
492beedf
BC
17 memory {
18 device_type = "memory";
19 reg = <0x80000000 0x40000000>; /* 1 GB */
20 };
e7c64db9 21
624411ce 22 vdd_eth: fixedregulator-vdd-eth {
e7c64db9
BC
23 compatible = "regulator-fixed";
24 regulator-name = "VDD_ETH";
25 regulator-min-microvolt = <3300000>;
26 regulator-max-microvolt = <3300000>;
27 gpio = <&gpio2 16 0>; /* gpio line 48 */
28 enable-active-high;
29 regulator-boot-on;
30 };
83909c73 31
624411ce 32 vbat: fixedregulator-vbat {
4814f2f7
PU
33 compatible = "regulator-fixed";
34 regulator-name = "VBAT";
35 regulator-min-microvolt = <3750000>;
36 regulator-max-microvolt = <3750000>;
37 regulator-boot-on;
38 };
39
83909c73
BC
40 leds {
41 compatible = "gpio-leds";
42 debug0 {
43 label = "omap4:green:debug0";
6d624eab 44 gpios = <&gpio2 29 GPIO_ACTIVE_HIGH>; /* 61 */
83909c73
BC
45 };
46
47 debug1 {
48 label = "omap4:green:debug1";
6d624eab 49 gpios = <&gpio1 30 GPIO_ACTIVE_HIGH>; /* 30 */
83909c73
BC
50 };
51
52 debug2 {
53 label = "omap4:green:debug2";
6d624eab 54 gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; /* 7 */
83909c73
BC
55 };
56
57 debug3 {
58 label = "omap4:green:debug3";
6d624eab 59 gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; /* 8 */
83909c73
BC
60 };
61
62 debug4 {
63 label = "omap4:green:debug4";
6d624eab 64 gpios = <&gpio2 18 GPIO_ACTIVE_HIGH>; /* 50 */
83909c73
BC
65 };
66
67 user1 {
68 label = "omap4:blue:user";
6d624eab 69 gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* 169 */
83909c73
BC
70 };
71
72 user2 {
73 label = "omap4:red:user";
6d624eab 74 gpios = <&gpio6 10 GPIO_ACTIVE_HIGH>; /* 170 */
83909c73
BC
75 };
76
77 user3 {
78 label = "omap4:green:user";
6d624eab 79 gpios = <&gpio5 11 GPIO_ACTIVE_HIGH>; /* 139 */
83909c73
BC
80 };
81 };
b15bb2c0 82
28f166cb
PU
83 pwmleds {
84 compatible = "pwm-leds";
85 kpad {
86 label = "omap4::keypad";
87 pwms = <&twl_pwm 0 7812500>;
88 max-brightness = <127>;
89 };
90
91 charging {
92 label = "omap4:green:chrg";
93 pwms = <&twl_pwmled 0 7812500>;
94 max-brightness = <255>;
95 };
96 };
97
f95c01df
PU
98 backlight {
99 compatible = "pwm-backlight";
100 pwms = <&twl_pwm 1 7812500>;
101 brightness-levels = <
102 0 10 20 30 40
103 50 60 70 80 90
104 100 110 120 127
105 >;
106 default-brightness-level = <13>;
107 };
108
b15bb2c0
PU
109 sound {
110 compatible = "ti,abe-twl6040";
111 ti,model = "SDP4430";
112
113 ti,jack-detection = <1>;
114 ti,mclk-freq = <38400000>;
115
116 ti,mcpdm = <&mcpdm>;
117 ti,dmic = <&dmic>;
118
119 ti,twl6040 = <&twl6040>;
120
121 /* Audio routing */
122 ti,audio-routing =
123 "Headset Stereophone", "HSOL",
124 "Headset Stereophone", "HSOR",
125 "Earphone Spk", "EP",
126 "Ext Spk", "HFL",
127 "Ext Spk", "HFR",
128 "Line Out", "AUXL",
129 "Line Out", "AUXR",
130 "Vibrator", "VIBRAL",
131 "Vibrator", "VIBRAR",
132 "HSMIC", "Headset Mic",
133 "Headset Mic", "Headset Mic Bias",
134 "MAINMIC", "Main Handset Mic",
135 "Main Handset Mic", "Main Mic Bias",
136 "SUBMIC", "Sub Handset Mic",
137 "Sub Handset Mic", "Main Mic Bias",
138 "AFML", "Line In",
139 "AFMR", "Line In",
140 "DMic", "Digital Mic",
141 "Digital Mic", "Digital Mic1 Bias";
142 };
492beedf 143};
33632ae7 144
1e68f43b
KH
145&omap4_pmx_wkup {
146 pinctrl-names = "default";
147 pinctrl-0 = <
148 &twl6030_wkup_pins
149 >;
150
151 twl6030_wkup_pins: pinmux_twl6030_wkup_pins {
152 pinctrl-single,pins = <
bcd3cca7 153 0x14 (PIN_OUTPUT | MUX_MODE2) /* fref_clk0_out.sys_drm_msecure */
1e68f43b
KH
154 >;
155 };
156};
157
26638c66 158&omap4_pmx_core {
08386feb
PU
159 pinctrl-names = "default";
160 pinctrl-0 = <
1e68f43b 161 &twl6030_pins
08386feb
PU
162 &twl6040_pins
163 &mcpdm_pins
164 &dmic_pins
165 &mcbsp1_pins
166 &mcbsp2_pins
347bf48f
RN
167 &dss_hdmi_pins
168 &tpd12s015_pins
08386feb
PU
169 >;
170
26638c66
TL
171 uart2_pins: pinmux_uart2_pins {
172 pinctrl-single,pins = <
bcd3cca7
FV
173 0xd8 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_cts.uart2_cts */
174 0xda (PIN_OUTPUT | MUX_MODE0) /* uart2_rts.uart2_rts */
175 0xdc (PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_rx.uart2_rx */
176 0xde (PIN_OUTPUT | MUX_MODE0) /* uart2_tx.uart2_tx */
26638c66
TL
177 >;
178 };
179
180 uart3_pins: pinmux_uart3_pins {
181 pinctrl-single,pins = <
bcd3cca7
FV
182 0x100 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart3_cts_rctx.uart3_cts_rctx */
183 0x102 (PIN_OUTPUT | MUX_MODE0) /* uart3_rts_sd.uart3_rts_sd */
184 0x104 (PIN_INPUT | MUX_MODE0) /* uart3_rx_irrx.uart3_rx_irrx */
185 0x106 (PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx.uart3_tx_irtx */
26638c66
TL
186 >;
187 };
188
189 uart4_pins: pinmux_uart4_pins {
190 pinctrl-single,pins = <
bcd3cca7
FV
191 0x11c (PIN_INPUT | MUX_MODE0) /* uart4_rx.uart4_rx */
192 0x11e (PIN_OUTPUT | MUX_MODE0) /* uart4_tx.uart4_tx */
26638c66
TL
193 >;
194 };
08386feb 195
1e68f43b
KH
196 twl6030_pins: pinmux_twl6030_pins {
197 pinctrl-single,pins = <
bcd3cca7 198 0x15e (WAKEUP_EN | PIN_INPUT_PULLUP | MUX_MODE0) /* sys_nirq1.sys_nirq1 */
1e68f43b
KH
199 >;
200 };
201
08386feb
PU
202 twl6040_pins: pinmux_twl6040_pins {
203 pinctrl-single,pins = <
bcd3cca7
FV
204 0xe0 (PIN_OUTPUT | MUX_MODE3) /* hdq_sio.gpio_127 */
205 0x160 (PIN_INPUT | MUX_MODE0) /* sys_nirq2.sys_nirq2 */
08386feb
PU
206 >;
207 };
208
209 mcpdm_pins: pinmux_mcpdm_pins {
210 pinctrl-single,pins = <
bcd3cca7
FV
211 0xc6 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_ul_data.abe_pdm_ul_data */
212 0xc8 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_dl_data.abe_pdm_dl_data */
213 0xca (PIN_INPUT_PULLUP | MUX_MODE0) /* abe_pdm_frame.abe_pdm_frame */
214 0xcc (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_lb_clk.abe_pdm_lb_clk */
215 0xce (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_clks.abe_clks */
08386feb
PU
216 >;
217 };
218
219 dmic_pins: pinmux_dmic_pins {
220 pinctrl-single,pins = <
bcd3cca7
FV
221 0xd0 (PIN_OUTPUT | MUX_MODE0) /* abe_dmic_clk1.abe_dmic_clk1 */
222 0xd2 (PIN_INPUT | MUX_MODE0) /* abe_dmic_din1.abe_dmic_din1 */
223 0xd4 (PIN_INPUT | MUX_MODE0) /* abe_dmic_din2.abe_dmic_din2 */
224 0xd6 (PIN_INPUT | MUX_MODE0) /* abe_dmic_din3.abe_dmic_din3 */
08386feb
PU
225 >;
226 };
227
228 mcbsp1_pins: pinmux_mcbsp1_pins {
229 pinctrl-single,pins = <
bcd3cca7
FV
230 0xbe (PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_clkx.abe_mcbsp1_clkx */
231 0xc0 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dr.abe_mcbsp1_dr */
232 0xc2 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dx.abe_mcbsp1_dx */
233 0xc4 (PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_fsx.abe_mcbsp1_fsx */
08386feb
PU
234 >;
235 };
236
237 mcbsp2_pins: pinmux_mcbsp2_pins {
238 pinctrl-single,pins = <
bcd3cca7
FV
239 0xb6 (PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_clkx.abe_mcbsp2_clkx */
240 0xb8 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp2_dr.abe_mcbsp2_dr */
241 0xba (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp2_dx.abe_mcbsp2_dx */
242 0xbc (PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_fsx.abe_mcbsp2_fsx */
08386feb
PU
243 >;
244 };
347bf48f 245
d5a2b34f
TL
246 mcspi1_pins: pinmux_mcspi1_pins {
247 pinctrl-single,pins = <
bcd3cca7
FV
248 0xf2 (PIN_INPUT | MUX_MODE0) /* mcspi1_clk.mcspi1_clk */
249 0xf4 (PIN_INPUT | MUX_MODE0) /* mcspi1_somi.mcspi1_somi */
250 0xf6 (PIN_INPUT | MUX_MODE0) /* mcspi1_simo.mcspi1_simo */
251 0xf8 (PIN_INPUT | MUX_MODE0) /* mcspi1_cs0.mcspi1_cs0 */
d5a2b34f
TL
252 >;
253 };
254
347bf48f
RN
255 dss_hdmi_pins: pinmux_dss_hdmi_pins {
256 pinctrl-single,pins = <
bcd3cca7
FV
257 0x5a (PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_cec.hdmi_cec */
258 0x5c (PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_scl.hdmi_scl */
259 0x5e (PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_sda.hdmi_sda */
347bf48f
RN
260 >;
261 };
262
263 tpd12s015_pins: pinmux_tpd12s015_pins {
264 pinctrl-single,pins = <
bcd3cca7
FV
265 0x22 (PIN_OUTPUT | MUX_MODE3) /* gpmc_a17.gpio_41 */
266 0x48 (PIN_OUTPUT | MUX_MODE3) /* gpmc_nbe1.gpio_60 */
267 0x58 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* hdmi_hpd.gpio_63 */
347bf48f
RN
268 >;
269 };
be26cd6d
SP
270
271 i2c1_pins: pinmux_i2c1_pins {
272 pinctrl-single,pins = <
bcd3cca7
FV
273 0xe2 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */
274 0xe4 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */
be26cd6d
SP
275 >;
276 };
277
278 i2c2_pins: pinmux_i2c2_pins {
279 pinctrl-single,pins = <
bcd3cca7
FV
280 0xe6 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */
281 0xe8 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */
be26cd6d
SP
282 >;
283 };
284
285 i2c3_pins: pinmux_i2c3_pins {
286 pinctrl-single,pins = <
bcd3cca7
FV
287 0xea (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */
288 0xec (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */
be26cd6d
SP
289 >;
290 };
291
292 i2c4_pins: pinmux_i2c4_pins {
293 pinctrl-single,pins = <
bcd3cca7
FV
294 0xee (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_scl */
295 0xf0 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */
be26cd6d
SP
296 >;
297 };
26638c66
TL
298};
299
33632ae7 300&i2c1 {
be26cd6d
SP
301 pinctrl-names = "default";
302 pinctrl-0 = <&i2c1_pins>;
303
33632ae7
BC
304 clock-frequency = <400000>;
305
306 twl: twl@48 {
307 reg = <0x48>;
308 /* SPI = 0, IRQ# = 7, 4 = active high level-sensitive */
8fea7d5a 309 interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_1N cascaded to gic */
33632ae7
BC
310 interrupt-parent = <&gic>;
311 };
efd2af55
PU
312
313 twl6040: twl@4b {
314 compatible = "ti,twl6040";
315 reg = <0x4b>;
316 /* SPI = 0, IRQ# = 119, 4 = active high level-sensitive */
8fea7d5a 317 interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_2N cascaded to gic */
efd2af55
PU
318 interrupt-parent = <&gic>;
319 ti,audpwron-gpio = <&gpio4 31 0>; /* gpio line 127 */
320
321 vio-supply = <&v1v8>;
322 v2v1-supply = <&v2v1>;
323 enable-active-high;
324
325 /* regulators for vibra motor */
326 vddvibl-supply = <&vbat>;
327 vddvibr-supply = <&vbat>;
328
329 vibra {
330 /* Vibra driver, motor resistance parameters */
331 ti,vibldrv-res = <8>;
332 ti,vibrdrv-res = <3>;
333 ti,viblmotor-res = <10>;
334 ti,vibrmotor-res = <10>;
335 };
336 };
33632ae7
BC
337};
338
98ef7957 339#include "twl6030.dtsi"
33632ae7
BC
340
341&i2c2 {
be26cd6d
SP
342 pinctrl-names = "default";
343 pinctrl-0 = <&i2c2_pins>;
344
33632ae7
BC
345 clock-frequency = <400000>;
346};
347
348&i2c3 {
be26cd6d
SP
349 pinctrl-names = "default";
350 pinctrl-0 = <&i2c3_pins>;
351
33632ae7
BC
352 clock-frequency = <400000>;
353
354 /*
355 * Temperature Sensor
356 * http://www.ti.com/lit/ds/symlink/tmp105.pdf
357 */
358 tmp105@48 {
359 compatible = "ti,tmp105";
360 reg = <0x48>;
361 };
362
363 /*
364 * Ambient Light Sensor
365 * http://www.rohm.com/products/databook/sensor/pdf/bh1780gli-e.pdf
366 */
367 bh1780@29 {
368 compatible = "rohm,bh1780";
369 reg = <0x29>;
370 };
371};
372
373&i2c4 {
be26cd6d
SP
374 pinctrl-names = "default";
375 pinctrl-0 = <&i2c4_pins>;
376
33632ae7
BC
377 clock-frequency = <400000>;
378
379 /*
380 * 3-Axis Digital Compass
381 * http://www.sparkfun.com/datasheets/Sensors/Magneto/HMC5843.pdf
382 */
383 hmc5843@1e {
384 compatible = "honeywell,hmc5843";
385 reg = <0x1e>;
386 };
387};
e7c64db9
BC
388
389&mcspi1 {
d5a2b34f
TL
390 pinctrl-names = "default";
391 pinctrl-0 = <&mcspi1_pins>;
392
e7c64db9
BC
393 eth@0 {
394 compatible = "ks8851";
395 spi-max-frequency = <24000000>;
396 reg = <0>;
397 interrupt-parent = <&gpio2>;
8fea7d5a 398 interrupts = <2 IRQ_TYPE_LEVEL_LOW>; /* gpio line 34 */
e7c64db9
BC
399 vdd-supply = <&vdd_eth>;
400 };
401};
74981768
RN
402
403&mmc1 {
404 vmmc-supply = <&vmmc>;
7f217794 405 bus-width = <8>;
74981768
RN
406};
407
408&mmc2 {
409 vmmc-supply = <&vaux1>;
7f217794 410 bus-width = <8>;
74981768
RN
411 ti,non-removable;
412};
413
414&mmc3 {
fd5c3fd7 415 status = "disabled";
74981768
RN
416};
417
418&mmc4 {
fd5c3fd7 419 status = "disabled";
74981768
RN
420};
421
422&mmc5 {
7f217794 423 bus-width = <4>;
74981768
RN
424 ti,non-removable;
425};
61bc3544 426
11c27069
A
427&emif1 {
428 cs1-used;
429 device-handle = <&elpida_ECB240ABACN>;
430};
431
432&emif2 {
433 cs1-used;
434 device-handle = <&elpida_ECB240ABACN>;
435};
436
61bc3544
SP
437&keypad {
438 keypad,num-rows = <8>;
439 keypad,num-columns = <8>;
440 linux,keymap = <0x00000012 /* KEY_E */
441 0x00010013 /* KEY_R */
442 0x00020014 /* KEY_T */
443 0x00030066 /* KEY_HOME */
444 0x0004003f /* KEY_F5 */
445 0x000500f0 /* KEY_UNKNOWN */
446 0x00060017 /* KEY_I */
447 0x0007002a /* KEY_LEFTSHIFT */
448 0x01000020 /* KEY_D*/
449 0x01010021 /* KEY_F */
450 0x01020022 /* KEY_G */
451 0x010300e7 /* KEY_SEND */
452 0x01040040 /* KEY_F6 */
453 0x010500f0 /* KEY_UNKNOWN */
454 0x01060025 /* KEY_K */
455 0x0107001c /* KEY_ENTER */
456 0x0200002d /* KEY_X */
457 0x0201002e /* KEY_C */
458 0x0202002f /* KEY_V */
459 0x0203006b /* KEY_END */
460 0x02040041 /* KEY_F7 */
461 0x020500f0 /* KEY_UNKNOWN */
462 0x02060034 /* KEY_DOT */
463 0x0207003a /* KEY_CAPSLOCK */
464 0x0300002c /* KEY_Z */
465 0x0301004e /* KEY_KPLUS */
466 0x03020030 /* KEY_B */
467 0x0303003b /* KEY_F1 */
468 0x03040042 /* KEY_F8 */
469 0x030500f0 /* KEY_UNKNOWN */
470 0x03060018 /* KEY_O */
471 0x03070039 /* KEY_SPACE */
472 0x04000011 /* KEY_W */
473 0x04010015 /* KEY_Y */
474 0x04020016 /* KEY_U */
475 0x0403003c /* KEY_F2 */
476 0x04040073 /* KEY_VOLUMEUP */
477 0x040500f0 /* KEY_UNKNOWN */
478 0x04060026 /* KEY_L */
479 0x04070069 /* KEY_LEFT */
480 0x0500001f /* KEY_S */
481 0x05010023 /* KEY_H */
482 0x05020024 /* KEY_J */
483 0x0503003d /* KEY_F3 */
484 0x05040043 /* KEY_F9 */
485 0x05050072 /* KEY_VOLUMEDOWN */
486 0x05060032 /* KEY_M */
487 0x0507006a /* KEY_RIGHT */
488 0x06000010 /* KEY_Q */
489 0x0601001e /* KEY_A */
490 0x06020031 /* KEY_N */
491 0x0603009e /* KEY_BACK */
492 0x0604000e /* KEY_BACKSPACE */
493 0x060500f0 /* KEY_UNKNOWN */
494 0x06060019 /* KEY_P */
495 0x06070067 /* KEY_UP */
496 0x07000094 /* KEY_PROG1 */
497 0x07010095 /* KEY_PROG2 */
498 0x070200ca /* KEY_PROG3 */
499 0x070300cb /* KEY_PROG4 */
500 0x0704003e /* KEY_F4 */
501 0x070500f0 /* KEY_UNKNOWN */
502 0x07060160 /* KEY_OK */
503 0x0707006c>; /* KEY_DOWN */
504 linux,input-no-autorepeat;
505};
26638c66
TL
506
507&uart2 {
508 pinctrl-names = "default";
509 pinctrl-0 = <&uart2_pins>;
510};
511
512&uart3 {
513 pinctrl-names = "default";
514 pinctrl-0 = <&uart3_pins>;
515};
516
517&uart4 {
518 pinctrl-names = "default";
519 pinctrl-0 = <&uart4_pins>;
520};
6e659281
PU
521
522&mcbsp3 {
523 status = "disabled";
524};
6ff862f6
KVA
525
526&twl_usb_comparator {
527 usb-supply = <&vusb>;
528};
ad871c10
KVA
529
530&usb_otg_hs {
531 interface-type = <1>;
532 mode = <3>;
533 power = <50>;
534};
This page took 0.121014 seconds and 5 git commands to generate.