Loading...
1/*
2 * Copyright (C) 2011-2013 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#include "elpida_ecb240abacn.dtsi"
9
10/ {
11 memory@80000000 {
12 device_type = "memory";
13 reg = <0x80000000 0x40000000>; /* 1 GB */
14 };
15
16 chosen {
17 stdout-path = &uart3;
18 };
19
20 aliases {
21 display0 = &dvi0;
22 display1 = &hdmi0;
23 ethernet = ðernet;
24 };
25
26 leds: leds {
27 compatible = "gpio-leds";
28 pinctrl-names = "default";
29 pinctrl-0 = <
30 &led_wkgpio_pins
31 >;
32
33 heartbeat {
34 label = "pandaboard::status1";
35 gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
36 linux,default-trigger = "heartbeat";
37 };
38
39 mmc {
40 label = "pandaboard::status2";
41 gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
42 linux,default-trigger = "mmc0";
43 };
44 };
45
46 sound: sound {
47 compatible = "ti,abe-twl6040";
48 ti,model = "PandaBoard";
49
50 ti,mclk-freq = <38400000>;
51
52 ti,mcpdm = <&mcpdm>;
53
54 ti,twl6040 = <&twl6040>;
55
56 /* Audio routing */
57 ti,audio-routing =
58 "Headset Stereophone", "HSOL",
59 "Headset Stereophone", "HSOR",
60 "Ext Spk", "HFL",
61 "Ext Spk", "HFR",
62 "Line Out", "AUXL",
63 "Line Out", "AUXR",
64 "HSMIC", "Headset Mic",
65 "Headset Mic", "Headset Mic Bias",
66 "AFML", "Line In",
67 "AFMR", "Line In";
68 };
69
70 /* HS USB Port 1 Power */
71 hsusb1_power: hsusb1_power_reg {
72 compatible = "regulator-fixed";
73 regulator-name = "hsusb1_vbus";
74 regulator-min-microvolt = <3300000>;
75 regulator-max-microvolt = <3300000>;
76 gpio = <&gpio1 1 GPIO_ACTIVE_HIGH>; /* gpio_1 */
77 startup-delay-us = <70000>;
78 enable-active-high;
79 /*
80 * boot-on is required along with always-on as the
81 * regulator framework doesn't enable the regulator
82 * if boot-on is not there.
83 */
84 regulator-always-on;
85 regulator-boot-on;
86 };
87
88 /* HS USB Host PHY on PORT 1 */
89 hsusb1_phy: hsusb1_phy {
90 compatible = "usb-nop-xceiv";
91 reset-gpios = <&gpio2 30 GPIO_ACTIVE_LOW>; /* gpio_62 */
92 #phy-cells = <0>;
93 vcc-supply = <&hsusb1_power>;
94 clocks = <&auxclk3_ck>;
95 clock-names = "main_clk";
96 clock-frequency = <19200000>;
97 };
98
99 /* regulator for wl12xx on sdio5 */
100 wl12xx_vmmc: wl12xx_vmmc {
101 pinctrl-names = "default";
102 pinctrl-0 = <&wl12xx_gpio>;
103 compatible = "regulator-fixed";
104 regulator-name = "vwl1271";
105 regulator-min-microvolt = <1800000>;
106 regulator-max-microvolt = <1800000>;
107 gpio = <&gpio2 11 GPIO_ACTIVE_HIGH>;
108 startup-delay-us = <70000>;
109 enable-active-high;
110 };
111
112 tfp410: encoder0 {
113 compatible = "ti,tfp410";
114 powerdown-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>; /* gpio_0 */
115
116 ports {
117 #address-cells = <1>;
118 #size-cells = <0>;
119
120 port@0 {
121 reg = <0>;
122
123 tfp410_in: endpoint {
124 remote-endpoint = <&dpi_out>;
125 };
126 };
127
128 port@1 {
129 reg = <1>;
130
131 tfp410_out: endpoint {
132 remote-endpoint = <&dvi_connector_in>;
133 };
134 };
135 };
136 };
137
138 dvi0: connector0 {
139 compatible = "dvi-connector";
140 label = "dvi";
141
142 digital;
143
144 ddc-i2c-bus = <&i2c3>;
145
146 port {
147 dvi_connector_in: endpoint {
148 remote-endpoint = <&tfp410_out>;
149 };
150 };
151 };
152
153 tpd12s015: encoder1 {
154 compatible = "ti,tpd12s015";
155
156 gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>, /* 60, CT CP HPD */
157 <&gpio2 9 GPIO_ACTIVE_HIGH>, /* 41, LS OE */
158 <&gpio2 31 GPIO_ACTIVE_HIGH>; /* 63, HPD */
159
160 ports {
161 #address-cells = <1>;
162 #size-cells = <0>;
163
164 port@0 {
165 reg = <0>;
166
167 tpd12s015_in: endpoint {
168 remote-endpoint = <&hdmi_out>;
169 };
170 };
171
172 port@1 {
173 reg = <1>;
174
175 tpd12s015_out: endpoint {
176 remote-endpoint = <&hdmi_connector_in>;
177 };
178 };
179 };
180 };
181
182 hdmi0: connector1 {
183 compatible = "hdmi-connector";
184 label = "hdmi";
185
186 type = "a";
187
188 port {
189 hdmi_connector_in: endpoint {
190 remote-endpoint = <&tpd12s015_out>;
191 };
192 };
193 };
194};
195
196&omap4_pmx_core {
197 pinctrl-names = "default";
198 pinctrl-0 = <
199 &dss_dpi_pins
200 &tfp410_pins
201 &dss_hdmi_pins
202 &tpd12s015_pins
203 &hsusbb1_pins
204 >;
205
206 twl6040_pins: pinmux_twl6040_pins {
207 pinctrl-single,pins = <
208 OMAP4_IOPAD(0x120, PIN_OUTPUT | MUX_MODE3) /* hdq_sio.gpio_127 */
209 OMAP4_IOPAD(0x1a0, PIN_INPUT | MUX_MODE0) /* sys_nirq2.sys_nirq2 */
210 >;
211 };
212
213 mcpdm_pins: pinmux_mcpdm_pins {
214 pinctrl-single,pins = <
215 OMAP4_IOPAD(0x106, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_ul_data.abe_pdm_ul_data */
216 OMAP4_IOPAD(0x108, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_dl_data.abe_pdm_dl_data */
217 OMAP4_IOPAD(0x10a, PIN_INPUT_PULLUP | MUX_MODE0) /* abe_pdm_frame.abe_pdm_frame */
218 OMAP4_IOPAD(0x10c, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_lb_clk.abe_pdm_lb_clk */
219 OMAP4_IOPAD(0x10e, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_clks.abe_clks */
220 >;
221 };
222
223 mcbsp1_pins: pinmux_mcbsp1_pins {
224 pinctrl-single,pins = <
225 OMAP4_IOPAD(0x0fe, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_clkx.abe_mcbsp1_clkx */
226 OMAP4_IOPAD(0x100, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dr.abe_mcbsp1_dr */
227 OMAP4_IOPAD(0x102, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dx.abe_mcbsp1_dx */
228 OMAP4_IOPAD(0x104, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_fsx.abe_mcbsp1_fsx */
229 >;
230 };
231
232 dss_dpi_pins: pinmux_dss_dpi_pins {
233 pinctrl-single,pins = <
234 OMAP4_IOPAD(0x162, PIN_OUTPUT | MUX_MODE5) /* dispc2_data23 */
235 OMAP4_IOPAD(0x164, PIN_OUTPUT | MUX_MODE5) /* dispc2_data22 */
236 OMAP4_IOPAD(0x166, PIN_OUTPUT | MUX_MODE5) /* dispc2_data21 */
237 OMAP4_IOPAD(0x168, PIN_OUTPUT | MUX_MODE5) /* dispc2_data20 */
238 OMAP4_IOPAD(0x16a, PIN_OUTPUT | MUX_MODE5) /* dispc2_data19 */
239 OMAP4_IOPAD(0x16c, PIN_OUTPUT | MUX_MODE5) /* dispc2_data18 */
240 OMAP4_IOPAD(0x16e, PIN_OUTPUT | MUX_MODE5) /* dispc2_data15 */
241 OMAP4_IOPAD(0x170, PIN_OUTPUT | MUX_MODE5) /* dispc2_data14 */
242 OMAP4_IOPAD(0x172, PIN_OUTPUT | MUX_MODE5) /* dispc2_data13 */
243 OMAP4_IOPAD(0x174, PIN_OUTPUT | MUX_MODE5) /* dispc2_data12 */
244 OMAP4_IOPAD(0x176, PIN_OUTPUT | MUX_MODE5) /* dispc2_data11 */
245
246 OMAP4_IOPAD(0x1b4, PIN_OUTPUT | MUX_MODE5) /* dispc2_data10 */
247 OMAP4_IOPAD(0x1b6, PIN_OUTPUT | MUX_MODE5) /* dispc2_data9 */
248 OMAP4_IOPAD(0x1b8, PIN_OUTPUT | MUX_MODE5) /* dispc2_data16 */
249 OMAP4_IOPAD(0x1ba, PIN_OUTPUT | MUX_MODE5) /* dispc2_data17 */
250 OMAP4_IOPAD(0x1bc, PIN_OUTPUT | MUX_MODE5) /* dispc2_hsync */
251 OMAP4_IOPAD(0x1be, PIN_OUTPUT | MUX_MODE5) /* dispc2_pclk */
252 OMAP4_IOPAD(0x1c0, PIN_OUTPUT | MUX_MODE5) /* dispc2_vsync */
253 OMAP4_IOPAD(0x1c2, PIN_OUTPUT | MUX_MODE5) /* dispc2_de */
254 OMAP4_IOPAD(0x1c4, PIN_OUTPUT | MUX_MODE5) /* dispc2_data8 */
255 OMAP4_IOPAD(0x1c6, PIN_OUTPUT | MUX_MODE5) /* dispc2_data7 */
256 OMAP4_IOPAD(0x1c8, PIN_OUTPUT | MUX_MODE5) /* dispc2_data6 */
257 OMAP4_IOPAD(0x1ca, PIN_OUTPUT | MUX_MODE5) /* dispc2_data5 */
258 OMAP4_IOPAD(0x1cc, PIN_OUTPUT | MUX_MODE5) /* dispc2_data4 */
259 OMAP4_IOPAD(0x1ce, PIN_OUTPUT | MUX_MODE5) /* dispc2_data3 */
260
261 OMAP4_IOPAD(0x1d0, PIN_OUTPUT | MUX_MODE5) /* dispc2_data2 */
262 OMAP4_IOPAD(0x1d2, PIN_OUTPUT | MUX_MODE5) /* dispc2_data1 */
263 OMAP4_IOPAD(0x1d4, PIN_OUTPUT | MUX_MODE5) /* dispc2_data0 */
264 >;
265 };
266
267 tfp410_pins: pinmux_tfp410_pins {
268 pinctrl-single,pins = <
269 OMAP4_IOPAD(0x184, PIN_OUTPUT | MUX_MODE3) /* gpio_0 */
270 >;
271 };
272
273 dss_hdmi_pins: pinmux_dss_hdmi_pins {
274 pinctrl-single,pins = <
275 OMAP4_IOPAD(0x09a, PIN_INPUT | MUX_MODE0) /* hdmi_cec.hdmi_cec */
276 OMAP4_IOPAD(0x09c, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_scl.hdmi_scl */
277 OMAP4_IOPAD(0x09e, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_sda.hdmi_sda */
278 >;
279 };
280
281 tpd12s015_pins: pinmux_tpd12s015_pins {
282 pinctrl-single,pins = <
283 OMAP4_IOPAD(0x062, PIN_OUTPUT | MUX_MODE3) /* gpmc_a17.gpio_41 */
284 OMAP4_IOPAD(0x088, PIN_OUTPUT | MUX_MODE3) /* gpmc_nbe1.gpio_60 */
285 OMAP4_IOPAD(0x098, PIN_INPUT_PULLDOWN | MUX_MODE3) /* hdmi_hpd.gpio_63 */
286 >;
287 };
288
289 hsusbb1_pins: pinmux_hsusbb1_pins {
290 pinctrl-single,pins = <
291 OMAP4_IOPAD(0x0c2, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_clk.usbb1_ulpiphy_clk */
292 OMAP4_IOPAD(0x0c4, PIN_OUTPUT | MUX_MODE4) /* usbb1_ulpitll_stp.usbb1_ulpiphy_stp */
293 OMAP4_IOPAD(0x0c6, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dir.usbb1_ulpiphy_dir */
294 OMAP4_IOPAD(0x0c8, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_nxt.usbb1_ulpiphy_nxt */
295 OMAP4_IOPAD(0x0ca, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat0.usbb1_ulpiphy_dat0 */
296 OMAP4_IOPAD(0x0cc, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat1.usbb1_ulpiphy_dat1 */
297 OMAP4_IOPAD(0x0ce, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat2.usbb1_ulpiphy_dat2 */
298 OMAP4_IOPAD(0x0d0, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat3.usbb1_ulpiphy_dat3 */
299 OMAP4_IOPAD(0x0d2, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat4.usbb1_ulpiphy_dat4 */
300 OMAP4_IOPAD(0x0d4, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat5.usbb1_ulpiphy_dat5 */
301 OMAP4_IOPAD(0x0d6, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat6.usbb1_ulpiphy_dat6 */
302 OMAP4_IOPAD(0x0d8, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat7.usbb1_ulpiphy_dat7 */
303 >;
304 };
305
306 i2c1_pins: pinmux_i2c1_pins {
307 pinctrl-single,pins = <
308 OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */
309 OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */
310 >;
311 };
312
313 i2c2_pins: pinmux_i2c2_pins {
314 pinctrl-single,pins = <
315 OMAP4_IOPAD(0x126, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */
316 OMAP4_IOPAD(0x128, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */
317 >;
318 };
319
320 i2c3_pins: pinmux_i2c3_pins {
321 pinctrl-single,pins = <
322 OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */
323 OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */
324 >;
325 };
326
327 i2c4_pins: pinmux_i2c4_pins {
328 pinctrl-single,pins = <
329 OMAP4_IOPAD(0x12e, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_scl */
330 OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */
331 >;
332 };
333
334 /*
335 * wl12xx GPIO outputs for WLAN_EN, BT_EN, FM_EN, BT_WAKEUP
336 * REVISIT: Are the pull-ups needed for GPIO 48 and 49?
337 */
338 wl12xx_gpio: pinmux_wl12xx_gpio {
339 pinctrl-single,pins = <
340 OMAP4_IOPAD(0x066, PIN_OUTPUT | MUX_MODE3) /* gpmc_a19.gpio_43 */
341 OMAP4_IOPAD(0x06c, PIN_OUTPUT | MUX_MODE3) /* gpmc_a22.gpio_46 */
342 OMAP4_IOPAD(0x070, PIN_OUTPUT_PULLUP | MUX_MODE3) /* gpmc_a24.gpio_48 */
343 OMAP4_IOPAD(0x072, PIN_OUTPUT_PULLUP | MUX_MODE3) /* gpmc_a25.gpio_49 */
344 >;
345 };
346
347 /* wl12xx GPIO inputs and SDIO pins */
348 wl12xx_pins: pinmux_wl12xx_pins {
349 pinctrl-single,pins = <
350 OMAP4_IOPAD(0x078, PIN_INPUT | MUX_MODE3) /* gpmc_ncs2.gpio_52 */
351 OMAP4_IOPAD(0x07a, PIN_INPUT | MUX_MODE3) /* gpmc_ncs3.gpio_53 */
352 OMAP4_IOPAD(0x148, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_clk.sdmmc5_clk */
353 OMAP4_IOPAD(0x14a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_cmd.sdmmc5_cmd */
354 OMAP4_IOPAD(0x14c, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat0.sdmmc5_dat0 */
355 OMAP4_IOPAD(0x14e, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat1.sdmmc5_dat1 */
356 OMAP4_IOPAD(0x150, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat2.sdmmc5_dat2 */
357 OMAP4_IOPAD(0x152, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat3.sdmmc5_dat3 */
358 >;
359 };
360};
361
362&omap4_pmx_wkup {
363 led_wkgpio_pins: pinmux_leds_wkpins {
364 pinctrl-single,pins = <
365 OMAP4_IOPAD(0x05a, PIN_OUTPUT | MUX_MODE3) /* gpio_wk7 */
366 OMAP4_IOPAD(0x05c, PIN_OUTPUT | MUX_MODE3) /* gpio_wk8 */
367 >;
368 };
369};
370
371&i2c1 {
372 pinctrl-names = "default";
373 pinctrl-0 = <&i2c1_pins>;
374
375 clock-frequency = <400000>;
376
377 twl: twl@48 {
378 reg = <0x48>;
379 /* IRQ# = 7 */
380 interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_1N cascaded to gic */
381 };
382
383 twl6040: twl@4b {
384 compatible = "ti,twl6040";
385 #clock-cells = <0>;
386 reg = <0x4b>;
387
388 pinctrl-names = "default";
389 pinctrl-0 = <&twl6040_pins>;
390
391 /* IRQ# = 119 */
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 */
394
395 vio-supply = <&v1v8>;
396 v2v1-supply = <&v2v1>;
397 enable-active-high;
398 };
399};
400
401#include "twl6030.dtsi"
402#include "twl6030_omap4.dtsi"
403
404&i2c2 {
405 pinctrl-names = "default";
406 pinctrl-0 = <&i2c2_pins>;
407
408 clock-frequency = <400000>;
409};
410
411&i2c3 {
412 pinctrl-names = "default";
413 pinctrl-0 = <&i2c3_pins>;
414
415 clock-frequency = <100000>;
416
417 /*
418 * Display monitor features are burnt in their EEPROM as EDID data.
419 * The EEPROM is connected as I2C slave device.
420 */
421 eeprom@50 {
422 compatible = "ti,eeprom";
423 reg = <0x50>;
424 };
425};
426
427&i2c4 {
428 pinctrl-names = "default";
429 pinctrl-0 = <&i2c4_pins>;
430
431 clock-frequency = <400000>;
432};
433
434&mmc1 {
435 vmmc-supply = <&vmmc>;
436 bus-width = <8>;
437};
438
439&mmc2 {
440 status = "disabled";
441};
442
443&mmc3 {
444 status = "disabled";
445};
446
447&mmc4 {
448 status = "disabled";
449};
450
451&mmc5 {
452 pinctrl-names = "default";
453 pinctrl-0 = <&wl12xx_pins>;
454 vmmc-supply = <&wl12xx_vmmc>;
455 interrupts-extended = <&wakeupgen GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH
456 &omap4_pmx_core 0x10e>;
457 non-removable;
458 bus-width = <4>;
459 cap-power-off-card;
460
461 #address-cells = <1>;
462 #size-cells = <0>;
463 wlcore: wlcore@2 {
464 compatible = "ti,wl1271";
465 reg = <2>;
466 interrupt-parent = <&gpio2>;
467 interrupts = <21 IRQ_TYPE_LEVEL_HIGH>; /* gpio 53 */
468 ref-clock-frequency = <38400000>;
469 };
470};
471
472&emif1 {
473 cs1-used;
474 device-handle = <&elpida_ECB240ABACN>;
475};
476
477&emif2 {
478 cs1-used;
479 device-handle = <&elpida_ECB240ABACN>;
480};
481
482&mcbsp1 {
483 pinctrl-names = "default";
484 pinctrl-0 = <&mcbsp1_pins>;
485 status = "okay";
486};
487
488&mcpdm {
489 pinctrl-names = "default";
490 pinctrl-0 = <&mcpdm_pins>;
491
492 clocks = <&twl6040>;
493 clock-names = "pdmclk";
494
495 status = "okay";
496};
497
498&twl_usb_comparator {
499 usb-supply = <&vusb>;
500};
501
502&uart2 {
503 interrupts-extended = <&wakeupgen GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH
504 &omap4_pmx_core OMAP4_UART2_RX>;
505};
506
507&uart3 {
508 interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH
509 &omap4_pmx_core OMAP4_UART3_RX>;
510};
511
512&uart4 {
513 interrupts-extended = <&wakeupgen GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH
514 &omap4_pmx_core OMAP4_UART4_RX>;
515};
516
517&usb_otg_hs {
518 interface-type = <1>;
519 mode = <3>;
520 power = <50>;
521};
522
523&usbhshost {
524 port1-mode = "ehci-phy";
525};
526
527&usbhsehci {
528 phys = <&hsusb1_phy>;
529
530 #address-cells = <1>;
531 #size-cells = <0>;
532
533 hub@1 {
534 compatible = "usb424,9514";
535 reg = <1>;
536 #address-cells = <1>;
537 #size-cells = <0>;
538
539 ethernet: usbether@1 {
540 compatible = "usb424,ec00";
541 reg = <1>;
542 };
543 };
544};
545
546&dss {
547 status = "ok";
548
549 port {
550 dpi_out: endpoint {
551 remote-endpoint = <&tfp410_in>;
552 data-lines = <24>;
553 };
554 };
555};
556
557&dsi2 {
558 status = "ok";
559 vdd-supply = <&vcxio>;
560};
561
562&hdmi {
563 status = "ok";
564 vdda-supply = <&vdac>;
565
566 port {
567 hdmi_out: endpoint {
568 remote-endpoint = <&tpd12s015_in>;
569 };
570 };
571};
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright (C) 2011-2013 Texas Instruments Incorporated - https://www.ti.com/
4 */
5#include <dt-bindings/input/input.h>
6#include "elpida_ecb240abacn.dtsi"
7#include "omap4-mcpdm.dtsi"
8
9/ {
10 memory@80000000 {
11 device_type = "memory";
12 reg = <0x80000000 0x40000000>; /* 1 GB */
13 };
14
15 reserved-memory {
16 #address-cells = <1>;
17 #size-cells = <1>;
18 ranges;
19
20 dsp_memory_region: dsp-memory@98000000 {
21 compatible = "shared-dma-pool";
22 reg = <0x98000000 0x800000>;
23 reusable;
24 status = "okay";
25 };
26
27 ipu_memory_region: ipu-memory@98800000 {
28 compatible = "shared-dma-pool";
29 reg = <0x98800000 0x7000000>;
30 reusable;
31 status = "okay";
32 };
33 };
34
35 chosen {
36 stdout-path = &uart3;
37 };
38
39 aliases {
40 display0 = &dvi0;
41 display1 = &hdmi0;
42 ethernet = ðernet;
43 };
44
45 leds: leds {
46 compatible = "gpio-leds";
47 pinctrl-names = "default";
48 pinctrl-0 = <
49 &led_wkgpio_pins
50 >;
51
52 heartbeat {
53 label = "pandaboard::status1";
54 gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
55 linux,default-trigger = "heartbeat";
56 };
57
58 mmc {
59 label = "pandaboard::status2";
60 gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
61 linux,default-trigger = "mmc0";
62 };
63 };
64
65 gpio_keys: gpio_keys {
66 compatible = "gpio-keys";
67 pinctrl-names = "default";
68 pinctrl-0 = <
69 &button_pins
70 >;
71
72 buttonS2 {
73 label = "button S2";
74 gpios = <&gpio4 25 GPIO_ACTIVE_LOW>; /* gpio_121 */
75 linux,code = <BTN_0>;
76 wakeup-source;
77 };
78 };
79
80 sound: sound {
81 compatible = "ti,abe-twl6040";
82 ti,model = "PandaBoard";
83
84 ti,mclk-freq = <38400000>;
85
86 ti,mcpdm = <&mcpdm>;
87
88 ti,twl6040 = <&twl6040>;
89
90 /* Audio routing */
91 ti,audio-routing =
92 "Headset Stereophone", "HSOL",
93 "Headset Stereophone", "HSOR",
94 "Ext Spk", "HFL",
95 "Ext Spk", "HFR",
96 "Line Out", "AUXL",
97 "Line Out", "AUXR",
98 "HSMIC", "Headset Mic",
99 "Headset Mic", "Headset Mic Bias",
100 "AFML", "Line In",
101 "AFMR", "Line In";
102 };
103
104 /* HS USB Port 1 Power */
105 hsusb1_power: hsusb1_power_reg {
106 compatible = "regulator-fixed";
107 regulator-name = "hsusb1_vbus";
108 regulator-min-microvolt = <3300000>;
109 regulator-max-microvolt = <3300000>;
110 gpio = <&gpio1 1 GPIO_ACTIVE_HIGH>; /* gpio_1 */
111 startup-delay-us = <70000>;
112 enable-active-high;
113 /*
114 * boot-on is required along with always-on as the
115 * regulator framework doesn't enable the regulator
116 * if boot-on is not there.
117 */
118 regulator-always-on;
119 regulator-boot-on;
120 };
121
122 /* HS USB Host PHY on PORT 1 */
123 hsusb1_phy: hsusb1_phy {
124 compatible = "usb-nop-xceiv";
125 reset-gpios = <&gpio2 30 GPIO_ACTIVE_LOW>; /* gpio_62 */
126 #phy-cells = <0>;
127 vcc-supply = <&hsusb1_power>;
128 clocks = <&auxclk3_ck>;
129 clock-names = "main_clk";
130 clock-frequency = <19200000>;
131 };
132
133 /* regulator for wl12xx on sdio5 */
134 wl12xx_vmmc: wl12xx_vmmc {
135 pinctrl-names = "default";
136 pinctrl-0 = <&wl12xx_gpio>;
137 compatible = "regulator-fixed";
138 regulator-name = "vwl1271";
139 regulator-min-microvolt = <1800000>;
140 regulator-max-microvolt = <1800000>;
141 gpio = <&gpio2 11 GPIO_ACTIVE_HIGH>;
142 startup-delay-us = <70000>;
143 enable-active-high;
144 };
145
146 tfp410: encoder0 {
147 compatible = "ti,tfp410";
148 powerdown-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>; /* gpio_0 */
149
150 ports {
151 #address-cells = <1>;
152 #size-cells = <0>;
153
154 port@0 {
155 reg = <0>;
156
157 tfp410_in: endpoint {
158 remote-endpoint = <&dpi_out>;
159 };
160 };
161
162 port@1 {
163 reg = <1>;
164
165 tfp410_out: endpoint {
166 remote-endpoint = <&dvi_connector_in>;
167 };
168 };
169 };
170 };
171
172 dvi0: connector0 {
173 compatible = "dvi-connector";
174 label = "dvi";
175
176 digital;
177
178 ddc-i2c-bus = <&i2c3>;
179
180 port {
181 dvi_connector_in: endpoint {
182 remote-endpoint = <&tfp410_out>;
183 };
184 };
185 };
186
187 tpd12s015: encoder1 {
188 compatible = "ti,tpd12s015";
189
190 gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>, /* 60, CT CP HPD */
191 <&gpio2 9 GPIO_ACTIVE_HIGH>, /* 41, LS OE */
192 <&gpio2 31 GPIO_ACTIVE_HIGH>; /* 63, HPD */
193
194 ports {
195 #address-cells = <1>;
196 #size-cells = <0>;
197
198 port@0 {
199 reg = <0>;
200
201 tpd12s015_in: endpoint {
202 remote-endpoint = <&hdmi_out>;
203 };
204 };
205
206 port@1 {
207 reg = <1>;
208
209 tpd12s015_out: endpoint {
210 remote-endpoint = <&hdmi_connector_in>;
211 };
212 };
213 };
214 };
215
216 hdmi0: connector1 {
217 compatible = "hdmi-connector";
218 label = "hdmi";
219
220 type = "a";
221
222 port {
223 hdmi_connector_in: endpoint {
224 remote-endpoint = <&tpd12s015_out>;
225 };
226 };
227 };
228};
229
230&omap4_pmx_core {
231 pinctrl-names = "default";
232 pinctrl-0 = <
233 &dss_dpi_pins
234 &tfp410_pins
235 &dss_hdmi_pins
236 &tpd12s015_pins
237 &hsusbb1_pins
238 >;
239
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 };
246
247 mcbsp1_pins: pinmux_mcbsp1_pins {
248 pinctrl-single,pins = <
249 OMAP4_IOPAD(0x0fe, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_clkx.abe_mcbsp1_clkx */
250 OMAP4_IOPAD(0x100, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dr.abe_mcbsp1_dr */
251 OMAP4_IOPAD(0x102, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dx.abe_mcbsp1_dx */
252 OMAP4_IOPAD(0x104, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_fsx.abe_mcbsp1_fsx */
253 >;
254 };
255
256 dss_dpi_pins: pinmux_dss_dpi_pins {
257 pinctrl-single,pins = <
258 OMAP4_IOPAD(0x162, PIN_OUTPUT | MUX_MODE5) /* dispc2_data23 */
259 OMAP4_IOPAD(0x164, PIN_OUTPUT | MUX_MODE5) /* dispc2_data22 */
260 OMAP4_IOPAD(0x166, PIN_OUTPUT | MUX_MODE5) /* dispc2_data21 */
261 OMAP4_IOPAD(0x168, PIN_OUTPUT | MUX_MODE5) /* dispc2_data20 */
262 OMAP4_IOPAD(0x16a, PIN_OUTPUT | MUX_MODE5) /* dispc2_data19 */
263 OMAP4_IOPAD(0x16c, PIN_OUTPUT | MUX_MODE5) /* dispc2_data18 */
264 OMAP4_IOPAD(0x16e, PIN_OUTPUT | MUX_MODE5) /* dispc2_data15 */
265 OMAP4_IOPAD(0x170, PIN_OUTPUT | MUX_MODE5) /* dispc2_data14 */
266 OMAP4_IOPAD(0x172, PIN_OUTPUT | MUX_MODE5) /* dispc2_data13 */
267 OMAP4_IOPAD(0x174, PIN_OUTPUT | MUX_MODE5) /* dispc2_data12 */
268 OMAP4_IOPAD(0x176, PIN_OUTPUT | MUX_MODE5) /* dispc2_data11 */
269
270 OMAP4_IOPAD(0x1b4, PIN_OUTPUT | MUX_MODE5) /* dispc2_data10 */
271 OMAP4_IOPAD(0x1b6, PIN_OUTPUT | MUX_MODE5) /* dispc2_data9 */
272 OMAP4_IOPAD(0x1b8, PIN_OUTPUT | MUX_MODE5) /* dispc2_data16 */
273 OMAP4_IOPAD(0x1ba, PIN_OUTPUT | MUX_MODE5) /* dispc2_data17 */
274 OMAP4_IOPAD(0x1bc, PIN_OUTPUT | MUX_MODE5) /* dispc2_hsync */
275 OMAP4_IOPAD(0x1be, PIN_OUTPUT | MUX_MODE5) /* dispc2_pclk */
276 OMAP4_IOPAD(0x1c0, PIN_OUTPUT | MUX_MODE5) /* dispc2_vsync */
277 OMAP4_IOPAD(0x1c2, PIN_OUTPUT | MUX_MODE5) /* dispc2_de */
278 OMAP4_IOPAD(0x1c4, PIN_OUTPUT | MUX_MODE5) /* dispc2_data8 */
279 OMAP4_IOPAD(0x1c6, PIN_OUTPUT | MUX_MODE5) /* dispc2_data7 */
280 OMAP4_IOPAD(0x1c8, PIN_OUTPUT | MUX_MODE5) /* dispc2_data6 */
281 OMAP4_IOPAD(0x1ca, PIN_OUTPUT | MUX_MODE5) /* dispc2_data5 */
282 OMAP4_IOPAD(0x1cc, PIN_OUTPUT | MUX_MODE5) /* dispc2_data4 */
283 OMAP4_IOPAD(0x1ce, PIN_OUTPUT | MUX_MODE5) /* dispc2_data3 */
284
285 OMAP4_IOPAD(0x1d0, PIN_OUTPUT | MUX_MODE5) /* dispc2_data2 */
286 OMAP4_IOPAD(0x1d2, PIN_OUTPUT | MUX_MODE5) /* dispc2_data1 */
287 OMAP4_IOPAD(0x1d4, PIN_OUTPUT | MUX_MODE5) /* dispc2_data0 */
288 >;
289 };
290
291 tfp410_pins: pinmux_tfp410_pins {
292 pinctrl-single,pins = <
293 OMAP4_IOPAD(0x184, PIN_OUTPUT | MUX_MODE3) /* gpio_0 */
294 >;
295 };
296
297 dss_hdmi_pins: pinmux_dss_hdmi_pins {
298 pinctrl-single,pins = <
299 OMAP4_IOPAD(0x09a, PIN_INPUT | MUX_MODE0) /* hdmi_cec.hdmi_cec */
300 OMAP4_IOPAD(0x09c, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_scl.hdmi_scl */
301 OMAP4_IOPAD(0x09e, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_sda.hdmi_sda */
302 >;
303 };
304
305 tpd12s015_pins: pinmux_tpd12s015_pins {
306 pinctrl-single,pins = <
307 OMAP4_IOPAD(0x062, PIN_OUTPUT | MUX_MODE3) /* gpmc_a17.gpio_41 */
308 OMAP4_IOPAD(0x088, PIN_OUTPUT | MUX_MODE3) /* gpmc_nbe1.gpio_60 */
309 OMAP4_IOPAD(0x098, PIN_INPUT_PULLDOWN | MUX_MODE3) /* hdmi_hpd.gpio_63 */
310 >;
311 };
312
313 hsusbb1_pins: pinmux_hsusbb1_pins {
314 pinctrl-single,pins = <
315 OMAP4_IOPAD(0x0c2, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_clk.usbb1_ulpiphy_clk */
316 OMAP4_IOPAD(0x0c4, PIN_OUTPUT | MUX_MODE4) /* usbb1_ulpitll_stp.usbb1_ulpiphy_stp */
317 OMAP4_IOPAD(0x0c6, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dir.usbb1_ulpiphy_dir */
318 OMAP4_IOPAD(0x0c8, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_nxt.usbb1_ulpiphy_nxt */
319 OMAP4_IOPAD(0x0ca, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat0.usbb1_ulpiphy_dat0 */
320 OMAP4_IOPAD(0x0cc, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat1.usbb1_ulpiphy_dat1 */
321 OMAP4_IOPAD(0x0ce, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat2.usbb1_ulpiphy_dat2 */
322 OMAP4_IOPAD(0x0d0, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat3.usbb1_ulpiphy_dat3 */
323 OMAP4_IOPAD(0x0d2, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat4.usbb1_ulpiphy_dat4 */
324 OMAP4_IOPAD(0x0d4, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat5.usbb1_ulpiphy_dat5 */
325 OMAP4_IOPAD(0x0d6, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat6.usbb1_ulpiphy_dat6 */
326 OMAP4_IOPAD(0x0d8, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat7.usbb1_ulpiphy_dat7 */
327 >;
328 };
329
330 i2c1_pins: pinmux_i2c1_pins {
331 pinctrl-single,pins = <
332 OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */
333 OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */
334 >;
335 };
336
337 i2c2_pins: pinmux_i2c2_pins {
338 pinctrl-single,pins = <
339 OMAP4_IOPAD(0x126, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */
340 OMAP4_IOPAD(0x128, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */
341 >;
342 };
343
344 i2c3_pins: pinmux_i2c3_pins {
345 pinctrl-single,pins = <
346 OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */
347 OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */
348 >;
349 };
350
351 i2c4_pins: pinmux_i2c4_pins {
352 pinctrl-single,pins = <
353 OMAP4_IOPAD(0x12e, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_scl */
354 OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */
355 >;
356 };
357
358 /*
359 * wl12xx GPIO outputs for WLAN_EN, BT_EN, FM_EN, BT_WAKEUP
360 * REVISIT: Are the pull-ups needed for GPIO 48 and 49?
361 */
362 wl12xx_gpio: pinmux_wl12xx_gpio {
363 pinctrl-single,pins = <
364 OMAP4_IOPAD(0x066, PIN_OUTPUT | MUX_MODE3) /* gpmc_a19.gpio_43 */
365 OMAP4_IOPAD(0x06c, PIN_OUTPUT | MUX_MODE3) /* gpmc_a22.gpio_46 */
366 OMAP4_IOPAD(0x070, PIN_OUTPUT_PULLUP | MUX_MODE3) /* gpmc_a24.gpio_48 */
367 OMAP4_IOPAD(0x072, PIN_OUTPUT_PULLUP | MUX_MODE3) /* gpmc_a25.gpio_49 */
368 >;
369 };
370
371 /* wl12xx GPIO inputs and SDIO pins */
372 wl12xx_pins: pinmux_wl12xx_pins {
373 pinctrl-single,pins = <
374 OMAP4_IOPAD(0x078, PIN_INPUT | MUX_MODE3) /* gpmc_ncs2.gpio_52 */
375 OMAP4_IOPAD(0x07a, PIN_INPUT | MUX_MODE3) /* gpmc_ncs3.gpio_53 */
376 OMAP4_IOPAD(0x148, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_clk.sdmmc5_clk */
377 OMAP4_IOPAD(0x14a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_cmd.sdmmc5_cmd */
378 OMAP4_IOPAD(0x14c, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat0.sdmmc5_dat0 */
379 OMAP4_IOPAD(0x14e, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat1.sdmmc5_dat1 */
380 OMAP4_IOPAD(0x150, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat2.sdmmc5_dat2 */
381 OMAP4_IOPAD(0x152, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat3.sdmmc5_dat3 */
382 >;
383 };
384
385 button_pins: pinmux_button_pins {
386 pinctrl-single,pins = <
387 OMAP4_IOPAD(0x114, PIN_INPUT_PULLUP | MUX_MODE3) /* gpio_121 */
388 >;
389 };
390};
391
392&omap4_pmx_wkup {
393 led_wkgpio_pins: pinmux_leds_wkpins {
394 pinctrl-single,pins = <
395 OMAP4_IOPAD(0x05a, PIN_OUTPUT | MUX_MODE3) /* gpio_wk7 */
396 OMAP4_IOPAD(0x05c, PIN_OUTPUT | MUX_MODE3) /* gpio_wk8 */
397 >;
398 };
399};
400
401&i2c1 {
402 pinctrl-names = "default";
403 pinctrl-0 = <&i2c1_pins>;
404
405 clock-frequency = <400000>;
406
407 twl: twl@48 {
408 reg = <0x48>;
409 /* IRQ# = 7 */
410 interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_1N cascaded to gic */
411 };
412
413 twl6040: twl@4b {
414 compatible = "ti,twl6040";
415 #clock-cells = <0>;
416 reg = <0x4b>;
417
418 pinctrl-names = "default";
419 pinctrl-0 = <&twl6040_pins>;
420
421 /* IRQ# = 119 */
422 interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_2N cascaded to gic */
423 ti,audpwron-gpio = <&gpio4 31 GPIO_ACTIVE_HIGH>; /* gpio line 127 */
424
425 vio-supply = <&v1v8>;
426 v2v1-supply = <&v2v1>;
427 enable-active-high;
428 };
429};
430
431#include "twl6030.dtsi"
432#include "twl6030_omap4.dtsi"
433
434&i2c2 {
435 pinctrl-names = "default";
436 pinctrl-0 = <&i2c2_pins>;
437
438 clock-frequency = <400000>;
439};
440
441&i2c3 {
442 pinctrl-names = "default";
443 pinctrl-0 = <&i2c3_pins>;
444
445 clock-frequency = <100000>;
446
447 /*
448 * Display monitor features are burnt in their EEPROM as EDID data.
449 * The EEPROM is connected as I2C slave device.
450 */
451 eeprom@50 {
452 compatible = "ti,eeprom";
453 reg = <0x50>;
454 };
455};
456
457&i2c4 {
458 pinctrl-names = "default";
459 pinctrl-0 = <&i2c4_pins>;
460
461 clock-frequency = <400000>;
462};
463
464&mmc1 {
465 vmmc-supply = <&vmmc>;
466 bus-width = <8>;
467};
468
469&mmc2 {
470 status = "disabled";
471};
472
473&mmc3 {
474 status = "disabled";
475};
476
477&mmc4 {
478 status = "disabled";
479};
480
481&mmc5 {
482 pinctrl-names = "default";
483 pinctrl-0 = <&wl12xx_pins>;
484 vmmc-supply = <&wl12xx_vmmc>;
485 interrupts-extended = <&wakeupgen GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH
486 &omap4_pmx_core 0x10e>;
487 non-removable;
488 bus-width = <4>;
489 cap-power-off-card;
490
491 #address-cells = <1>;
492 #size-cells = <0>;
493 wlcore: wlcore@2 {
494 compatible = "ti,wl1271";
495 reg = <2>;
496 /* gpio_53 with gpmc_ncs3 pad as wakeup */
497 interrupts-extended = <&gpio2 21 IRQ_TYPE_LEVEL_HIGH>,
498 <&omap4_pmx_core 0x3a>;
499 interrupt-names = "irq", "wakeup";
500 ref-clock-frequency = <38400000>;
501 };
502};
503
504&emif1 {
505 cs1-used;
506 device-handle = <&elpida_ECB240ABACN>;
507};
508
509&emif2 {
510 cs1-used;
511 device-handle = <&elpida_ECB240ABACN>;
512};
513
514&mcbsp1 {
515 pinctrl-names = "default";
516 pinctrl-0 = <&mcbsp1_pins>;
517 status = "okay";
518};
519
520&twl_usb_comparator {
521 usb-supply = <&vusb>;
522};
523
524&uart2 {
525 interrupts-extended = <&wakeupgen GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH
526 &omap4_pmx_core OMAP4_UART2_RX>;
527};
528
529&uart3 {
530 interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH
531 &omap4_pmx_core OMAP4_UART3_RX>;
532};
533
534&uart4 {
535 interrupts-extended = <&wakeupgen GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH
536 &omap4_pmx_core OMAP4_UART4_RX>;
537};
538
539&usb_otg_hs {
540 interface-type = <1>;
541 mode = <3>;
542 power = <50>;
543};
544
545&usbhshost {
546 port1-mode = "ehci-phy";
547};
548
549&usbhsehci {
550 phys = <&hsusb1_phy>;
551
552 #address-cells = <1>;
553 #size-cells = <0>;
554
555 hub@1 {
556 compatible = "usb424,9514";
557 reg = <1>;
558 #address-cells = <1>;
559 #size-cells = <0>;
560
561 ethernet: usbether@1 {
562 compatible = "usb424,ec00";
563 reg = <1>;
564 };
565 };
566};
567
568&dss {
569 status = "okay";
570
571 port {
572 dpi_out: endpoint {
573 remote-endpoint = <&tfp410_in>;
574 data-lines = <24>;
575 };
576 };
577};
578
579&dsi2 {
580 status = "okay";
581 vdd-supply = <&vcxio>;
582};
583
584&hdmi {
585 status = "okay";
586 vdda-supply = <&vdac>;
587
588 port {
589 hdmi_out: endpoint {
590 remote-endpoint = <&tpd12s015_in>;
591 };
592 };
593};
594
595&dsp {
596 status = "okay";
597 memory-region = <&dsp_memory_region>;
598 ti,timers = <&timer5>;
599 ti,watchdog-timers = <&timer6>;
600};
601
602&ipu {
603 status = "okay";
604 memory-region = <&ipu_memory_region>;
605 ti,timers = <&timer3>;
606 ti,watchdog-timers = <&timer9>, <&timer11>;
607};