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