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 10#include "omap443x.dtsi" 11#include "elpida_ecb240abacn.dtsi" 12 13/ { 14 model = "TI OMAP4 SDP board"; 15 compatible = "ti,omap4-sdp", "ti,omap4430", "ti,omap4"; 16 17 memory@80000000 { 18 device_type = "memory"; 19 reg = <0x80000000 0x40000000>; /* 1 GB */ 20 }; 21 22 aliases { 23 display0 = &lcd0; 24 display1 = &lcd1; 25 display2 = &hdmi0; 26 }; 27 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 */ 34 enable-active-high; 35 regulator-boot-on; 36 startup-delay-us = <25000>; 37 }; 38 39 vbat: fixedregulator-vbat { 40 compatible = "regulator-fixed"; 41 regulator-name = "VBAT"; 42 regulator-min-microvolt = <3750000>; 43 regulator-max-microvolt = <3750000>; 44 regulator-boot-on; 45 }; 46 47 leds { 48 compatible = "gpio-leds"; 49 debug0 { 50 label = "omap4:green:debug0"; 51 gpios = <&gpio2 29 GPIO_ACTIVE_HIGH>; /* 61 */ 52 }; 53 54 debug1 { 55 label = "omap4:green:debug1"; 56 gpios = <&gpio1 30 GPIO_ACTIVE_HIGH>; /* 30 */ 57 }; 58 59 debug2 { 60 label = "omap4:green:debug2"; 61 gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; /* 7 */ 62 }; 63 64 debug3 { 65 label = "omap4:green:debug3"; 66 gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; /* 8 */ 67 }; 68 69 debug4 { 70 label = "omap4:green:debug4"; 71 gpios = <&gpio2 18 GPIO_ACTIVE_HIGH>; /* 50 */ 72 }; 73 74 user1 { 75 label = "omap4:blue:user"; 76 gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* 169 */ 77 }; 78 79 user2 { 80 label = "omap4:red:user"; 81 gpios = <&gpio6 10 GPIO_ACTIVE_HIGH>; /* 170 */ 82 }; 83 84 user3 { 85 label = "omap4:green:user"; 86 gpios = <&gpio5 11 GPIO_ACTIVE_HIGH>; /* 139 */ 87 }; 88 }; 89 90 pwmleds { 91 compatible = "pwm-leds"; 92 kpad { 93 label = "omap4::keypad"; 94 pwms = <&twl_pwm 0 7812500>; 95 max-brightness = <127>; 96 }; 97 98 charging { 99 label = "omap4:green:chrg"; 100 pwms = <&twl_pwmled 0 7812500>; 101 max-brightness = <255>; 102 }; 103 }; 104 105 backlight { 106 compatible = "pwm-backlight"; 107 pwms = <&twl_pwm 1 7812500>; 108 brightness-levels = < 109 0 10 20 30 40 110 50 60 70 80 90 111 100 110 120 127 112 >; 113 default-brightness-level = <13>; 114 }; 115 116 sound { 117 compatible = "ti,abe-twl6040"; 118 ti,model = "SDP4430"; 119 120 ti,jack-detection = <1>; 121 ti,mclk-freq = <38400000>; 122 123 ti,mcpdm = <&mcpdm>; 124 ti,dmic = <&dmic>; 125 126 ti,twl6040 = <&twl6040>; 127 128 /* Audio routing */ 129 ti,audio-routing = 130 "Headset Stereophone", "HSOL", 131 "Headset Stereophone", "HSOR", 132 "Earphone Spk", "EP", 133 "Ext Spk", "HFL", 134 "Ext Spk", "HFR", 135 "Line Out", "AUXL", 136 "Line Out", "AUXR", 137 "Vibrator", "VIBRAL", 138 "Vibrator", "VIBRAR", 139 "HSMIC", "Headset Mic", 140 "Headset Mic", "Headset Mic Bias", 141 "MAINMIC", "Main Handset Mic", 142 "Main Handset Mic", "Main Mic Bias", 143 "SUBMIC", "Sub Handset Mic", 144 "Sub Handset Mic", "Main Mic Bias", 145 "AFML", "Line In", 146 "AFMR", "Line In", 147 "DMic", "Digital Mic", 148 "Digital Mic", "Digital Mic1 Bias"; 149 }; 150 151 /* regulator for wl12xx on sdio5 */ 152 wl12xx_vmmc: wl12xx_vmmc { 153 pinctrl-names = "default"; 154 pinctrl-0 = <&wl12xx_gpio>; 155 compatible = "regulator-fixed"; 156 regulator-name = "vwl1271"; 157 regulator-min-microvolt = <1800000>; 158 regulator-max-microvolt = <1800000>; 159 gpio = <&gpio2 22 GPIO_ACTIVE_HIGH>; 160 startup-delay-us = <70000>; 161 enable-active-high; 162 }; 163 164 tpd12s015: encoder { 165 compatible = "ti,tpd12s015"; 166 167 gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>, /* 60, CT CP HPD */ 168 <&gpio2 9 GPIO_ACTIVE_HIGH>, /* 41, LS OE */ 169 <&gpio2 31 GPIO_ACTIVE_HIGH>; /* 63, HPD */ 170 171 ports { 172 #address-cells = <1>; 173 #size-cells = <0>; 174 175 port@0 { 176 reg = <0>; 177 178 tpd12s015_in: endpoint { 179 remote-endpoint = <&hdmi_out>; 180 }; 181 }; 182 183 port@1 { 184 reg = <1>; 185 186 tpd12s015_out: endpoint { 187 remote-endpoint = <&hdmi_connector_in>; 188 }; 189 }; 190 }; 191 }; 192 193 hdmi0: connector { 194 compatible = "hdmi-connector"; 195 label = "hdmi"; 196 197 type = "c"; 198 199 port { 200 hdmi_connector_in: endpoint { 201 remote-endpoint = <&tpd12s015_out>; 202 }; 203 }; 204 }; 205}; 206 207&omap4_pmx_core { 208 pinctrl-names = "default"; 209 pinctrl-0 = < 210 &dss_hdmi_pins 211 &tpd12s015_pins 212 >; 213 214 uart2_pins: pinmux_uart2_pins { 215 pinctrl-single,pins = < 216 OMAP4_IOPAD(0x118, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_cts.uart2_cts */ 217 OMAP4_IOPAD(0x11a, PIN_OUTPUT | MUX_MODE0) /* uart2_rts.uart2_rts */ 218 OMAP4_IOPAD(0x11c, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_rx.uart2_rx */ 219 OMAP4_IOPAD(0x11e, PIN_OUTPUT | MUX_MODE0) /* uart2_tx.uart2_tx */ 220 >; 221 }; 222 223 uart3_pins: pinmux_uart3_pins { 224 pinctrl-single,pins = < 225 OMAP4_IOPAD(0x140, PIN_INPUT_PULLUP | MUX_MODE0) /* uart3_cts_rctx.uart3_cts_rctx */ 226 OMAP4_IOPAD(0x142, PIN_OUTPUT | MUX_MODE0) /* uart3_rts_sd.uart3_rts_sd */ 227 OMAP4_IOPAD(0x144, PIN_INPUT | MUX_MODE0) /* uart3_rx_irrx.uart3_rx_irrx */ 228 OMAP4_IOPAD(0x146, PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx.uart3_tx_irtx */ 229 >; 230 }; 231 232 uart4_pins: pinmux_uart4_pins { 233 pinctrl-single,pins = < 234 OMAP4_IOPAD(0x15c, PIN_INPUT | MUX_MODE0) /* uart4_rx.uart4_rx */ 235 OMAP4_IOPAD(0x15e, PIN_OUTPUT | MUX_MODE0) /* uart4_tx.uart4_tx */ 236 >; 237 }; 238 239 twl6040_pins: pinmux_twl6040_pins { 240 pinctrl-single,pins = < 241 OMAP4_IOPAD(0x120, PIN_OUTPUT | MUX_MODE3) /* hdq_sio.gpio_127 */ 242 OMAP4_IOPAD(0x1a0, PIN_INPUT | MUX_MODE0) /* sys_nirq2.sys_nirq2 */ 243 >; 244 }; 245 246 mcpdm_pins: pinmux_mcpdm_pins { 247 pinctrl-single,pins = < 248 OMAP4_IOPAD(0x106, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_ul_data.abe_pdm_ul_data */ 249 OMAP4_IOPAD(0x108, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_dl_data.abe_pdm_dl_data */ 250 OMAP4_IOPAD(0x10a, PIN_INPUT_PULLUP | MUX_MODE0) /* abe_pdm_frame.abe_pdm_frame */ 251 OMAP4_IOPAD(0x10c, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_lb_clk.abe_pdm_lb_clk */ 252 OMAP4_IOPAD(0x10e, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_clks.abe_clks */ 253 >; 254 }; 255 256 dmic_pins: pinmux_dmic_pins { 257 pinctrl-single,pins = < 258 OMAP4_IOPAD(0x110, PIN_OUTPUT | MUX_MODE0) /* abe_dmic_clk1.abe_dmic_clk1 */ 259 OMAP4_IOPAD(0x112, PIN_INPUT | MUX_MODE0) /* abe_dmic_din1.abe_dmic_din1 */ 260 OMAP4_IOPAD(0x114, PIN_INPUT | MUX_MODE0) /* abe_dmic_din2.abe_dmic_din2 */ 261 OMAP4_IOPAD(0x116, PIN_INPUT | MUX_MODE0) /* abe_dmic_din3.abe_dmic_din3 */ 262 >; 263 }; 264 265 mcbsp1_pins: pinmux_mcbsp1_pins { 266 pinctrl-single,pins = < 267 OMAP4_IOPAD(0x0fe, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_clkx.abe_mcbsp1_clkx */ 268 OMAP4_IOPAD(0x100, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dr.abe_mcbsp1_dr */ 269 OMAP4_IOPAD(0x102, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dx.abe_mcbsp1_dx */ 270 OMAP4_IOPAD(0x104, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_fsx.abe_mcbsp1_fsx */ 271 >; 272 }; 273 274 mcbsp2_pins: pinmux_mcbsp2_pins { 275 pinctrl-single,pins = < 276 OMAP4_IOPAD(0x0f6, PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_clkx.abe_mcbsp2_clkx */ 277 OMAP4_IOPAD(0x0f8, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp2_dr.abe_mcbsp2_dr */ 278 OMAP4_IOPAD(0x0fa, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp2_dx.abe_mcbsp2_dx */ 279 OMAP4_IOPAD(0x0fc, PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_fsx.abe_mcbsp2_fsx */ 280 >; 281 }; 282 283 mcspi1_pins: pinmux_mcspi1_pins { 284 pinctrl-single,pins = < 285 OMAP4_IOPAD(0x132, PIN_INPUT | MUX_MODE0) /* mcspi1_clk.mcspi1_clk */ 286 OMAP4_IOPAD(0x134, PIN_INPUT | MUX_MODE0) /* mcspi1_somi.mcspi1_somi */ 287 OMAP4_IOPAD(0x136, PIN_INPUT | MUX_MODE0) /* mcspi1_simo.mcspi1_simo */ 288 OMAP4_IOPAD(0x138, PIN_INPUT | MUX_MODE0) /* mcspi1_cs0.mcspi1_cs0 */ 289 >; 290 }; 291 292 dss_hdmi_pins: pinmux_dss_hdmi_pins { 293 pinctrl-single,pins = < 294 OMAP4_IOPAD(0x09a, PIN_INPUT | MUX_MODE0) /* hdmi_cec.hdmi_cec */ 295 OMAP4_IOPAD(0x09c, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_scl.hdmi_scl */ 296 OMAP4_IOPAD(0x09e, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_sda.hdmi_sda */ 297 >; 298 }; 299 300 tpd12s015_pins: pinmux_tpd12s015_pins { 301 pinctrl-single,pins = < 302 OMAP4_IOPAD(0x062, PIN_OUTPUT | MUX_MODE3) /* gpmc_a17.gpio_41 */ 303 OMAP4_IOPAD(0x088, PIN_OUTPUT | MUX_MODE3) /* gpmc_nbe1.gpio_60 */ 304 OMAP4_IOPAD(0x098, PIN_INPUT_PULLDOWN | MUX_MODE3) /* hdmi_hpd.gpio_63 */ 305 >; 306 }; 307 308 i2c1_pins: pinmux_i2c1_pins { 309 pinctrl-single,pins = < 310 OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */ 311 OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */ 312 >; 313 }; 314 315 i2c2_pins: pinmux_i2c2_pins { 316 pinctrl-single,pins = < 317 OMAP4_IOPAD(0x126, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */ 318 OMAP4_IOPAD(0x128, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */ 319 >; 320 }; 321 322 i2c3_pins: pinmux_i2c3_pins { 323 pinctrl-single,pins = < 324 OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */ 325 OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */ 326 >; 327 }; 328 329 i2c4_pins: pinmux_i2c4_pins { 330 pinctrl-single,pins = < 331 OMAP4_IOPAD(0x12e, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_scl */ 332 OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */ 333 >; 334 }; 335 336 /* wl12xx GPIO output for WLAN_EN */ 337 wl12xx_gpio: pinmux_wl12xx_gpio { 338 pinctrl-single,pins = < 339 OMAP4_IOPAD(0x07c, PIN_OUTPUT | MUX_MODE3) /* gpmc_nwp.gpio_54 */ 340 >; 341 }; 342 343 /* wl12xx GPIO inputs and SDIO pins */ 344 wl12xx_pins: pinmux_wl12xx_pins { 345 pinctrl-single,pins = < 346 OMAP4_IOPAD(0x07a, PIN_INPUT | MUX_MODE3) /* gpmc_ncs3.gpio_53 */ 347 OMAP4_IOPAD(0x148, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_clk.sdmmc5_clk */ 348 OMAP4_IOPAD(0x14a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_cmd.sdmmc5_cmd */ 349 OMAP4_IOPAD(0x14c, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat0.sdmmc5_dat0 */ 350 OMAP4_IOPAD(0x14e, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat1.sdmmc5_dat1 */ 351 OMAP4_IOPAD(0x150, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat2.sdmmc5_dat2 */ 352 OMAP4_IOPAD(0x152, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat3.sdmmc5_dat3 */ 353 >; 354 }; 355}; 356 357&i2c1 { 358 pinctrl-names = "default"; 359 pinctrl-0 = <&i2c1_pins>; 360 361 clock-frequency = <400000>; 362 363 twl: twl@48 { 364 reg = <0x48>; 365 /* SPI = 0, IRQ# = 7, 4 = active high level-sensitive */ 366 interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_1N cascaded to gic */ 367 }; 368 369 twl6040: twl@4b { 370 compatible = "ti,twl6040"; 371 #clock-cells = <0>; 372 reg = <0x4b>; 373 374 pinctrl-names = "default"; 375 pinctrl-0 = <&twl6040_pins>; 376 377 /* SPI = 0, IRQ# = 119, 4 = active high level-sensitive */ 378 interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_2N cascaded to gic */ 379 ti,audpwron-gpio = <&gpio4 31 GPIO_ACTIVE_HIGH>; /* gpio line 127 */ 380 381 vio-supply = <&v1v8>; 382 v2v1-supply = <&v2v1>; 383 enable-active-high; 384 385 /* regulators for vibra motor */ 386 vddvibl-supply = <&vbat>; 387 vddvibr-supply = <&vbat>; 388 389 vibra { 390 /* Vibra driver, motor resistance parameters */ 391 ti,vibldrv-res = <8>; 392 ti,vibrdrv-res = <3>; 393 ti,viblmotor-res = <10>; 394 ti,vibrmotor-res = <10>; 395 }; 396 }; 397}; 398 399#include "twl6030.dtsi" 400#include "twl6030_omap4.dtsi" 401 402&i2c2 { 403 pinctrl-names = "default"; 404 pinctrl-0 = <&i2c2_pins>; 405 406 clock-frequency = <400000>; 407}; 408 409&i2c3 { 410 pinctrl-names = "default"; 411 pinctrl-0 = <&i2c3_pins>; 412 413 clock-frequency = <400000>; 414 415 /* 416 * Temperature Sensor 417 * http://www.ti.com/lit/ds/symlink/tmp105.pdf 418 */ 419 tmp105@48 { 420 compatible = "ti,tmp105"; 421 reg = <0x48>; 422 }; 423 424 /* 425 * Ambient Light Sensor 426 * http://www.rohm.com/products/databook/sensor/pdf/bh1780gli-e.pdf 427 */ 428 bh1780@29 { 429 compatible = "rohm,bh1780"; 430 reg = <0x29>; 431 }; 432}; 433 434&i2c4 { 435 pinctrl-names = "default"; 436 pinctrl-0 = <&i2c4_pins>; 437 438 clock-frequency = <400000>; 439 440 /* 441 * 3-Axis Digital Compass 442 * http://www.sparkfun.com/datasheets/Sensors/Magneto/HMC5843.pdf 443 */ 444 hmc5843@1e { 445 compatible = "honeywell,hmc5843"; 446 reg = <0x1e>; 447 }; 448}; 449 450&mcspi1 { 451 pinctrl-names = "default"; 452 pinctrl-0 = <&mcspi1_pins>; 453 454 eth@0 { 455 compatible = "ks8851"; 456 spi-max-frequency = <24000000>; 457 reg = <0>; 458 interrupt-parent = <&gpio2>; 459 interrupts = <2 IRQ_TYPE_LEVEL_LOW>; /* gpio line 34 */ 460 vdd-supply = <&vdd_eth>; 461 }; 462}; 463 464&mmc1 { 465 vmmc-supply = <&vmmc>; 466 bus-width = <8>; 467}; 468 469&mmc2 { 470 vmmc-supply = <&vaux1>; 471 bus-width = <8>; 472 ti,non-removable; 473}; 474 475&mmc3 { 476 status = "disabled"; 477}; 478 479&mmc4 { 480 status = "disabled"; 481}; 482 483&mmc5 { 484 pinctrl-names = "default"; 485 pinctrl-0 = <&wl12xx_pins>; 486 vmmc-supply = <&wl12xx_vmmc>; 487 non-removable; 488 bus-width = <4>; 489 cap-power-off-card; 490 491 #address-cells = <1>; 492 #size-cells = <0>; 493 wlcore: wlcore@2 { 494 compatible = "ti,wl1281"; 495 reg = <2>; 496 interrupt-parent = <&gpio1>; 497 interrupts = <21 IRQ_TYPE_LEVEL_HIGH>; /* gpio 53 */ 498 ref-clock-frequency = <26000000>; 499 tcxo-clock-frequency = <26000000>; 500 }; 501}; 502 503&emif1 { 504 cs1-used; 505 device-handle = <&elpida_ECB240ABACN>; 506}; 507 508&emif2 { 509 cs1-used; 510 device-handle = <&elpida_ECB240ABACN>; 511}; 512 513&keypad { 514 keypad,num-rows = <8>; 515 keypad,num-columns = <8>; 516 linux,keymap = <0x00000012 /* KEY_E */ 517 0x00010013 /* KEY_R */ 518 0x00020014 /* KEY_T */ 519 0x00030066 /* KEY_HOME */ 520 0x0004003f /* KEY_F5 */ 521 0x000500f0 /* KEY_UNKNOWN */ 522 0x00060017 /* KEY_I */ 523 0x0007002a /* KEY_LEFTSHIFT */ 524 0x01000020 /* KEY_D*/ 525 0x01010021 /* KEY_F */ 526 0x01020022 /* KEY_G */ 527 0x010300e7 /* KEY_SEND */ 528 0x01040040 /* KEY_F6 */ 529 0x010500f0 /* KEY_UNKNOWN */ 530 0x01060025 /* KEY_K */ 531 0x0107001c /* KEY_ENTER */ 532 0x0200002d /* KEY_X */ 533 0x0201002e /* KEY_C */ 534 0x0202002f /* KEY_V */ 535 0x0203006b /* KEY_END */ 536 0x02040041 /* KEY_F7 */ 537 0x020500f0 /* KEY_UNKNOWN */ 538 0x02060034 /* KEY_DOT */ 539 0x0207003a /* KEY_CAPSLOCK */ 540 0x0300002c /* KEY_Z */ 541 0x0301004e /* KEY_KPLUS */ 542 0x03020030 /* KEY_B */ 543 0x0303003b /* KEY_F1 */ 544 0x03040042 /* KEY_F8 */ 545 0x030500f0 /* KEY_UNKNOWN */ 546 0x03060018 /* KEY_O */ 547 0x03070039 /* KEY_SPACE */ 548 0x04000011 /* KEY_W */ 549 0x04010015 /* KEY_Y */ 550 0x04020016 /* KEY_U */ 551 0x0403003c /* KEY_F2 */ 552 0x04040073 /* KEY_VOLUMEUP */ 553 0x040500f0 /* KEY_UNKNOWN */ 554 0x04060026 /* KEY_L */ 555 0x04070069 /* KEY_LEFT */ 556 0x0500001f /* KEY_S */ 557 0x05010023 /* KEY_H */ 558 0x05020024 /* KEY_J */ 559 0x0503003d /* KEY_F3 */ 560 0x05040043 /* KEY_F9 */ 561 0x05050072 /* KEY_VOLUMEDOWN */ 562 0x05060032 /* KEY_M */ 563 0x0507006a /* KEY_RIGHT */ 564 0x06000010 /* KEY_Q */ 565 0x0601001e /* KEY_A */ 566 0x06020031 /* KEY_N */ 567 0x0603009e /* KEY_BACK */ 568 0x0604000e /* KEY_BACKSPACE */ 569 0x060500f0 /* KEY_UNKNOWN */ 570 0x06060019 /* KEY_P */ 571 0x06070067 /* KEY_UP */ 572 0x07000094 /* KEY_PROG1 */ 573 0x07010095 /* KEY_PROG2 */ 574 0x070200ca /* KEY_PROG3 */ 575 0x070300cb /* KEY_PROG4 */ 576 0x0704003e /* KEY_F4 */ 577 0x070500f0 /* KEY_UNKNOWN */ 578 0x07060160 /* KEY_OK */ 579 0x0707006c>; /* KEY_DOWN */ 580 linux,input-no-autorepeat; 581}; 582 583&uart2 { 584 interrupts-extended = <&wakeupgen GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH 585 &omap4_pmx_core OMAP4_UART2_RX>; 586 pinctrl-names = "default"; 587 pinctrl-0 = <&uart2_pins>; 588}; 589 590&uart3 { 591 interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH 592 &omap4_pmx_core OMAP4_UART3_RX>; 593 pinctrl-names = "default"; 594 pinctrl-0 = <&uart3_pins>; 595}; 596 597&uart4 { 598 interrupts-extended = <&wakeupgen GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH 599 &omap4_pmx_core OMAP4_UART4_RX>; 600 pinctrl-names = "default"; 601 pinctrl-0 = <&uart4_pins>; 602}; 603 604&mcbsp1 { 605 pinctrl-names = "default"; 606 pinctrl-0 = <&mcbsp1_pins>; 607 status = "okay"; 608}; 609 610&mcbsp2 { 611 pinctrl-names = "default"; 612 pinctrl-0 = <&mcbsp2_pins>; 613 status = "okay"; 614}; 615 616&dmic { 617 pinctrl-names = "default"; 618 pinctrl-0 = <&dmic_pins>; 619 status = "okay"; 620}; 621 622&mcpdm { 623 pinctrl-names = "default"; 624 pinctrl-0 = <&mcpdm_pins>; 625 626 clocks = <&twl6040>; 627 clock-names = "pdmclk"; 628 629 status = "okay"; 630}; 631 632&twl_usb_comparator { 633 usb-supply = <&vusb>; 634}; 635 636&usb_otg_hs { 637 interface-type = <1>; 638 mode = <3>; 639 power = <50>; 640}; 641 642&dss { 643 status = "ok"; 644}; 645 646&dsi1 { 647 status = "ok"; 648 vdd-supply = <&vcxio>; 649 650 port { 651 dsi1_out_ep: endpoint { 652 remote-endpoint = <&lcd0_in>; 653 lanes = <0 1 2 3 4 5>; 654 }; 655 }; 656 657 lcd0: display { 658 compatible = "tpo,taal", "panel-dsi-cm"; 659 label = "lcd0"; 660 661 reset-gpios = <&gpio4 6 GPIO_ACTIVE_HIGH>; /* 102 */ 662 663 port { 664 lcd0_in: endpoint { 665 remote-endpoint = <&dsi1_out_ep>; 666 }; 667 }; 668 }; 669}; 670 671&dsi2 { 672 status = "ok"; 673 vdd-supply = <&vcxio>; 674 675 port { 676 dsi2_out_ep: endpoint { 677 remote-endpoint = <&lcd1_in>; 678 lanes = <0 1 2 3 4 5>; 679 }; 680 }; 681 682 lcd1: display { 683 compatible = "tpo,taal", "panel-dsi-cm"; 684 label = "lcd1"; 685 686 reset-gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>; /* 104 */ 687 688 port { 689 lcd1_in: endpoint { 690 remote-endpoint = <&dsi2_out_ep>; 691 }; 692 }; 693 }; 694}; 695 696&hdmi { 697 status = "ok"; 698 vdda-supply = <&vdac>; 699 700 port { 701 hdmi_out: endpoint { 702 remote-endpoint = <&tpd12s015_in>; 703 }; 704 }; 705}; 706