xref: /linux/arch/arm/boot/dts/ti/omap/omap4-panda-common.dtsi (revision ec71f661a572a770d7c861cd52a50cbbb0e1a8d1)
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 = &ethernet;
43	};
44
45	leds: leds {
46		compatible = "gpio-leds";
47		pinctrl-names = "default";
48		pinctrl-0 = <
49			&led_wkgpio_pins
50		>;
51
52		led-heartbeat {
53			label = "pandaboard::status1";
54			gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
55			linux,default-trigger = "heartbeat";
56		};
57
58		led-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	wl12xx_pwrseq: wl12xx-pwrseq {
134		compatible = "mmc-pwrseq-simple";
135		clocks = <&twl 0>;
136		clock-names = "ext_clock";
137	};
138
139	/* regulator for wl12xx on sdio5 */
140	wl12xx_vmmc: wl12xx_vmmc {
141		pinctrl-names = "default";
142		pinctrl-0 = <&wl12xx_gpio>;
143		compatible = "regulator-fixed";
144		regulator-name = "vwl1271";
145		regulator-min-microvolt = <1800000>;
146		regulator-max-microvolt = <1800000>;
147		gpio = <&gpio2 11 GPIO_ACTIVE_HIGH>;
148		startup-delay-us = <70000>;
149		enable-active-high;
150	};
151
152	tfp410: encoder0 {
153		compatible = "ti,tfp410";
154		powerdown-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;	/* gpio_0 */
155
156		ports {
157			#address-cells = <1>;
158			#size-cells = <0>;
159
160			port@0 {
161				reg = <0>;
162
163				tfp410_in: endpoint {
164					remote-endpoint = <&dpi_out>;
165				};
166			};
167
168			port@1 {
169				reg = <1>;
170
171				tfp410_out: endpoint {
172					remote-endpoint = <&dvi_connector_in>;
173				};
174			};
175		};
176	};
177
178	dvi0: connector0 {
179		compatible = "dvi-connector";
180		label = "dvi";
181
182		digital;
183
184		ddc-i2c-bus = <&i2c3>;
185
186		port {
187			dvi_connector_in: endpoint {
188				remote-endpoint = <&tfp410_out>;
189			};
190		};
191	};
192
193	tpd12s015: encoder1 {
194		compatible = "ti,tpd12s015";
195
196		gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>,	/* 60, CT CP HPD */
197			<&gpio2 9 GPIO_ACTIVE_HIGH>,	/* 41, LS OE */
198			<&gpio2 31 GPIO_ACTIVE_HIGH>;	/* 63, HPD */
199
200		ports {
201			#address-cells = <1>;
202			#size-cells = <0>;
203
204			port@0 {
205				reg = <0>;
206
207				tpd12s015_in: endpoint {
208					remote-endpoint = <&hdmi_out>;
209				};
210			};
211
212			port@1 {
213				reg = <1>;
214
215				tpd12s015_out: endpoint {
216					remote-endpoint = <&hdmi_connector_in>;
217				};
218			};
219		};
220	};
221
222	hdmi0: connector1 {
223		compatible = "hdmi-connector";
224		label = "hdmi";
225
226		type = "a";
227
228		port {
229			hdmi_connector_in: endpoint {
230				remote-endpoint = <&tpd12s015_out>;
231			};
232		};
233	};
234};
235
236&omap4_pmx_core {
237	pinctrl-names = "default";
238	pinctrl-0 = <
239			&dss_dpi_pins
240			&tfp410_pins
241			&dss_hdmi_pins
242			&tpd12s015_pins
243			&hsusbb1_pins
244	>;
245
246	twl6040_pins: twl6040-pins {
247		pinctrl-single,pins = <
248			OMAP4_IOPAD(0x120, PIN_OUTPUT | MUX_MODE3)	/* hdq_sio.gpio_127 */
249			OMAP4_IOPAD(0x1a0, PIN_INPUT | MUX_MODE0)	/* sys_nirq2.sys_nirq2 */
250		>;
251	};
252
253	mcbsp1_pins: mcbsp1-pins {
254		pinctrl-single,pins = <
255			OMAP4_IOPAD(0x0fe, PIN_INPUT | MUX_MODE0)		/* abe_mcbsp1_clkx.abe_mcbsp1_clkx */
256			OMAP4_IOPAD(0x100, PIN_INPUT_PULLDOWN | MUX_MODE0)	/* abe_mcbsp1_dr.abe_mcbsp1_dr */
257			OMAP4_IOPAD(0x102, PIN_OUTPUT_PULLDOWN | MUX_MODE0)	/* abe_mcbsp1_dx.abe_mcbsp1_dx */
258			OMAP4_IOPAD(0x104, PIN_INPUT | MUX_MODE0)		/* abe_mcbsp1_fsx.abe_mcbsp1_fsx */
259		>;
260	};
261
262	dss_dpi_pins: dss-dpi-pins {
263		pinctrl-single,pins = <
264			OMAP4_IOPAD(0x162, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data23 */
265			OMAP4_IOPAD(0x164, PIN_OUTPUT | MUX_MODE5) 	/* dispc2_data22 */
266			OMAP4_IOPAD(0x166, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data21 */
267			OMAP4_IOPAD(0x168, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data20 */
268			OMAP4_IOPAD(0x16a, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data19 */
269			OMAP4_IOPAD(0x16c, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data18 */
270			OMAP4_IOPAD(0x16e, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data15 */
271			OMAP4_IOPAD(0x170, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data14 */
272			OMAP4_IOPAD(0x172, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data13 */
273			OMAP4_IOPAD(0x174, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data12 */
274			OMAP4_IOPAD(0x176, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data11 */
275
276			OMAP4_IOPAD(0x1b4, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data10 */
277			OMAP4_IOPAD(0x1b6, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data9 */
278			OMAP4_IOPAD(0x1b8, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data16 */
279			OMAP4_IOPAD(0x1ba, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data17 */
280			OMAP4_IOPAD(0x1bc, PIN_OUTPUT | MUX_MODE5)	/* dispc2_hsync */
281			OMAP4_IOPAD(0x1be, PIN_OUTPUT | MUX_MODE5)	/* dispc2_pclk */
282			OMAP4_IOPAD(0x1c0, PIN_OUTPUT | MUX_MODE5)	/* dispc2_vsync */
283			OMAP4_IOPAD(0x1c2, PIN_OUTPUT | MUX_MODE5)	/* dispc2_de */
284			OMAP4_IOPAD(0x1c4, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data8 */
285			OMAP4_IOPAD(0x1c6, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data7 */
286			OMAP4_IOPAD(0x1c8, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data6 */
287			OMAP4_IOPAD(0x1ca, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data5 */
288			OMAP4_IOPAD(0x1cc, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data4 */
289			OMAP4_IOPAD(0x1ce, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data3 */
290
291			OMAP4_IOPAD(0x1d0, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data2 */
292			OMAP4_IOPAD(0x1d2, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data1 */
293			OMAP4_IOPAD(0x1d4, PIN_OUTPUT | MUX_MODE5)	/* dispc2_data0 */
294		>;
295	};
296
297	tfp410_pins: tfp410-pins {
298		pinctrl-single,pins = <
299			OMAP4_IOPAD(0x184, PIN_OUTPUT | MUX_MODE3)	/* gpio_0 */
300		>;
301	};
302
303	dss_hdmi_pins: dss-hdmi-pins {
304		pinctrl-single,pins = <
305			OMAP4_IOPAD(0x09a, PIN_INPUT | MUX_MODE0)		/* hdmi_cec.hdmi_cec */
306			OMAP4_IOPAD(0x09c, PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_scl.hdmi_scl */
307			OMAP4_IOPAD(0x09e, PIN_INPUT_PULLUP | MUX_MODE0)	/* hdmi_sda.hdmi_sda */
308		>;
309	};
310
311	tpd12s015_pins: tpd12s015-pins {
312		pinctrl-single,pins = <
313			OMAP4_IOPAD(0x062, PIN_OUTPUT | MUX_MODE3)		/* gpmc_a17.gpio_41 */
314			OMAP4_IOPAD(0x088, PIN_OUTPUT | MUX_MODE3)		/* gpmc_nbe1.gpio_60 */
315			OMAP4_IOPAD(0x098, PIN_INPUT_PULLDOWN | MUX_MODE3)	/* hdmi_hpd.gpio_63 */
316		>;
317	};
318
319	hsusbb1_pins: hsusbb1-pins {
320		pinctrl-single,pins = <
321			OMAP4_IOPAD(0x0c2, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* usbb1_ulpitll_clk.usbb1_ulpiphy_clk */
322			OMAP4_IOPAD(0x0c4, PIN_OUTPUT | MUX_MODE4)		/* usbb1_ulpitll_stp.usbb1_ulpiphy_stp */
323			OMAP4_IOPAD(0x0c6, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* usbb1_ulpitll_dir.usbb1_ulpiphy_dir */
324			OMAP4_IOPAD(0x0c8, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* usbb1_ulpitll_nxt.usbb1_ulpiphy_nxt */
325			OMAP4_IOPAD(0x0ca, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* usbb1_ulpitll_dat0.usbb1_ulpiphy_dat0 */
326			OMAP4_IOPAD(0x0cc, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* usbb1_ulpitll_dat1.usbb1_ulpiphy_dat1 */
327			OMAP4_IOPAD(0x0ce, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* usbb1_ulpitll_dat2.usbb1_ulpiphy_dat2 */
328			OMAP4_IOPAD(0x0d0, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* usbb1_ulpitll_dat3.usbb1_ulpiphy_dat3 */
329			OMAP4_IOPAD(0x0d2, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* usbb1_ulpitll_dat4.usbb1_ulpiphy_dat4 */
330			OMAP4_IOPAD(0x0d4, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* usbb1_ulpitll_dat5.usbb1_ulpiphy_dat5 */
331			OMAP4_IOPAD(0x0d6, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* usbb1_ulpitll_dat6.usbb1_ulpiphy_dat6 */
332			OMAP4_IOPAD(0x0d8, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* usbb1_ulpitll_dat7.usbb1_ulpiphy_dat7 */
333		>;
334	};
335
336	i2c1_pins: i2c1-pins {
337		pinctrl-single,pins = <
338			OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c1_scl */
339			OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c1_sda */
340		>;
341	};
342
343	i2c2_pins: i2c2-pins {
344		pinctrl-single,pins = <
345			OMAP4_IOPAD(0x126, PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c2_scl */
346			OMAP4_IOPAD(0x128, PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c2_sda */
347		>;
348	};
349
350	i2c3_pins: i2c3-pins {
351		pinctrl-single,pins = <
352			OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c3_scl */
353			OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c3_sda */
354		>;
355	};
356
357	i2c4_pins: i2c4-pins {
358		pinctrl-single,pins = <
359			OMAP4_IOPAD(0x12e, PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c4_scl */
360			OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c4_sda */
361		>;
362	};
363
364	/*
365	 * wl12xx GPIO outputs for WLAN_EN, BT_EN, FM_EN, BT_WAKEUP
366	 * REVISIT: Are the pull-ups needed for GPIO 48 and 49?
367	 */
368	wl12xx_gpio: wl12xx-gpio-pins {
369		pinctrl-single,pins = <
370			OMAP4_IOPAD(0x066, PIN_OUTPUT | MUX_MODE3)		/* gpmc_a19.gpio_43 - WLAN_EN */
371			OMAP4_IOPAD(0x070, PIN_OUTPUT_PULLUP | MUX_MODE3)	/* gpmc_a24.gpio_48 */
372		>;
373	};
374
375	/* wl12xx GPIO inputs and SDIO pins */
376	wl12xx_pins: wl12xx-pins {
377		pinctrl-single,pins = <
378			OMAP4_IOPAD(0x078, PIN_INPUT | MUX_MODE3)		/* gpmc_ncs2.gpio_52 */
379			OMAP4_IOPAD(0x07a, PIN_INPUT | MUX_MODE3)		/* gpmc_ncs3.gpio_53 */
380			OMAP4_IOPAD(0x148, PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc5_clk.sdmmc5_clk */
381			OMAP4_IOPAD(0x14a, PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc5_cmd.sdmmc5_cmd */
382			OMAP4_IOPAD(0x14c, PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc5_dat0.sdmmc5_dat0 */
383			OMAP4_IOPAD(0x14e, PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc5_dat1.sdmmc5_dat1 */
384			OMAP4_IOPAD(0x150, PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc5_dat2.sdmmc5_dat2 */
385			OMAP4_IOPAD(0x152, PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc5_dat3.sdmmc5_dat3 */
386		>;
387	};
388
389	button_pins: button-pins {
390		pinctrl-single,pins = <
391			OMAP4_IOPAD(0x114, PIN_INPUT_PULLUP | MUX_MODE3)	/* gpio_121 */
392		>;
393	};
394
395	bt_pins: bt-pins {
396		pinctrl-single,pins = <
397			OMAP4_IOPAD(0x06c, PIN_OUTPUT | MUX_MODE3)	  /* gpmc_a22.gpio_46 - BTEN */
398			OMAP4_IOPAD(0x072, PIN_OUTPUT_PULLUP | MUX_MODE3) /* gpmc_a25.gpio_49 - BTWAKEUP */
399		>;
400	};
401
402	uart2_pins: uart2-pins {
403		pinctrl-single,pins = <
404			OMAP4_IOPAD(0x118, PIN_INPUT_PULLUP | MUX_MODE0)  /* uart2_cts.uart2_cts - HCI */
405			OMAP4_IOPAD(0x11a, PIN_OUTPUT | MUX_MODE0)	  /* uart2_rts.uart2_rts */
406			OMAP4_IOPAD(0x11c, PIN_INPUT_PULLUP | MUX_MODE0)  /* uart2_rx.uart2_rx */
407			OMAP4_IOPAD(0x11e, PIN_OUTPUT | MUX_MODE0)	  /* uart2_tx.uart2_tx */
408		>;
409	};
410};
411
412&omap4_pmx_wkup {
413	led_wkgpio_pins: leds-wkpins-pins {
414		pinctrl-single,pins = <
415			OMAP4_IOPAD(0x05a, PIN_OUTPUT | MUX_MODE3)	/* gpio_wk7 */
416			OMAP4_IOPAD(0x05c, PIN_OUTPUT | MUX_MODE3)	/* gpio_wk8 */
417		>;
418	};
419};
420
421&i2c1 {
422	pinctrl-names = "default";
423	pinctrl-0 = <&i2c1_pins>;
424
425	clock-frequency = <400000>;
426
427	twl: twl@48 {
428		reg = <0x48>;
429		/* IRQ# = 7 */
430		interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_1N cascaded to gic */
431		#clock-cells = <1>;
432		system-power-controller;
433	};
434
435	twl6040: twl@4b {
436		compatible = "ti,twl6040";
437		#clock-cells = <0>;
438		reg = <0x4b>;
439
440		pinctrl-names = "default";
441		pinctrl-0 = <&twl6040_pins>;
442
443		/* IRQ# = 119 */
444		interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_2N cascaded to gic */
445		ti,audpwron-gpio = <&gpio4 31 GPIO_ACTIVE_HIGH>;  /* gpio line 127 */
446
447		vio-supply = <&v1v8>;
448		v2v1-supply = <&v2v1>;
449		enable-active-high;
450	};
451};
452
453#include "twl6030.dtsi"
454#include "twl6030_omap4.dtsi"
455
456&i2c2 {
457	pinctrl-names = "default";
458	pinctrl-0 = <&i2c2_pins>;
459
460	clock-frequency = <400000>;
461};
462
463&i2c3 {
464	pinctrl-names = "default";
465	pinctrl-0 = <&i2c3_pins>;
466
467	clock-frequency = <100000>;
468
469	/*
470	 * Display monitor features are burnt in their EEPROM as EDID data.
471	 * The EEPROM is connected as I2C slave device.
472	 */
473	eeprom@50 {
474		compatible = "ti,eeprom";
475		reg = <0x50>;
476	};
477};
478
479&i2c4 {
480	pinctrl-names = "default";
481	pinctrl-0 = <&i2c4_pins>;
482
483	clock-frequency = <400000>;
484};
485
486&mmc1 {
487	vmmc-supply = <&vmmc>;
488	bus-width = <8>;
489};
490
491&mmc2 {
492	status = "disabled";
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	interrupts-extended = <&wakeupgen GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH
508			       &omap4_pmx_core 0x10e>;
509	non-removable;
510	bus-width = <4>;
511	cap-power-off-card;
512	mmc-pwrseq = <&wl12xx_pwrseq>;
513
514	#address-cells = <1>;
515	#size-cells = <0>;
516	wlcore: wlcore@2 {
517		compatible = "ti,wl1271";
518		reg = <2>;
519		/* gpio_53 with gpmc_ncs3 pad as wakeup */
520		interrupts-extended = <&gpio2 21 IRQ_TYPE_LEVEL_HIGH>,
521				      <&omap4_pmx_core 0x3a>;
522		interrupt-names = "irq", "wakeup";
523		ref-clock-frequency = <38400000>;
524	};
525};
526
527&emif1 {
528	cs1-used;
529	device-handle = <&elpida_ECB240ABACN>;
530};
531
532&emif2 {
533	cs1-used;
534	device-handle = <&elpida_ECB240ABACN>;
535};
536
537&mcbsp1 {
538	pinctrl-names = "default";
539	pinctrl-0 = <&mcbsp1_pins>;
540	status = "okay";
541};
542
543&twl_usb_comparator {
544	usb-supply = <&vusb>;
545};
546
547&uart2 {
548	pinctrl-names = "default";
549	pinctrl-0 = <&uart2_pins>;
550	interrupts-extended = <&wakeupgen GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH
551			       &omap4_pmx_core OMAP4_UART2_RX>;
552
553	bluetooth {
554		compatible = "ti,wl1271-st";
555		pinctrl-names = "default";
556		pinctrl-0 = <&bt_pins>;
557		enable-gpios = <&gpio2 14 GPIO_ACTIVE_HIGH>;	/* GPIO_46 */
558		clocks = <&twl 0>;
559		clock-names = "ext_clock";
560	};
561};
562
563&uart3 {
564	interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH
565			       &omap4_pmx_core OMAP4_UART3_RX>;
566};
567
568&uart4 {
569	interrupts-extended = <&wakeupgen GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH
570			       &omap4_pmx_core OMAP4_UART4_RX>;
571};
572
573&usb_otg_hs {
574	interface-type = <1>;
575	mode = <3>;
576	power = <50>;
577};
578
579&usbhshost {
580	port1-mode = "ehci-phy";
581};
582
583&usbhsehci {
584	phys = <&hsusb1_phy>;
585
586	#address-cells = <1>;
587	#size-cells = <0>;
588
589	hub@1 {
590		compatible = "usb424,9514";
591		reg = <1>;
592		#address-cells = <1>;
593		#size-cells = <0>;
594
595		ethernet: ethernet@1 {
596			compatible = "usb424,ec00";
597			reg = <1>;
598		};
599	};
600};
601
602&dss {
603	status = "okay";
604
605	port {
606		dpi_out: endpoint {
607			remote-endpoint = <&tfp410_in>;
608			data-lines = <24>;
609		};
610	};
611};
612
613&dsi2 {
614	status = "okay";
615	vdd-supply = <&vcxio>;
616};
617
618&hdmi {
619	status = "okay";
620	vdda-supply = <&vdac>;
621
622	port {
623		hdmi_out: endpoint {
624			remote-endpoint = <&tpd12s015_in>;
625		};
626	};
627};
628
629&dsp {
630	status = "okay";
631	memory-region = <&dsp_memory_region>;
632	ti,timers = <&timer5>;
633	ti,watchdog-timers = <&timer6>;
634};
635
636&ipu {
637	status = "okay";
638	memory-region = <&ipu_memory_region>;
639	ti,timers = <&timer3>;
640	ti,watchdog-timers = <&timer9>, <&timer11>;
641};
642