blob: edbc4090297ddcd3d5e7cf035261156898271196 [file] [log] [blame]
Nishanth Menon4b791972013-03-19 12:53:07 -05001/*
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 */
Florian Vaussard98ef79572013-05-31 14:32:55 +02008#include "elpida_ecb240abacn.dtsi"
Nishanth Menon4b791972013-03-19 12:53:07 -05009
10/ {
Javier Martinez Canillas742ae1f2016-08-31 12:35:28 +020011 memory@80000000 {
Nishanth Menon4b791972013-03-19 12:53:07 -050012 device_type = "memory";
13 reg = <0x80000000 0x40000000>; /* 1 GB */
14 };
15
Tomi Valkeinen661637c2012-08-20 17:07:23 +030016 aliases {
17 display0 = &dvi0;
18 display1 = &hdmi0;
Tony Lindgren879a29e2017-01-05 08:37:01 -080019 ethernet = &ethernet;
Tomi Valkeinen661637c2012-08-20 17:07:23 +030020 };
21
Dan Murphy3818d7c2013-05-31 10:44:55 -050022 leds: leds {
Nishanth Menon4b791972013-03-19 12:53:07 -050023 compatible = "gpio-leds";
Dan Murphy3818d7c2013-05-31 10:44:55 -050024 pinctrl-names = "default";
25 pinctrl-0 = <
26 &led_wkgpio_pins
27 >;
28
Nishanth Menon4b791972013-03-19 12:53:07 -050029 heartbeat {
30 label = "pandaboard::status1";
Florian Vaussard6d624ea2013-05-31 14:32:56 +020031 gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
Nishanth Menon4b791972013-03-19 12:53:07 -050032 linux,default-trigger = "heartbeat";
33 };
34
35 mmc {
36 label = "pandaboard::status2";
Florian Vaussard6d624ea2013-05-31 14:32:56 +020037 gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
Nishanth Menon4b791972013-03-19 12:53:07 -050038 linux,default-trigger = "mmc0";
39 };
40 };
41
42 sound: sound {
43 compatible = "ti,abe-twl6040";
44 ti,model = "PandaBoard";
45
46 ti,mclk-freq = <38400000>;
47
48 ti,mcpdm = <&mcpdm>;
49
50 ti,twl6040 = <&twl6040>;
51
52 /* Audio routing */
53 ti,audio-routing =
54 "Headset Stereophone", "HSOL",
55 "Headset Stereophone", "HSOR",
56 "Ext Spk", "HFL",
57 "Ext Spk", "HFR",
58 "Line Out", "AUXL",
59 "Line Out", "AUXR",
60 "HSMIC", "Headset Mic",
61 "Headset Mic", "Headset Mic Bias",
62 "AFML", "Line In",
63 "AFMR", "Line In";
64 };
Roger Quadros5bd2100e2013-06-18 19:04:44 +030065
Roger Quadros5bd2100e2013-06-18 19:04:44 +030066 /* HS USB Port 1 Power */
67 hsusb1_power: hsusb1_power_reg {
68 compatible = "regulator-fixed";
69 regulator-name = "hsusb1_vbus";
70 regulator-min-microvolt = <3300000>;
71 regulator-max-microvolt = <3300000>;
Javier Martinez Canillas3a637e02015-10-06 11:03:39 +020072 gpio = <&gpio1 1 GPIO_ACTIVE_HIGH>; /* gpio_1 */
Roger Quadros5bd2100e2013-06-18 19:04:44 +030073 startup-delay-us = <70000>;
74 enable-active-high;
Roger Quadros6f569292013-06-18 19:04:45 +030075 /*
76 * boot-on is required along with always-on as the
77 * regulator framework doesn't enable the regulator
78 * if boot-on is not there.
79 */
80 regulator-always-on;
81 regulator-boot-on;
Roger Quadros5bd2100e2013-06-18 19:04:44 +030082 };
83
84 /* HS USB Host PHY on PORT 1 */
85 hsusb1_phy: hsusb1_phy {
86 compatible = "usb-nop-xceiv";
Roger Quadros4cbdc862013-09-24 11:53:52 +030087 reset-gpios = <&gpio2 30 GPIO_ACTIVE_LOW>; /* gpio_62 */
Roger Quadros5bd2100e2013-06-18 19:04:44 +030088 vcc-supply = <&hsusb1_power>;
Roger Quadros2ecf8aa2014-02-27 16:18:29 +020089 clocks = <&auxclk3_ck>;
90 clock-names = "main_clk";
Roger Quadros5bd2100e2013-06-18 19:04:44 +030091 clock-frequency = <19200000>;
92 };
Tony Lindgren851320e2013-09-13 12:09:53 -070093
94 /* regulator for wl12xx on sdio5 */
95 wl12xx_vmmc: wl12xx_vmmc {
96 pinctrl-names = "default";
97 pinctrl-0 = <&wl12xx_gpio>;
98 compatible = "regulator-fixed";
99 regulator-name = "vwl1271";
100 regulator-min-microvolt = <1800000>;
101 regulator-max-microvolt = <1800000>;
Javier Martinez Canillas3a637e02015-10-06 11:03:39 +0200102 gpio = <&gpio2 11 GPIO_ACTIVE_HIGH>;
Tony Lindgren851320e2013-09-13 12:09:53 -0700103 startup-delay-us = <70000>;
104 enable-active-high;
105 };
Tomi Valkeinen661637c2012-08-20 17:07:23 +0300106
Javier Martinez Canillas9e19d0d2016-06-27 15:21:00 -0400107 tfp410: encoder0 {
Tomi Valkeinen661637c2012-08-20 17:07:23 +0300108 compatible = "ti,tfp410";
109 powerdown-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>; /* gpio_0 */
110
111 ports {
112 #address-cells = <1>;
113 #size-cells = <0>;
114
115 port@0 {
116 reg = <0>;
117
Javier Martinez Canillas9e19d0d2016-06-27 15:21:00 -0400118 tfp410_in: endpoint {
Tomi Valkeinen661637c2012-08-20 17:07:23 +0300119 remote-endpoint = <&dpi_out>;
120 };
121 };
122
123 port@1 {
124 reg = <1>;
125
Javier Martinez Canillas9e19d0d2016-06-27 15:21:00 -0400126 tfp410_out: endpoint {
Tomi Valkeinen661637c2012-08-20 17:07:23 +0300127 remote-endpoint = <&dvi_connector_in>;
128 };
129 };
130 };
131 };
132
Javier Martinez Canillas9e19d0d2016-06-27 15:21:00 -0400133 dvi0: connector0 {
Tomi Valkeinen661637c2012-08-20 17:07:23 +0300134 compatible = "dvi-connector";
135 label = "dvi";
136
137 digital;
138
139 ddc-i2c-bus = <&i2c3>;
140
141 port {
142 dvi_connector_in: endpoint {
143 remote-endpoint = <&tfp410_out>;
144 };
145 };
146 };
147
Javier Martinez Canillas9e19d0d2016-06-27 15:21:00 -0400148 tpd12s015: encoder1 {
Tomi Valkeinen661637c2012-08-20 17:07:23 +0300149 compatible = "ti,tpd12s015";
150
151 gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>, /* 60, CT CP HPD */
152 <&gpio2 9 GPIO_ACTIVE_HIGH>, /* 41, LS OE */
153 <&gpio2 31 GPIO_ACTIVE_HIGH>; /* 63, HPD */
154
155 ports {
156 #address-cells = <1>;
157 #size-cells = <0>;
158
159 port@0 {
160 reg = <0>;
161
Javier Martinez Canillas9e19d0d2016-06-27 15:21:00 -0400162 tpd12s015_in: endpoint {
Tomi Valkeinen661637c2012-08-20 17:07:23 +0300163 remote-endpoint = <&hdmi_out>;
164 };
165 };
166
167 port@1 {
168 reg = <1>;
169
Javier Martinez Canillas9e19d0d2016-06-27 15:21:00 -0400170 tpd12s015_out: endpoint {
Tomi Valkeinen661637c2012-08-20 17:07:23 +0300171 remote-endpoint = <&hdmi_connector_in>;
172 };
173 };
174 };
175 };
176
Javier Martinez Canillas9e19d0d2016-06-27 15:21:00 -0400177 hdmi0: connector1 {
Tomi Valkeinen661637c2012-08-20 17:07:23 +0300178 compatible = "hdmi-connector";
179 label = "hdmi";
180
181 type = "a";
182
183 port {
184 hdmi_connector_in: endpoint {
185 remote-endpoint = <&tpd12s015_out>;
186 };
187 };
188 };
Nishanth Menon4b791972013-03-19 12:53:07 -0500189};
190
191&omap4_pmx_core {
192 pinctrl-names = "default";
193 pinctrl-0 = <
Tomi Valkeinen0352bd12013-10-25 13:07:36 +0300194 &dss_dpi_pins
195 &tfp410_pins
Nishanth Menon4b791972013-03-19 12:53:07 -0500196 &dss_hdmi_pins
197 &tpd12s015_pins
Roger Quadros5bd2100e2013-06-18 19:04:44 +0300198 &hsusbb1_pins
Nishanth Menon4b791972013-03-19 12:53:07 -0500199 >;
200
Nishanth Menon4b791972013-03-19 12:53:07 -0500201 twl6040_pins: pinmux_twl6040_pins {
202 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300203 OMAP4_IOPAD(0x120, PIN_OUTPUT | MUX_MODE3) /* hdq_sio.gpio_127 */
204 OMAP4_IOPAD(0x1a0, PIN_INPUT | MUX_MODE0) /* sys_nirq2.sys_nirq2 */
Nishanth Menon4b791972013-03-19 12:53:07 -0500205 >;
206 };
207
208 mcpdm_pins: pinmux_mcpdm_pins {
209 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300210 OMAP4_IOPAD(0x106, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_ul_data.abe_pdm_ul_data */
211 OMAP4_IOPAD(0x108, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_dl_data.abe_pdm_dl_data */
212 OMAP4_IOPAD(0x10a, PIN_INPUT_PULLUP | MUX_MODE0) /* abe_pdm_frame.abe_pdm_frame */
213 OMAP4_IOPAD(0x10c, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_pdm_lb_clk.abe_pdm_lb_clk */
214 OMAP4_IOPAD(0x10e, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_clks.abe_clks */
Nishanth Menon4b791972013-03-19 12:53:07 -0500215 >;
216 };
217
218 mcbsp1_pins: pinmux_mcbsp1_pins {
219 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300220 OMAP4_IOPAD(0x0fe, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_clkx.abe_mcbsp1_clkx */
221 OMAP4_IOPAD(0x100, PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dr.abe_mcbsp1_dr */
222 OMAP4_IOPAD(0x102, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abe_mcbsp1_dx.abe_mcbsp1_dx */
223 OMAP4_IOPAD(0x104, PIN_INPUT | MUX_MODE0) /* abe_mcbsp1_fsx.abe_mcbsp1_fsx */
Nishanth Menon4b791972013-03-19 12:53:07 -0500224 >;
225 };
226
Tomi Valkeinen0352bd12013-10-25 13:07:36 +0300227 dss_dpi_pins: pinmux_dss_dpi_pins {
228 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300229 OMAP4_IOPAD(0x162, PIN_OUTPUT | MUX_MODE5) /* dispc2_data23 */
230 OMAP4_IOPAD(0x164, PIN_OUTPUT | MUX_MODE5) /* dispc2_data22 */
231 OMAP4_IOPAD(0x166, PIN_OUTPUT | MUX_MODE5) /* dispc2_data21 */
232 OMAP4_IOPAD(0x168, PIN_OUTPUT | MUX_MODE5) /* dispc2_data20 */
233 OMAP4_IOPAD(0x16a, PIN_OUTPUT | MUX_MODE5) /* dispc2_data19 */
234 OMAP4_IOPAD(0x16c, PIN_OUTPUT | MUX_MODE5) /* dispc2_data18 */
235 OMAP4_IOPAD(0x16e, PIN_OUTPUT | MUX_MODE5) /* dispc2_data15 */
236 OMAP4_IOPAD(0x170, PIN_OUTPUT | MUX_MODE5) /* dispc2_data14 */
237 OMAP4_IOPAD(0x172, PIN_OUTPUT | MUX_MODE5) /* dispc2_data13 */
238 OMAP4_IOPAD(0x174, PIN_OUTPUT | MUX_MODE5) /* dispc2_data12 */
239 OMAP4_IOPAD(0x176, PIN_OUTPUT | MUX_MODE5) /* dispc2_data11 */
Tomi Valkeinen0352bd12013-10-25 13:07:36 +0300240
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300241 OMAP4_IOPAD(0x1b4, PIN_OUTPUT | MUX_MODE5) /* dispc2_data10 */
242 OMAP4_IOPAD(0x1b6, PIN_OUTPUT | MUX_MODE5) /* dispc2_data9 */
243 OMAP4_IOPAD(0x1b8, PIN_OUTPUT | MUX_MODE5) /* dispc2_data16 */
244 OMAP4_IOPAD(0x1ba, PIN_OUTPUT | MUX_MODE5) /* dispc2_data17 */
245 OMAP4_IOPAD(0x1bc, PIN_OUTPUT | MUX_MODE5) /* dispc2_hsync */
246 OMAP4_IOPAD(0x1be, PIN_OUTPUT | MUX_MODE5) /* dispc2_pclk */
247 OMAP4_IOPAD(0x1c0, PIN_OUTPUT | MUX_MODE5) /* dispc2_vsync */
248 OMAP4_IOPAD(0x1c2, PIN_OUTPUT | MUX_MODE5) /* dispc2_de */
249 OMAP4_IOPAD(0x1c4, PIN_OUTPUT | MUX_MODE5) /* dispc2_data8 */
250 OMAP4_IOPAD(0x1c6, PIN_OUTPUT | MUX_MODE5) /* dispc2_data7 */
251 OMAP4_IOPAD(0x1c8, PIN_OUTPUT | MUX_MODE5) /* dispc2_data6 */
252 OMAP4_IOPAD(0x1ca, PIN_OUTPUT | MUX_MODE5) /* dispc2_data5 */
253 OMAP4_IOPAD(0x1cc, PIN_OUTPUT | MUX_MODE5) /* dispc2_data4 */
254 OMAP4_IOPAD(0x1ce, PIN_OUTPUT | MUX_MODE5) /* dispc2_data3 */
Tomi Valkeinen0352bd12013-10-25 13:07:36 +0300255
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300256 OMAP4_IOPAD(0x1d0, PIN_OUTPUT | MUX_MODE5) /* dispc2_data2 */
257 OMAP4_IOPAD(0x1d2, PIN_OUTPUT | MUX_MODE5) /* dispc2_data1 */
258 OMAP4_IOPAD(0x1d4, PIN_OUTPUT | MUX_MODE5) /* dispc2_data0 */
Tomi Valkeinen0352bd12013-10-25 13:07:36 +0300259 >;
260 };
261
262 tfp410_pins: pinmux_tfp410_pins {
263 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300264 OMAP4_IOPAD(0x184, PIN_OUTPUT | MUX_MODE3) /* gpio_0 */
Tomi Valkeinen0352bd12013-10-25 13:07:36 +0300265 >;
266 };
267
Nishanth Menon4b791972013-03-19 12:53:07 -0500268 dss_hdmi_pins: pinmux_dss_hdmi_pins {
269 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300270 OMAP4_IOPAD(0x09a, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_cec.hdmi_cec */
271 OMAP4_IOPAD(0x09c, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_scl.hdmi_scl */
272 OMAP4_IOPAD(0x09e, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_sda.hdmi_sda */
Nishanth Menon4b791972013-03-19 12:53:07 -0500273 >;
274 };
275
276 tpd12s015_pins: pinmux_tpd12s015_pins {
277 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300278 OMAP4_IOPAD(0x062, PIN_OUTPUT | MUX_MODE3) /* gpmc_a17.gpio_41 */
279 OMAP4_IOPAD(0x088, PIN_OUTPUT | MUX_MODE3) /* gpmc_nbe1.gpio_60 */
280 OMAP4_IOPAD(0x098, PIN_INPUT_PULLDOWN | MUX_MODE3) /* hdmi_hpd.gpio_63 */
Nishanth Menon4b791972013-03-19 12:53:07 -0500281 >;
282 };
283
Roger Quadros5bd2100e2013-06-18 19:04:44 +0300284 hsusbb1_pins: pinmux_hsusbb1_pins {
285 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300286 OMAP4_IOPAD(0x0c2, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_clk.usbb1_ulpiphy_clk */
287 OMAP4_IOPAD(0x0c4, PIN_OUTPUT | MUX_MODE4) /* usbb1_ulpitll_stp.usbb1_ulpiphy_stp */
288 OMAP4_IOPAD(0x0c6, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dir.usbb1_ulpiphy_dir */
289 OMAP4_IOPAD(0x0c8, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_nxt.usbb1_ulpiphy_nxt */
290 OMAP4_IOPAD(0x0ca, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat0.usbb1_ulpiphy_dat0 */
291 OMAP4_IOPAD(0x0cc, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat1.usbb1_ulpiphy_dat1 */
292 OMAP4_IOPAD(0x0ce, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat2.usbb1_ulpiphy_dat2 */
293 OMAP4_IOPAD(0x0d0, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat3.usbb1_ulpiphy_dat3 */
294 OMAP4_IOPAD(0x0d2, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat4.usbb1_ulpiphy_dat4 */
295 OMAP4_IOPAD(0x0d4, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat5.usbb1_ulpiphy_dat5 */
296 OMAP4_IOPAD(0x0d6, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat6.usbb1_ulpiphy_dat6 */
297 OMAP4_IOPAD(0x0d8, PIN_INPUT_PULLDOWN | MUX_MODE4) /* usbb1_ulpitll_dat7.usbb1_ulpiphy_dat7 */
Roger Quadros5bd2100e2013-06-18 19:04:44 +0300298 >;
299 };
300
Nishanth Menon4b791972013-03-19 12:53:07 -0500301 i2c1_pins: pinmux_i2c1_pins {
302 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300303 OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */
304 OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */
Nishanth Menon4b791972013-03-19 12:53:07 -0500305 >;
306 };
307
308 i2c2_pins: pinmux_i2c2_pins {
309 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300310 OMAP4_IOPAD(0x126, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */
311 OMAP4_IOPAD(0x128, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */
Nishanth Menon4b791972013-03-19 12:53:07 -0500312 >;
313 };
314
315 i2c3_pins: pinmux_i2c3_pins {
316 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300317 OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */
318 OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */
Nishanth Menon4b791972013-03-19 12:53:07 -0500319 >;
320 };
321
322 i2c4_pins: pinmux_i2c4_pins {
323 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300324 OMAP4_IOPAD(0x12e, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_scl */
325 OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c4_sda */
Nishanth Menon4b791972013-03-19 12:53:07 -0500326 >;
327 };
Tony Lindgren851320e2013-09-13 12:09:53 -0700328
329 /*
330 * wl12xx GPIO outputs for WLAN_EN, BT_EN, FM_EN, BT_WAKEUP
331 * REVISIT: Are the pull-ups needed for GPIO 48 and 49?
332 */
333 wl12xx_gpio: pinmux_wl12xx_gpio {
334 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300335 OMAP4_IOPAD(0x066, PIN_OUTPUT | MUX_MODE3) /* gpmc_a19.gpio_43 */
336 OMAP4_IOPAD(0x06c, PIN_OUTPUT | MUX_MODE3) /* gpmc_a22.gpio_46 */
337 OMAP4_IOPAD(0x070, PIN_OUTPUT_PULLUP | MUX_MODE3) /* gpmc_a24.gpio_48 */
338 OMAP4_IOPAD(0x072, PIN_OUTPUT_PULLUP | MUX_MODE3) /* gpmc_a25.gpio_49 */
Tony Lindgren851320e2013-09-13 12:09:53 -0700339 >;
340 };
341
342 /* wl12xx GPIO inputs and SDIO pins */
343 wl12xx_pins: pinmux_wl12xx_pins {
344 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300345 OMAP4_IOPAD(0x078, PIN_INPUT | MUX_MODE3) /* gpmc_ncs2.gpio_52 */
346 OMAP4_IOPAD(0x07a, PIN_INPUT | MUX_MODE3) /* gpmc_ncs3.gpio_53 */
347 OMAP4_IOPAD(0x148, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_clk.sdmmc5_clk */
348 OMAP4_IOPAD(0x14a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_cmd.sdmmc5_cmd */
349 OMAP4_IOPAD(0x14c, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat0.sdmmc5_dat0 */
350 OMAP4_IOPAD(0x14e, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat1.sdmmc5_dat1 */
351 OMAP4_IOPAD(0x150, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat2.sdmmc5_dat2 */
352 OMAP4_IOPAD(0x152, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc5_dat3.sdmmc5_dat3 */
Tony Lindgren851320e2013-09-13 12:09:53 -0700353 >;
354 };
Dan Murphy3818d7c2013-05-31 10:44:55 -0500355};
356
Balaji T K2ba28662013-12-02 11:38:13 -0800357&omap4_pmx_wkup {
358 led_wkgpio_pins: pinmux_leds_wkpins {
359 pinctrl-single,pins = <
Javier Martinez Canillas0e3ae322015-11-13 01:54:10 -0300360 OMAP4_IOPAD(0x05a, PIN_OUTPUT | MUX_MODE3) /* gpio_wk7 */
361 OMAP4_IOPAD(0x05c, PIN_OUTPUT | MUX_MODE3) /* gpio_wk8 */
Balaji T K2ba28662013-12-02 11:38:13 -0800362 >;
363 };
364};
365
Nishanth Menon4b791972013-03-19 12:53:07 -0500366&i2c1 {
367 pinctrl-names = "default";
368 pinctrl-0 = <&i2c1_pins>;
369
370 clock-frequency = <400000>;
371
372 twl: twl@48 {
373 reg = <0x48>;
Florian Vaussard8fea7d52013-05-31 14:32:57 +0200374 /* IRQ# = 7 */
375 interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_1N cascaded to gic */
Nishanth Menon4b791972013-03-19 12:53:07 -0500376 };
377
378 twl6040: twl@4b {
379 compatible = "ti,twl6040";
Peter Ujfalusi2ab60a32016-05-30 11:55:15 +0300380 #clock-cells = <0>;
Nishanth Menon4b791972013-03-19 12:53:07 -0500381 reg = <0x4b>;
Peter Ujfalusiaa986452014-01-24 10:18:59 +0200382
383 pinctrl-names = "default";
384 pinctrl-0 = <&twl6040_pins>;
385
Florian Vaussard8fea7d52013-05-31 14:32:57 +0200386 /* IRQ# = 119 */
387 interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_2N cascaded to gic */
Dan Murphy78eb9382013-05-31 10:45:22 -0500388 ti,audpwron-gpio = <&gpio4 31 GPIO_ACTIVE_HIGH>; /* gpio line 127 */
Nishanth Menon4b791972013-03-19 12:53:07 -0500389
390 vio-supply = <&v1v8>;
391 v2v1-supply = <&v2v1>;
392 enable-active-high;
393 };
394};
395
Florian Vaussard98ef79572013-05-31 14:32:55 +0200396#include "twl6030.dtsi"
Ruslan Bilovol06a9ea52013-08-14 11:35:47 +0300397#include "twl6030_omap4.dtsi"
Nishanth Menon4b791972013-03-19 12:53:07 -0500398
399&i2c2 {
400 pinctrl-names = "default";
401 pinctrl-0 = <&i2c2_pins>;
402
403 clock-frequency = <400000>;
404};
405
406&i2c3 {
407 pinctrl-names = "default";
408 pinctrl-0 = <&i2c3_pins>;
409
410 clock-frequency = <100000>;
411
412 /*
413 * Display monitor features are burnt in their EEPROM as EDID data.
414 * The EEPROM is connected as I2C slave device.
415 */
416 eeprom@50 {
417 compatible = "ti,eeprom";
418 reg = <0x50>;
419 };
420};
421
422&i2c4 {
423 pinctrl-names = "default";
424 pinctrl-0 = <&i2c4_pins>;
425
426 clock-frequency = <400000>;
427};
428
429&mmc1 {
430 vmmc-supply = <&vmmc>;
431 bus-width = <8>;
432};
433
434&mmc2 {
435 status = "disabled";
436};
437
438&mmc3 {
439 status = "disabled";
440};
441
442&mmc4 {
443 status = "disabled";
444};
445
446&mmc5 {
Tony Lindgren851320e2013-09-13 12:09:53 -0700447 pinctrl-names = "default";
448 pinctrl-0 = <&wl12xx_pins>;
449 vmmc-supply = <&wl12xx_vmmc>;
Tony Lindgren84ae4972016-09-09 14:00:37 -0700450 interrupts-extended = <&wakeupgen GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH
451 &omap4_pmx_core 0x10e>;
Tony Lindgren851320e2013-09-13 12:09:53 -0700452 non-removable;
Nishanth Menon4b791972013-03-19 12:53:07 -0500453 bus-width = <4>;
Tony Lindgren851320e2013-09-13 12:09:53 -0700454 cap-power-off-card;
Eliad Peller99f84ca2015-03-18 18:38:29 +0200455
456 #address-cells = <1>;
457 #size-cells = <0>;
458 wlcore: wlcore@2 {
459 compatible = "ti,wl1271";
460 reg = <2>;
461 interrupt-parent = <&gpio2>;
462 interrupts = <21 IRQ_TYPE_LEVEL_HIGH>; /* gpio 53 */
463 ref-clock-frequency = <38400000>;
464 };
Nishanth Menon4b791972013-03-19 12:53:07 -0500465};
466
467&emif1 {
468 cs1-used;
469 device-handle = <&elpida_ECB240ABACN>;
470};
471
472&emif2 {
473 cs1-used;
474 device-handle = <&elpida_ECB240ABACN>;
475};
476
Peter Ujfalusiaa986452014-01-24 10:18:59 +0200477&mcbsp1 {
478 pinctrl-names = "default";
479 pinctrl-0 = <&mcbsp1_pins>;
480 status = "okay";
481};
482
Peter Ujfalusiaa986452014-01-24 10:18:59 +0200483&mcpdm {
484 pinctrl-names = "default";
485 pinctrl-0 = <&mcpdm_pins>;
Peter Ujfalusi2ab60a32016-05-30 11:55:15 +0300486
487 clocks = <&twl6040>;
488 clock-names = "pdmclk";
489
Peter Ujfalusiaa986452014-01-24 10:18:59 +0200490 status = "okay";
491};
492
Nishanth Menon4b791972013-03-19 12:53:07 -0500493&twl_usb_comparator {
494 usb-supply = <&vusb>;
495};
496
Tony Lindgren31f08202014-05-05 17:27:39 -0700497&uart2 {
Marc Zyngier7136d452015-03-11 15:43:49 +0000498 interrupts-extended = <&wakeupgen GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH
Tony Lindgren31f08202014-05-05 17:27:39 -0700499 &omap4_pmx_core OMAP4_UART2_RX>;
500};
501
502&uart3 {
Marc Zyngier7136d452015-03-11 15:43:49 +0000503 interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH
Tony Lindgren31f08202014-05-05 17:27:39 -0700504 &omap4_pmx_core OMAP4_UART3_RX>;
505};
506
507&uart4 {
Marc Zyngier7136d452015-03-11 15:43:49 +0000508 interrupts-extended = <&wakeupgen GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH
Tony Lindgren31f08202014-05-05 17:27:39 -0700509 &omap4_pmx_core OMAP4_UART4_RX>;
510};
511
Nishanth Menon4b791972013-03-19 12:53:07 -0500512&usb_otg_hs {
513 interface-type = <1>;
514 mode = <3>;
515 power = <50>;
516};
Roger Quadros5bd2100e2013-06-18 19:04:44 +0300517
518&usbhshost {
519 port1-mode = "ehci-phy";
520};
521
522&usbhsehci {
523 phys = <&hsusb1_phy>;
Tony Lindgren879a29e2017-01-05 08:37:01 -0800524
525 #address-cells = <1>;
526 #size-cells = <0>;
527
528 hub@1 {
529 compatible = "usb424,9514";
530 reg = <1>;
531 #address-cells = <1>;
532 #size-cells = <0>;
533
534 ethernet: usbether@1 {
535 compatible = "usb424,ec00";
536 reg = <1>;
537 };
538 };
Roger Quadros5bd2100e2013-06-18 19:04:44 +0300539};
Tomi Valkeinen661637c2012-08-20 17:07:23 +0300540
541&dss {
542 status = "ok";
543
544 port {
545 dpi_out: endpoint {
546 remote-endpoint = <&tfp410_in>;
547 data-lines = <24>;
548 };
549 };
550};
551
552&dsi2 {
553 status = "ok";
554 vdd-supply = <&vcxio>;
555};
556
557&hdmi {
558 status = "ok";
559 vdda-supply = <&vdac>;
560
561 port {
562 hdmi_out: endpoint {
563 remote-endpoint = <&tpd12s015_in>;
564 };
565 };
566};