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