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 0xd8 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_cts.uart2_cts */
216 0xda (PIN_OUTPUT | MUX_MODE0) /* uart2_rts.uart2_rts */
217 0xdc (PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_rx.uart2_rx */
218 0xde (PIN_OUTPUT | MUX_MODE0) /* uart2_tx.uart2_tx */
222 uart3_pins: pinmux_uart3_pins {
223 pinctrl-single,pins = <
224 0x100 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart3_cts_rctx.uart3_cts_rctx */
225 0x102 (PIN_OUTPUT | MUX_MODE0) /* uart3_rts_sd.uart3_rts_sd */
226 0x104 (PIN_INPUT | MUX_MODE0) /* uart3_rx_irrx.uart3_rx_irrx */
227 0x106 (PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx.uart3_tx_irtx */
231 uart4_pins: pinmux_uart4_pins {
232 pinctrl-single,pins = <
233 0x11c (PIN_INPUT | MUX_MODE0) /* uart4_rx.uart4_rx */
234 0x11e (PIN_OUTPUT | MUX_MODE0) /* uart4_tx.uart4_tx */
238 twl6040_pins: pinmux_twl6040_pins {
239 pinctrl-single,pins = <
240 0xe0 (PIN_OUTPUT | MUX_MODE3) /* hdq_sio.gpio_127 */
241 0x160 (PIN_INPUT | MUX_MODE0) /* sys_nirq2.sys_nirq2 */
245 mcpdm_pins: pinmux_mcpdm_pins {
246 pinctrl-single,pins = <
247 0xc6 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_ul_data.abe_pdm_ul_data */
248 0xc8 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_dl_data.abe_pdm_dl_data */
249 0xca (PIN_INPUT_PULLUP | MUX_MODE0) /* abe_pdm_frame.abe_pdm_frame */
250 0xcc (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_lb_clk.abe_pdm_lb_clk */
251 0xce (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_clks.abe_clks */
255 dmic_pins: pinmux_dmic_pins {
256 pinctrl-single,pins = <
257 0xd0 (PIN_OUTPUT | MUX_MODE0) /* abe_dmic_clk1.abe_dmic_clk1 */
258 0xd2 (PIN_INPUT | MUX_MODE0) /* abe_dmic_din1.abe_dmic_din1 */
259 0xd4 (PIN_INPUT | MUX_MODE0) /* abe_dmic_din2.abe_dmic_din2 */
260 0xd6 (PIN_INPUT | MUX_MODE0) /* abe_dmic_din3.abe_dmic_din3 */
264 mcbsp1_pins: pinmux_mcbsp1_pins {
265 pinctrl-single,pins = <
266 0xbe (PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_clkx.abe_mcbsp1_clkx */
267 0xc0 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dr.abe_mcbsp1_dr */
268 0xc2 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dx.abe_mcbsp1_dx */
269 0xc4 (PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_fsx.abe_mcbsp1_fsx */
273 mcbsp2_pins: pinmux_mcbsp2_pins {
274 pinctrl-single,pins = <
275 0xb6 (PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_clkx.abe_mcbsp2_clkx */
276 0xb8 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp2_dr.abe_mcbsp2_dr */
277 0xba (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp2_dx.abe_mcbsp2_dx */
278 0xbc (PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_fsx.abe_mcbsp2_fsx */
282 mcspi1_pins: pinmux_mcspi1_pins {
283 pinctrl-single,pins = <
284 0xf2 (PIN_INPUT | MUX_MODE0) /* mcspi1_clk.mcspi1_clk */
285 0xf4 (PIN_INPUT | MUX_MODE0) /* mcspi1_somi.mcspi1_somi */
286 0xf6 (PIN_INPUT | MUX_MODE0) /* mcspi1_simo.mcspi1_simo */
287 0xf8 (PIN_INPUT | MUX_MODE0) /* mcspi1_cs0.mcspi1_cs0 */
291 dss_hdmi_pins: pinmux_dss_hdmi_pins {
292 pinctrl-single,pins = <
293 0x5a (PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_cec.hdmi_cec */
294 0x5c (PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_scl.hdmi_scl */
295 0x5e (PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_sda.hdmi_sda */
299 tpd12s015_pins: pinmux_tpd12s015_pins {
300 pinctrl-single,pins = <
301 0x22 (PIN_OUTPUT | MUX_MODE3) /* gpmc_a17.gpio_41 */
302 0x48 (PIN_OUTPUT | MUX_MODE3) /* gpmc_nbe1.gpio_60 */
303 0x58 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* hdmi_hpd.gpio_63 */
307 i2c1_pins: pinmux_i2c1_pins {
308 pinctrl-single,pins = <
309 0xe2 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */
310 0xe4 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */
314 i2c2_pins: pinmux_i2c2_pins {
315 pinctrl-single,pins = <
316 0xe6 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */
317 0xe8 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */
321 i2c3_pins: pinmux_i2c3_pins {
322 pinctrl-single,pins = <
323 0xea (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */
324 0xec (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */
328 i2c4_pins: pinmux_i2c4_pins {
329 pinctrl-single,pins = <
330 0xee (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_scl */
331 0xf0 (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 0x3c (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 0x3a (PIN_INPUT | MUX_MODE3) /* gpmc_ncs3.gpio_53 */
346 0x108 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_clk.sdmmc5_clk */
347 0x10a (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_cmd.sdmmc5_cmd */
348 0x10c (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat0.sdmmc5_dat0 */
349 0x10e (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat1.sdmmc5_dat1 */
350 0x110 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat2.sdmmc5_dat2 */
351 0x112 (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";
372 pinctrl-names = "default";
373 pinctrl-0 = <&twl6040_pins>;
375 /* SPI = 0, IRQ# = 119, 4 = active high level-sensitive */
376 interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_2N cascaded to gic */
377 ti,audpwron-gpio = <&gpio4 31 GPIO_ACTIVE_HIGH>; /* gpio line 127 */
379 vio-supply = <&v1v8>;
380 v2v1-supply = <&v2v1>;
383 /* regulators for vibra motor */
384 vddvibl-supply = <&vbat>;
385 vddvibr-supply = <&vbat>;
388 /* Vibra driver, motor resistance parameters */
389 ti,vibldrv-res = <8>;
390 ti,vibrdrv-res = <3>;
391 ti,viblmotor-res = <10>;
392 ti,vibrmotor-res = <10>;
397 #include "twl6030.dtsi"
398 #include "twl6030_omap4.dtsi"
401 pinctrl-names = "default";
402 pinctrl-0 = <&i2c2_pins>;
404 clock-frequency = <400000>;
408 pinctrl-names = "default";
409 pinctrl-0 = <&i2c3_pins>;
411 clock-frequency = <400000>;
415 * http://www.ti.com/lit/ds/symlink/tmp105.pdf
418 compatible = "ti,tmp105";
423 * Ambient Light Sensor
424 * http://www.rohm.com/products/databook/sensor/pdf/bh1780gli-e.pdf
427 compatible = "rohm,bh1780";
433 pinctrl-names = "default";
434 pinctrl-0 = <&i2c4_pins>;
436 clock-frequency = <400000>;
439 * 3-Axis Digital Compass
440 * http://www.sparkfun.com/datasheets/Sensors/Magneto/HMC5843.pdf
443 compatible = "honeywell,hmc5843";
449 pinctrl-names = "default";
450 pinctrl-0 = <&mcspi1_pins>;
453 compatible = "ks8851";
454 spi-max-frequency = <24000000>;
456 interrupt-parent = <&gpio2>;
457 interrupts = <2 IRQ_TYPE_LEVEL_LOW>; /* gpio line 34 */
458 vdd-supply = <&vdd_eth>;
463 vmmc-supply = <&vmmc>;
468 vmmc-supply = <&vaux1>;
482 pinctrl-names = "default";
483 pinctrl-0 = <&wl12xx_pins>;
484 vmmc-supply = <&wl12xx_vmmc>;
489 #address-cells = <1>;
492 compatible = "ti,wl1281";
494 interrupt-parent = <&gpio1>;
495 interrupts = <21 IRQ_TYPE_LEVEL_HIGH>; /* gpio 53 */
496 ref-clock-frequency = <26000000>;
497 tcxo-clock-frequency = <26000000>;
503 device-handle = <&elpida_ECB240ABACN>;
508 device-handle = <&elpida_ECB240ABACN>;
512 keypad,num-rows = <8>;
513 keypad,num-columns = <8>;
514 linux,keymap = <0x00000012 /* KEY_E */
515 0x00010013 /* KEY_R */
516 0x00020014 /* KEY_T */
517 0x00030066 /* KEY_HOME */
518 0x0004003f /* KEY_F5 */
519 0x000500f0 /* KEY_UNKNOWN */
520 0x00060017 /* KEY_I */
521 0x0007002a /* KEY_LEFTSHIFT */
522 0x01000020 /* KEY_D*/
523 0x01010021 /* KEY_F */
524 0x01020022 /* KEY_G */
525 0x010300e7 /* KEY_SEND */
526 0x01040040 /* KEY_F6 */
527 0x010500f0 /* KEY_UNKNOWN */
528 0x01060025 /* KEY_K */
529 0x0107001c /* KEY_ENTER */
530 0x0200002d /* KEY_X */
531 0x0201002e /* KEY_C */
532 0x0202002f /* KEY_V */
533 0x0203006b /* KEY_END */
534 0x02040041 /* KEY_F7 */
535 0x020500f0 /* KEY_UNKNOWN */
536 0x02060034 /* KEY_DOT */
537 0x0207003a /* KEY_CAPSLOCK */
538 0x0300002c /* KEY_Z */
539 0x0301004e /* KEY_KPLUS */
540 0x03020030 /* KEY_B */
541 0x0303003b /* KEY_F1 */
542 0x03040042 /* KEY_F8 */
543 0x030500f0 /* KEY_UNKNOWN */
544 0x03060018 /* KEY_O */
545 0x03070039 /* KEY_SPACE */
546 0x04000011 /* KEY_W */
547 0x04010015 /* KEY_Y */
548 0x04020016 /* KEY_U */
549 0x0403003c /* KEY_F2 */
550 0x04040073 /* KEY_VOLUMEUP */
551 0x040500f0 /* KEY_UNKNOWN */
552 0x04060026 /* KEY_L */
553 0x04070069 /* KEY_LEFT */
554 0x0500001f /* KEY_S */
555 0x05010023 /* KEY_H */
556 0x05020024 /* KEY_J */
557 0x0503003d /* KEY_F3 */
558 0x05040043 /* KEY_F9 */
559 0x05050072 /* KEY_VOLUMEDOWN */
560 0x05060032 /* KEY_M */
561 0x0507006a /* KEY_RIGHT */
562 0x06000010 /* KEY_Q */
563 0x0601001e /* KEY_A */
564 0x06020031 /* KEY_N */
565 0x0603009e /* KEY_BACK */
566 0x0604000e /* KEY_BACKSPACE */
567 0x060500f0 /* KEY_UNKNOWN */
568 0x06060019 /* KEY_P */
569 0x06070067 /* KEY_UP */
570 0x07000094 /* KEY_PROG1 */
571 0x07010095 /* KEY_PROG2 */
572 0x070200ca /* KEY_PROG3 */
573 0x070300cb /* KEY_PROG4 */
574 0x0704003e /* KEY_F4 */
575 0x070500f0 /* KEY_UNKNOWN */
576 0x07060160 /* KEY_OK */
577 0x0707006c>; /* KEY_DOWN */
578 linux,input-no-autorepeat;
582 interrupts-extended = <&wakeupgen GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH
583 &omap4_pmx_core OMAP4_UART2_RX>;
584 pinctrl-names = "default";
585 pinctrl-0 = <&uart2_pins>;
589 interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH
590 &omap4_pmx_core OMAP4_UART3_RX>;
591 pinctrl-names = "default";
592 pinctrl-0 = <&uart3_pins>;
596 interrupts-extended = <&wakeupgen GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH
597 &omap4_pmx_core OMAP4_UART4_RX>;
598 pinctrl-names = "default";
599 pinctrl-0 = <&uart4_pins>;
603 pinctrl-names = "default";
604 pinctrl-0 = <&mcbsp1_pins>;
609 pinctrl-names = "default";
610 pinctrl-0 = <&mcbsp2_pins>;
615 pinctrl-names = "default";
616 pinctrl-0 = <&dmic_pins>;
621 pinctrl-names = "default";
622 pinctrl-0 = <&mcpdm_pins>;
626 &twl_usb_comparator {
627 usb-supply = <&vusb>;
631 interface-type = <1>;
642 vdd-supply = <&vcxio>;
645 dsi1_out_ep: endpoint {
646 remote-endpoint = <&lcd0_in>;
647 lanes = <0 1 2 3 4 5>;
652 compatible = "tpo,taal", "panel-dsi-cm";
655 reset-gpios = <&gpio4 6 GPIO_ACTIVE_HIGH>; /* 102 */
659 remote-endpoint = <&dsi1_out_ep>;
667 vdd-supply = <&vcxio>;
670 dsi2_out_ep: endpoint {
671 remote-endpoint = <&lcd1_in>;
672 lanes = <0 1 2 3 4 5>;
677 compatible = "tpo,taal", "panel-dsi-cm";
680 reset-gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>; /* 104 */
684 remote-endpoint = <&dsi2_out_ep>;
692 vdda-supply = <&vdac>;
696 remote-endpoint = <&tpd12s015_in>;