Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
[linux-2.6-microblaze.git] / arch / arm / boot / dts / omap4-sdp.dts
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  * Copyright (C) 2011 Texas Instruments Incorporated - https://www.ti.com/
4  */
5 /dts-v1/;
6
7 #include "omap443x.dtsi"
8 #include "elpida_ecb240abacn.dtsi"
9 #include "omap4-mcpdm.dtsi"
10
11 / {
12         model = "TI OMAP4 SDP board";
13         compatible = "ti,omap4-sdp", "ti,omap4430", "ti,omap4";
14
15         memory@80000000 {
16                 device_type = "memory";
17                 reg = <0x80000000 0x40000000>; /* 1 GB */
18         };
19
20         aliases {
21                 display0 = &lcd0;
22                 display1 = &lcd1;
23                 display2 = &hdmi0;
24         };
25
26         vdd_eth: fixedregulator-vdd-eth {
27                 pinctrl-names = "default";
28                 pinctrl-0 = <&enet_enable_gpio>;
29
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         };
39
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         };
47
48         led-controller-1 {
49                 compatible = "gpio-leds";
50
51                 led-1 {
52                         label = "omap4:green:debug0";
53                         gpios = <&gpio2 29 GPIO_ACTIVE_HIGH>; /* 61 */
54                 };
55
56                 led-2 {
57                         label = "omap4:green:debug1";
58                         gpios = <&gpio1 30 GPIO_ACTIVE_HIGH>; /* 30 */
59                 };
60
61                 led-3 {
62                         label = "omap4:green:debug2";
63                         gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; /* 7 */
64                 };
65
66                 led-4 {
67                         label = "omap4:green:debug3";
68                         gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; /* 8 */
69                 };
70
71                 led-5 {
72                         label = "omap4:green:debug4";
73                         gpios = <&gpio2 18 GPIO_ACTIVE_HIGH>; /* 50 */
74                 };
75
76                 led-6 {
77                         label = "omap4:blue:user";
78                         gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* 169 */
79                 };
80
81                 led-7 {
82                         label = "omap4:red:user";
83                         gpios = <&gpio6 10 GPIO_ACTIVE_HIGH>; /* 170 */
84                 };
85
86                 led-8 {
87                         label = "omap4:green:user";
88                         gpios = <&gpio5 11 GPIO_ACTIVE_HIGH>; /* 139 */
89                 };
90         };
91
92         led-controller-2 {
93                 compatible = "pwm-leds";
94
95                 led-9 {
96                         label = "omap4::keypad";
97                         pwms = <&twl_pwm 0 7812500>;
98                         max-brightness = <127>;
99                 };
100
101                 led-10 {
102                         label = "omap4:green:chrg";
103                         pwms = <&twl_pwmled 0 7812500>;
104                         max-brightness = <255>;
105                 };
106         };
107
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         };
118
119         sound {
120                 compatible = "ti,abe-twl6040";
121                 ti,model = "SDP4430";
122
123                 ti,jack-detection = <1>;
124                 ti,mclk-freq = <38400000>;
125
126                 ti,mcpdm = <&mcpdm>;
127                 ti,dmic = <&dmic>;
128
129                 ti,twl6040 = <&twl6040>;
130
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         };
153
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         };
166
167         tpd12s015: encoder {
168                 compatible = "ti,tpd12s015";
169
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 */
173
174                 ports {
175                         #address-cells = <1>;
176                         #size-cells = <0>;
177
178                         port@0 {
179                                 reg = <0>;
180
181                                 tpd12s015_in: endpoint {
182                                         remote-endpoint = <&hdmi_out>;
183                                 };
184                         };
185
186                         port@1 {
187                                 reg = <1>;
188
189                                 tpd12s015_out: endpoint {
190                                         remote-endpoint = <&hdmi_connector_in>;
191                                 };
192                         };
193                 };
194         };
195
196         hdmi0: connector {
197                 compatible = "hdmi-connector";
198                 label = "hdmi";
199
200                 type = "c";
201
202                 port {
203                         hdmi_connector_in: endpoint {
204                                 remote-endpoint = <&tpd12s015_out>;
205                         };
206                 };
207         };
208 };
209
210 &omap4_pmx_core {
211         pinctrl-names = "default";
212         pinctrl-0 = <
213                         &dss_hdmi_pins
214                         &tpd12s015_pins
215         >;
216
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         };
225
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         };
234
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         };
241
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         };
248
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         };
257
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         };
266
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         };
275
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         };
284
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         };
292
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         };
300
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         };
307
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         };
314
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         };
321
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         };
328
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         };
335
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         };
348
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         };
355
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         };
371 };
372
373 &i2c1 {
374         pinctrl-names = "default";
375         pinctrl-0 = <&i2c1_pins>;
376
377         clock-frequency = <400000>;
378
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         };
384
385         twl6040: twl@4b {
386                 compatible = "ti,twl6040";
387                 #clock-cells = <0>;
388                 reg = <0x4b>;
389
390                 pinctrl-names = "default";
391                 pinctrl-0 = <&twl6040_pins>;
392
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 */
396
397                 vio-supply = <&v1v8>;
398                 v2v1-supply = <&v2v1>;
399                 enable-active-high;
400
401                 /* regulators for vibra motor */
402                 vddvibl-supply = <&vbat>;
403                 vddvibr-supply = <&vbat>;
404
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         };
413 };
414
415 #include "twl6030.dtsi"
416 #include "twl6030_omap4.dtsi"
417
418 &i2c2 {
419         pinctrl-names = "default";
420         pinctrl-0 = <&i2c2_pins>;
421
422         clock-frequency = <400000>;
423 };
424
425 &i2c3 {
426         pinctrl-names = "default";
427         pinctrl-0 = <&i2c3_pins>;
428
429         clock-frequency = <400000>;
430
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         };
439
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         };
448 };
449
450 &i2c4 {
451         pinctrl-names = "default";
452         pinctrl-0 = <&i2c4_pins>;
453
454         clock-frequency = <400000>;
455
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         };
464 };
465
466 &mcspi1 {
467         pinctrl-names = "default";
468         pinctrl-0 = <&mcspi1_pins>;
469
470         eth@0 {
471                 pinctrl-names = "default";
472                 pinctrl-0 = <&ks8851_pins>;
473
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         };
482 };
483
484 &mmc1 {
485         vmmc-supply = <&vmmc>;
486         bus-width = <8>;
487 };
488
489 &mmc2 {
490         vmmc-supply = <&vaux1>;
491         bus-width = <8>;
492         ti,non-removable;
493 };
494
495 &mmc3 {
496         status = "disabled";
497 };
498
499 &mmc4 {
500         status = "disabled";
501 };
502
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;
510
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         };
521 };
522
523 &emif1 {
524         cs1-used;
525         device-handle = <&elpida_ECB240ABACN>;
526 };
527
528 &emif2 {
529         cs1-used;
530         device-handle = <&elpida_ECB240ABACN>;
531 };
532
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;
601 };
602
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>;
608 };
609
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>;
615 };
616
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>;
622 };
623
624 &mcbsp1 {
625         pinctrl-names = "default";
626         pinctrl-0 = <&mcbsp1_pins>;
627         status = "okay";
628 };
629
630 &mcbsp2 {
631         pinctrl-names = "default";
632         pinctrl-0 = <&mcbsp2_pins>;
633         status = "okay";
634 };
635
636 &dmic {
637         pinctrl-names = "default";
638         pinctrl-0 = <&dmic_pins>;
639         status = "okay";
640 };
641
642 &twl_usb_comparator {
643         usb-supply = <&vusb>;
644 };
645
646 &usb_otg_hs {
647         interface-type = <1>;
648         mode = <3>;
649         power = <50>;
650 };
651
652 &dss {
653         status = "okay";
654 };
655
656 &dsi1 {
657         status = "okay";
658         vdd-supply = <&vcxio>;
659
660         port {
661                 dsi1_out_ep: endpoint {
662                         remote-endpoint = <&lcd0_in>;
663                         lanes = <0 1 2 3 4 5>;
664                 };
665         };
666
667         lcd0: panel@0 {
668                 compatible = "tpo,taal", "panel-dsi-cm";
669                 reg = <0>;
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 = "okay";
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: panel@0 {
694                 compatible = "tpo,taal", "panel-dsi-cm";
695                 reg = <0>;
696                 label = "lcd1";
697
698                 reset-gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>;      /* 104 */
699
700                 port {
701                         lcd1_in: endpoint {
702                                 remote-endpoint = <&dsi2_out_ep>;
703                         };
704                 };
705         };
706 };
707
708 &hdmi {
709         status = "okay";
710         vdda-supply = <&vdac>;
711
712         port {
713                 hdmi_out: endpoint {
714                         remote-endpoint = <&tpd12s015_in>;
715                 };
716         };
717 };