2 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
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.
10 #include "omap443x.dtsi"
11 #include "elpida_ecb240abacn.dtsi"
14 model = "TI OMAP4 SDP board";
15 compatible = "ti,omap4-sdp", "ti,omap4430", "ti,omap4";
18 device_type = "memory";
19 reg = <0x80000000 0x40000000>; /* 1 GB */
28 vdd_eth: fixedregulator-vdd-eth {
29 compatible = "regulator-fixed";
30 regulator-name = "VDD_ETH";
31 regulator-min-microvolt = <3300000>;
32 regulator-max-microvolt = <3300000>;
33 gpio = <&gpio2 16 GPIO_ACTIVE_HIGH>; /* gpio line 48 */
38 vbat: fixedregulator-vbat {
39 compatible = "regulator-fixed";
40 regulator-name = "VBAT";
41 regulator-min-microvolt = <3750000>;
42 regulator-max-microvolt = <3750000>;
47 compatible = "gpio-leds";
49 label = "omap4:green:debug0";
50 gpios = <&gpio2 29 GPIO_ACTIVE_HIGH>; /* 61 */
54 label = "omap4:green:debug1";
55 gpios = <&gpio1 30 GPIO_ACTIVE_HIGH>; /* 30 */
59 label = "omap4:green:debug2";
60 gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; /* 7 */
64 label = "omap4:green:debug3";
65 gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; /* 8 */
69 label = "omap4:green:debug4";
70 gpios = <&gpio2 18 GPIO_ACTIVE_HIGH>; /* 50 */
74 label = "omap4:blue:user";
75 gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* 169 */
79 label = "omap4:red:user";
80 gpios = <&gpio6 10 GPIO_ACTIVE_HIGH>; /* 170 */
84 label = "omap4:green:user";
85 gpios = <&gpio5 11 GPIO_ACTIVE_HIGH>; /* 139 */
90 compatible = "pwm-leds";
92 label = "omap4::keypad";
93 pwms = <&twl_pwm 0 7812500>;
94 max-brightness = <127>;
98 label = "omap4:green:chrg";
99 pwms = <&twl_pwmled 0 7812500>;
100 max-brightness = <255>;
105 compatible = "pwm-backlight";
106 pwms = <&twl_pwm 1 7812500>;
107 brightness-levels = <
112 default-brightness-level = <13>;
116 compatible = "ti,abe-twl6040";
117 ti,model = "SDP4430";
119 ti,jack-detection = <1>;
120 ti,mclk-freq = <38400000>;
125 ti,twl6040 = <&twl6040>;
129 "Headset Stereophone", "HSOL",
130 "Headset Stereophone", "HSOR",
131 "Earphone Spk", "EP",
136 "Vibrator", "VIBRAL",
137 "Vibrator", "VIBRAR",
138 "HSMIC", "Headset Mic",
139 "Headset Mic", "Headset Mic Bias",
140 "MAINMIC", "Main Handset Mic",
141 "Main Handset Mic", "Main Mic Bias",
142 "SUBMIC", "Sub Handset Mic",
143 "Sub Handset Mic", "Main Mic Bias",
146 "DMic", "Digital Mic",
147 "Digital Mic", "Digital Mic1 Bias";
150 /* regulator for wl12xx on sdio5 */
151 wl12xx_vmmc: wl12xx_vmmc {
152 pinctrl-names = "default";
153 pinctrl-0 = <&wl12xx_gpio>;
154 compatible = "regulator-fixed";
155 regulator-name = "vwl1271";
156 regulator-min-microvolt = <1800000>;
157 regulator-max-microvolt = <1800000>;
158 gpio = <&gpio2 22 GPIO_ACTIVE_HIGH>;
159 startup-delay-us = <70000>;
163 tpd12s015: encoder@0 {
164 compatible = "ti,tpd12s015";
166 gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>, /* 60, CT CP HPD */
167 <&gpio2 9 GPIO_ACTIVE_HIGH>, /* 41, LS OE */
168 <&gpio2 31 GPIO_ACTIVE_HIGH>; /* 63, HPD */
171 #address-cells = <1>;
177 tpd12s015_in: endpoint@0 {
178 remote-endpoint = <&hdmi_out>;
185 tpd12s015_out: endpoint@0 {
186 remote-endpoint = <&hdmi_connector_in>;
193 compatible = "hdmi-connector";
199 hdmi_connector_in: endpoint {
200 remote-endpoint = <&tpd12s015_out>;
207 pinctrl-names = "default";
213 uart2_pins: pinmux_uart2_pins {
214 pinctrl-single,pins = <
215 OMAP4_IOPAD(0x118, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_cts.uart2_cts */
216 OMAP4_IOPAD(0x11a, PIN_OUTPUT | MUX_MODE0) /* uart2_rts.uart2_rts */
217 OMAP4_IOPAD(0x11c, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_rx.uart2_rx */
218 OMAP4_IOPAD(0x11e, PIN_OUTPUT | MUX_MODE0) /* uart2_tx.uart2_tx */
222 uart3_pins: pinmux_uart3_pins {
223 pinctrl-single,pins = <
224 OMAP4_IOPAD(0x140, PIN_INPUT_PULLUP | MUX_MODE0) /* uart3_cts_rctx.uart3_cts_rctx */
225 OMAP4_IOPAD(0x142, PIN_OUTPUT | MUX_MODE0) /* uart3_rts_sd.uart3_rts_sd */
226 OMAP4_IOPAD(0x144, PIN_INPUT | MUX_MODE0) /* uart3_rx_irrx.uart3_rx_irrx */
227 OMAP4_IOPAD(0x146, PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx.uart3_tx_irtx */
231 uart4_pins: pinmux_uart4_pins {
232 pinctrl-single,pins = <
233 OMAP4_IOPAD(0x15c, PIN_INPUT | MUX_MODE0) /* uart4_rx.uart4_rx */
234 OMAP4_IOPAD(0x15e, PIN_OUTPUT | MUX_MODE0) /* uart4_tx.uart4_tx */
238 twl6040_pins: pinmux_twl6040_pins {
239 pinctrl-single,pins = <
240 OMAP4_IOPAD(0x120, PIN_OUTPUT | MUX_MODE3) /* hdq_sio.gpio_127 */
241 OMAP4_IOPAD(0x1a0, PIN_INPUT | MUX_MODE0) /* sys_nirq2.sys_nirq2 */
245 mcpdm_pins: pinmux_mcpdm_pins {
246 pinctrl-single,pins = <
247 OMAP4_IOPAD(0x106, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_ul_data.abe_pdm_ul_data */
248 OMAP4_IOPAD(0x108, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_dl_data.abe_pdm_dl_data */
249 OMAP4_IOPAD(0x10a, PIN_INPUT_PULLUP | MUX_MODE0) /* abe_pdm_frame.abe_pdm_frame */
250 OMAP4_IOPAD(0x10c, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_lb_clk.abe_pdm_lb_clk */
251 OMAP4_IOPAD(0x10e, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_clks.abe_clks */
255 dmic_pins: pinmux_dmic_pins {
256 pinctrl-single,pins = <
257 OMAP4_IOPAD(0x110, PIN_OUTPUT | MUX_MODE0) /* abe_dmic_clk1.abe_dmic_clk1 */
258 OMAP4_IOPAD(0x112, PIN_INPUT | MUX_MODE0) /* abe_dmic_din1.abe_dmic_din1 */
259 OMAP4_IOPAD(0x114, PIN_INPUT | MUX_MODE0) /* abe_dmic_din2.abe_dmic_din2 */
260 OMAP4_IOPAD(0x116, PIN_INPUT | MUX_MODE0) /* abe_dmic_din3.abe_dmic_din3 */
264 mcbsp1_pins: pinmux_mcbsp1_pins {
265 pinctrl-single,pins = <
266 OMAP4_IOPAD(0x0fe, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_clkx.abe_mcbsp1_clkx */
267 OMAP4_IOPAD(0x100, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dr.abe_mcbsp1_dr */
268 OMAP4_IOPAD(0x102, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dx.abe_mcbsp1_dx */
269 OMAP4_IOPAD(0x104, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_fsx.abe_mcbsp1_fsx */
273 mcbsp2_pins: pinmux_mcbsp2_pins {
274 pinctrl-single,pins = <
275 OMAP4_IOPAD(0x0f6, PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_clkx.abe_mcbsp2_clkx */
276 OMAP4_IOPAD(0x0f8, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp2_dr.abe_mcbsp2_dr */
277 OMAP4_IOPAD(0x0fa, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp2_dx.abe_mcbsp2_dx */
278 OMAP4_IOPAD(0x0fc, PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_fsx.abe_mcbsp2_fsx */
282 mcspi1_pins: pinmux_mcspi1_pins {
283 pinctrl-single,pins = <
284 OMAP4_IOPAD(0x132, PIN_INPUT | MUX_MODE0) /* mcspi1_clk.mcspi1_clk */
285 OMAP4_IOPAD(0x134, PIN_INPUT | MUX_MODE0) /* mcspi1_somi.mcspi1_somi */
286 OMAP4_IOPAD(0x136, PIN_INPUT | MUX_MODE0) /* mcspi1_simo.mcspi1_simo */
287 OMAP4_IOPAD(0x138, PIN_INPUT | MUX_MODE0) /* mcspi1_cs0.mcspi1_cs0 */
291 dss_hdmi_pins: pinmux_dss_hdmi_pins {
292 pinctrl-single,pins = <
293 OMAP4_IOPAD(0x09a, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_cec.hdmi_cec */
294 OMAP4_IOPAD(0x09c, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_scl.hdmi_scl */
295 OMAP4_IOPAD(0x09e, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_sda.hdmi_sda */
299 tpd12s015_pins: pinmux_tpd12s015_pins {
300 pinctrl-single,pins = <
301 OMAP4_IOPAD(0x062, PIN_OUTPUT | MUX_MODE3) /* gpmc_a17.gpio_41 */
302 OMAP4_IOPAD(0x088, PIN_OUTPUT | MUX_MODE3) /* gpmc_nbe1.gpio_60 */
303 OMAP4_IOPAD(0x098, PIN_INPUT_PULLDOWN | MUX_MODE3) /* hdmi_hpd.gpio_63 */
307 i2c1_pins: pinmux_i2c1_pins {
308 pinctrl-single,pins = <
309 OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */
310 OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */
314 i2c2_pins: pinmux_i2c2_pins {
315 pinctrl-single,pins = <
316 OMAP4_IOPAD(0x126, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */
317 OMAP4_IOPAD(0x128, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */
321 i2c3_pins: pinmux_i2c3_pins {
322 pinctrl-single,pins = <
323 OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */
324 OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */
328 i2c4_pins: pinmux_i2c4_pins {
329 pinctrl-single,pins = <
330 OMAP4_IOPAD(0x12e, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_scl */
331 OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */
335 /* wl12xx GPIO output for WLAN_EN */
336 wl12xx_gpio: pinmux_wl12xx_gpio {
337 pinctrl-single,pins = <
338 OMAP4_IOPAD(0x07c, PIN_OUTPUT | MUX_MODE3) /* gpmc_nwp.gpio_54 */
342 /* wl12xx GPIO inputs and SDIO pins */
343 wl12xx_pins: pinmux_wl12xx_pins {
344 pinctrl-single,pins = <
345 OMAP4_IOPAD(0x07a, PIN_INPUT | MUX_MODE3) /* gpmc_ncs3.gpio_53 */
346 OMAP4_IOPAD(0x148, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_clk.sdmmc5_clk */
347 OMAP4_IOPAD(0x14a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_cmd.sdmmc5_cmd */
348 OMAP4_IOPAD(0x14c, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat0.sdmmc5_dat0 */
349 OMAP4_IOPAD(0x14e, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat1.sdmmc5_dat1 */
350 OMAP4_IOPAD(0x150, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat2.sdmmc5_dat2 */
351 OMAP4_IOPAD(0x152, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat3.sdmmc5_dat3 */
357 pinctrl-names = "default";
358 pinctrl-0 = <&i2c1_pins>;
360 clock-frequency = <400000>;
364 /* SPI = 0, IRQ# = 7, 4 = active high level-sensitive */
365 interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_1N cascaded to gic */
369 compatible = "ti,twl6040";
373 pinctrl-names = "default";
374 pinctrl-0 = <&twl6040_pins>;
376 /* SPI = 0, IRQ# = 119, 4 = active high level-sensitive */
377 interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_2N cascaded to gic */
378 ti,audpwron-gpio = <&gpio4 31 GPIO_ACTIVE_HIGH>; /* gpio line 127 */
380 vio-supply = <&v1v8>;
381 v2v1-supply = <&v2v1>;
384 /* regulators for vibra motor */
385 vddvibl-supply = <&vbat>;
386 vddvibr-supply = <&vbat>;
389 /* Vibra driver, motor resistance parameters */
390 ti,vibldrv-res = <8>;
391 ti,vibrdrv-res = <3>;
392 ti,viblmotor-res = <10>;
393 ti,vibrmotor-res = <10>;
398 #include "twl6030.dtsi"
399 #include "twl6030_omap4.dtsi"
402 pinctrl-names = "default";
403 pinctrl-0 = <&i2c2_pins>;
405 clock-frequency = <400000>;
409 pinctrl-names = "default";
410 pinctrl-0 = <&i2c3_pins>;
412 clock-frequency = <400000>;
416 * http://www.ti.com/lit/ds/symlink/tmp105.pdf
419 compatible = "ti,tmp105";
424 * Ambient Light Sensor
425 * http://www.rohm.com/products/databook/sensor/pdf/bh1780gli-e.pdf
428 compatible = "rohm,bh1780";
434 pinctrl-names = "default";
435 pinctrl-0 = <&i2c4_pins>;
437 clock-frequency = <400000>;
440 * 3-Axis Digital Compass
441 * http://www.sparkfun.com/datasheets/Sensors/Magneto/HMC5843.pdf
444 compatible = "honeywell,hmc5843";
450 pinctrl-names = "default";
451 pinctrl-0 = <&mcspi1_pins>;
454 compatible = "ks8851";
455 spi-max-frequency = <24000000>;
457 interrupt-parent = <&gpio2>;
458 interrupts = <2 IRQ_TYPE_LEVEL_LOW>; /* gpio line 34 */
459 vdd-supply = <&vdd_eth>;
464 vmmc-supply = <&vmmc>;
469 vmmc-supply = <&vaux1>;
483 pinctrl-names = "default";
484 pinctrl-0 = <&wl12xx_pins>;
485 vmmc-supply = <&wl12xx_vmmc>;
490 #address-cells = <1>;
493 compatible = "ti,wl1281";
495 interrupt-parent = <&gpio1>;
496 interrupts = <21 IRQ_TYPE_LEVEL_HIGH>; /* gpio 53 */
497 ref-clock-frequency = <26000000>;
498 tcxo-clock-frequency = <26000000>;
504 device-handle = <&elpida_ECB240ABACN>;
509 device-handle = <&elpida_ECB240ABACN>;
513 keypad,num-rows = <8>;
514 keypad,num-columns = <8>;
515 linux,keymap = <0x00000012 /* KEY_E */
516 0x00010013 /* KEY_R */
517 0x00020014 /* KEY_T */
518 0x00030066 /* KEY_HOME */
519 0x0004003f /* KEY_F5 */
520 0x000500f0 /* KEY_UNKNOWN */
521 0x00060017 /* KEY_I */
522 0x0007002a /* KEY_LEFTSHIFT */
523 0x01000020 /* KEY_D*/
524 0x01010021 /* KEY_F */
525 0x01020022 /* KEY_G */
526 0x010300e7 /* KEY_SEND */
527 0x01040040 /* KEY_F6 */
528 0x010500f0 /* KEY_UNKNOWN */
529 0x01060025 /* KEY_K */
530 0x0107001c /* KEY_ENTER */
531 0x0200002d /* KEY_X */
532 0x0201002e /* KEY_C */
533 0x0202002f /* KEY_V */
534 0x0203006b /* KEY_END */
535 0x02040041 /* KEY_F7 */
536 0x020500f0 /* KEY_UNKNOWN */
537 0x02060034 /* KEY_DOT */
538 0x0207003a /* KEY_CAPSLOCK */
539 0x0300002c /* KEY_Z */
540 0x0301004e /* KEY_KPLUS */
541 0x03020030 /* KEY_B */
542 0x0303003b /* KEY_F1 */
543 0x03040042 /* KEY_F8 */
544 0x030500f0 /* KEY_UNKNOWN */
545 0x03060018 /* KEY_O */
546 0x03070039 /* KEY_SPACE */
547 0x04000011 /* KEY_W */
548 0x04010015 /* KEY_Y */
549 0x04020016 /* KEY_U */
550 0x0403003c /* KEY_F2 */
551 0x04040073 /* KEY_VOLUMEUP */
552 0x040500f0 /* KEY_UNKNOWN */
553 0x04060026 /* KEY_L */
554 0x04070069 /* KEY_LEFT */
555 0x0500001f /* KEY_S */
556 0x05010023 /* KEY_H */
557 0x05020024 /* KEY_J */
558 0x0503003d /* KEY_F3 */
559 0x05040043 /* KEY_F9 */
560 0x05050072 /* KEY_VOLUMEDOWN */
561 0x05060032 /* KEY_M */
562 0x0507006a /* KEY_RIGHT */
563 0x06000010 /* KEY_Q */
564 0x0601001e /* KEY_A */
565 0x06020031 /* KEY_N */
566 0x0603009e /* KEY_BACK */
567 0x0604000e /* KEY_BACKSPACE */
568 0x060500f0 /* KEY_UNKNOWN */
569 0x06060019 /* KEY_P */
570 0x06070067 /* KEY_UP */
571 0x07000094 /* KEY_PROG1 */
572 0x07010095 /* KEY_PROG2 */
573 0x070200ca /* KEY_PROG3 */
574 0x070300cb /* KEY_PROG4 */
575 0x0704003e /* KEY_F4 */
576 0x070500f0 /* KEY_UNKNOWN */
577 0x07060160 /* KEY_OK */
578 0x0707006c>; /* KEY_DOWN */
579 linux,input-no-autorepeat;
583 interrupts-extended = <&wakeupgen GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH
584 &omap4_pmx_core OMAP4_UART2_RX>;
585 pinctrl-names = "default";
586 pinctrl-0 = <&uart2_pins>;
590 interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH
591 &omap4_pmx_core OMAP4_UART3_RX>;
592 pinctrl-names = "default";
593 pinctrl-0 = <&uart3_pins>;
597 interrupts-extended = <&wakeupgen GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH
598 &omap4_pmx_core OMAP4_UART4_RX>;
599 pinctrl-names = "default";
600 pinctrl-0 = <&uart4_pins>;
604 pinctrl-names = "default";
605 pinctrl-0 = <&mcbsp1_pins>;
610 pinctrl-names = "default";
611 pinctrl-0 = <&mcbsp2_pins>;
616 pinctrl-names = "default";
617 pinctrl-0 = <&dmic_pins>;
622 pinctrl-names = "default";
623 pinctrl-0 = <&mcpdm_pins>;
626 clock-names = "pdmclk";
631 &twl_usb_comparator {
632 usb-supply = <&vusb>;
636 interface-type = <1>;
647 vdd-supply = <&vcxio>;
650 dsi1_out_ep: endpoint {
651 remote-endpoint = <&lcd0_in>;
652 lanes = <0 1 2 3 4 5>;
657 compatible = "tpo,taal", "panel-dsi-cm";
660 reset-gpios = <&gpio4 6 GPIO_ACTIVE_HIGH>; /* 102 */
664 remote-endpoint = <&dsi1_out_ep>;
672 vdd-supply = <&vcxio>;
675 dsi2_out_ep: endpoint {
676 remote-endpoint = <&lcd1_in>;
677 lanes = <0 1 2 3 4 5>;
682 compatible = "tpo,taal", "panel-dsi-cm";
685 reset-gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>; /* 104 */
689 remote-endpoint = <&dsi2_out_ep>;
697 vdda-supply = <&vdac>;
701 remote-endpoint = <&tpd12s015_in>;