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