Commit | Line | Data |
---|---|---|
5a8095e9 JH |
1 | /* |
2 | * Copyright (C) 2012 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 | /dts-v1/; | |
9 | ||
98ef7957 | 10 | #include "omap34xx.dtsi" |
5a8095e9 JH |
11 | |
12 | / { | |
13 | model = "TI OMAP3 BeagleBoard"; | |
14 | compatible = "ti,omap3-beagle", "ti,omap3"; | |
15 | ||
a134be34 NM |
16 | cpus { |
17 | cpu@0 { | |
18 | cpu0-supply = <&vcc>; | |
19 | }; | |
20 | }; | |
21 | ||
5a8095e9 JH |
22 | memory { |
23 | device_type = "memory"; | |
24 | reg = <0x80000000 0x10000000>; /* 256 MB */ | |
25 | }; | |
26 | ||
8cecf52b TV |
27 | aliases { |
28 | display0 = &dvi0; | |
29 | display1 = &tv0; | |
30 | }; | |
31 | ||
5a8095e9 JH |
32 | leds { |
33 | compatible = "gpio-leds"; | |
34 | pmu_stat { | |
35 | label = "beagleboard::pmu_stat"; | |
6d624eab | 36 | gpios = <&twl_gpio 19 GPIO_ACTIVE_HIGH>; /* LEDB */ |
5a8095e9 JH |
37 | }; |
38 | ||
39 | heartbeat { | |
40 | label = "beagleboard::usr0"; | |
6d624eab | 41 | gpios = <&gpio5 22 GPIO_ACTIVE_HIGH>; /* 150 -> D6 LED */ |
5a8095e9 JH |
42 | linux,default-trigger = "heartbeat"; |
43 | }; | |
44 | ||
45 | mmc { | |
46 | label = "beagleboard::usr1"; | |
6d624eab | 47 | gpios = <&gpio5 21 GPIO_ACTIVE_HIGH>; /* 149 -> D7 LED */ |
5a8095e9 JH |
48 | linux,default-trigger = "mmc0"; |
49 | }; | |
50 | }; | |
51 | ||
2e5f78ae RQ |
52 | /* HS USB Port 2 Power */ |
53 | hsusb2_power: hsusb2_power_reg { | |
54 | compatible = "regulator-fixed"; | |
55 | regulator-name = "hsusb2_vbus"; | |
56 | regulator-min-microvolt = <3300000>; | |
57 | regulator-max-microvolt = <3300000>; | |
58 | gpio = <&twl_gpio 18 0>; /* GPIO LEDA */ | |
59 | startup-delay-us = <70000>; | |
60 | }; | |
61 | ||
62 | /* HS USB Host PHY on PORT 2 */ | |
63 | hsusb2_phy: hsusb2_phy { | |
64 | compatible = "usb-nop-xceiv"; | |
633b940f | 65 | reset-gpios = <&gpio5 19 GPIO_ACTIVE_LOW>; /* gpio_147 */ |
2e5f78ae RQ |
66 | vcc-supply = <&hsusb2_power>; |
67 | }; | |
d641c3d5 | 68 | |
33e9c392 JN |
69 | sound { |
70 | compatible = "ti,omap-twl4030"; | |
71 | ti,model = "omap3beagle"; | |
72 | ||
73 | ti,mcbsp = <&mcbsp2>; | |
74 | ti,codec = <&twl_audio>; | |
75 | }; | |
76 | ||
d641c3d5 KH |
77 | gpio_keys { |
78 | compatible = "gpio-keys"; | |
79 | ||
80 | user { | |
81 | label = "user"; | |
82 | gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; | |
83 | linux,code = <0x114>; | |
84 | gpio-key,wakeup; | |
85 | }; | |
86 | ||
87 | }; | |
8cecf52b TV |
88 | |
89 | tfp410: encoder@0 { | |
90 | compatible = "ti,tfp410"; | |
91 | powerdown-gpios = <&gpio6 10 GPIO_ACTIVE_LOW>; /* gpio_170 */ | |
92 | ||
93 | pinctrl-names = "default"; | |
94 | pinctrl-0 = <&tfp410_pins>; | |
95 | ||
96 | ports { | |
97 | #address-cells = <1>; | |
98 | #size-cells = <0>; | |
99 | ||
100 | port@0 { | |
101 | reg = <0>; | |
102 | ||
103 | tfp410_in: endpoint@0 { | |
104 | remote-endpoint = <&dpi_out>; | |
105 | }; | |
106 | }; | |
107 | ||
108 | port@1 { | |
109 | reg = <1>; | |
110 | ||
111 | tfp410_out: endpoint@0 { | |
112 | remote-endpoint = <&dvi_connector_in>; | |
113 | }; | |
114 | }; | |
115 | }; | |
116 | }; | |
117 | ||
118 | dvi0: connector@0 { | |
119 | compatible = "dvi-connector"; | |
120 | label = "dvi"; | |
121 | ||
122 | digital; | |
123 | ||
124 | ddc-i2c-bus = <&i2c3>; | |
125 | ||
126 | port { | |
127 | dvi_connector_in: endpoint { | |
128 | remote-endpoint = <&tfp410_out>; | |
129 | }; | |
130 | }; | |
131 | }; | |
132 | ||
133 | tv0: connector@1 { | |
134 | compatible = "svideo-connector"; | |
135 | label = "tv"; | |
136 | ||
137 | port { | |
138 | tv_connector_in: endpoint { | |
139 | remote-endpoint = <&venc_out>; | |
140 | }; | |
141 | }; | |
142 | }; | |
d641c3d5 KH |
143 | }; |
144 | ||
145 | &omap3_pmx_wkup { | |
146 | gpio1_pins: pinmux_gpio1_pins { | |
147 | pinctrl-single,pins = < | |
148 | 0x14 (PIN_INPUT | PIN_OFF_WAKEUPENABLE | MUX_MODE4) /* sys_boot5.gpio_7 */ | |
149 | >; | |
150 | }; | |
2e5f78ae RQ |
151 | }; |
152 | ||
153 | &omap3_pmx_core { | |
154 | pinctrl-names = "default"; | |
155 | pinctrl-0 = < | |
3d495383 | 156 | &hsusb2_pins |
2e5f78ae RQ |
157 | >; |
158 | ||
3d495383 | 159 | hsusb2_pins: pinmux_hsusb2_pins { |
2e5f78ae | 160 | pinctrl-single,pins = < |
3d495383 LP |
161 | OMAP3_CORE1_IOPAD(0x21d4, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi1_cs3.hsusb2_data2 */ |
162 | OMAP3_CORE1_IOPAD(0x21d6, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_clk.hsusb2_data7 */ | |
163 | OMAP3_CORE1_IOPAD(0x21d8, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_simo.hsusb2_data4 */ | |
164 | OMAP3_CORE1_IOPAD(0x21da, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_somi.hsusb2_data5 */ | |
165 | OMAP3_CORE1_IOPAD(0x21dc, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_cs0.hsusb2_data6 */ | |
166 | OMAP3_CORE1_IOPAD(0x21de, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_cs1.hsusb2_data3 */ | |
2e5f78ae RQ |
167 | >; |
168 | }; | |
b859c1ef KH |
169 | |
170 | uart3_pins: pinmux_uart3_pins { | |
171 | pinctrl-single,pins = < | |
172 | 0x16e (PIN_INPUT | PIN_OFF_WAKEUPENABLE | MUX_MODE0) /* uart3_rx_irrx.uart3_rx_irrx */ | |
173 | 0x170 (PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx.uart3_tx_irtx */ | |
174 | >; | |
175 | }; | |
8cecf52b TV |
176 | |
177 | tfp410_pins: pinmux_tfp410_pins { | |
178 | pinctrl-single,pins = < | |
179 | 0x194 (PIN_OUTPUT | MUX_MODE4) /* hdq_sio.gpio_170 */ | |
180 | >; | |
181 | }; | |
182 | ||
183 | dss_dpi_pins: pinmux_dss_dpi_pins { | |
184 | pinctrl-single,pins = < | |
185 | 0x0a4 (PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */ | |
186 | 0x0a6 (PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */ | |
187 | 0x0a8 (PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */ | |
188 | 0x0aa (PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */ | |
189 | 0x0ac (PIN_OUTPUT | MUX_MODE0) /* dss_data0.dss_data0 */ | |
190 | 0x0ae (PIN_OUTPUT | MUX_MODE0) /* dss_data1.dss_data1 */ | |
191 | 0x0b0 (PIN_OUTPUT | MUX_MODE0) /* dss_data2.dss_data2 */ | |
192 | 0x0b2 (PIN_OUTPUT | MUX_MODE0) /* dss_data3.dss_data3 */ | |
193 | 0x0b4 (PIN_OUTPUT | MUX_MODE0) /* dss_data4.dss_data4 */ | |
194 | 0x0b6 (PIN_OUTPUT | MUX_MODE0) /* dss_data5.dss_data5 */ | |
195 | 0x0b8 (PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */ | |
196 | 0x0ba (PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */ | |
197 | 0x0bc (PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */ | |
198 | 0x0be (PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */ | |
199 | 0x0c0 (PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */ | |
200 | 0x0c2 (PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */ | |
201 | 0x0c4 (PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */ | |
202 | 0x0c6 (PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */ | |
203 | 0x0c8 (PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */ | |
204 | 0x0ca (PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */ | |
205 | 0x0cc (PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */ | |
206 | 0x0ce (PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */ | |
207 | 0x0d0 (PIN_OUTPUT | MUX_MODE0) /* dss_data18.dss_data18 */ | |
208 | 0x0d2 (PIN_OUTPUT | MUX_MODE0) /* dss_data19.dss_data19 */ | |
209 | 0x0d4 (PIN_OUTPUT | MUX_MODE0) /* dss_data20.dss_data20 */ | |
210 | 0x0d6 (PIN_OUTPUT | MUX_MODE0) /* dss_data21.dss_data21 */ | |
211 | 0x0d8 (PIN_OUTPUT | MUX_MODE0) /* dss_data22.dss_data22 */ | |
212 | 0x0da (PIN_OUTPUT | MUX_MODE0) /* dss_data23.dss_data23 */ | |
213 | >; | |
214 | }; | |
5a8095e9 JH |
215 | }; |
216 | ||
3d495383 LP |
217 | &omap3_pmx_core2 { |
218 | pinctrl-names = "default"; | |
219 | pinctrl-0 = < | |
220 | &hsusb2_2_pins | |
221 | >; | |
222 | ||
223 | hsusb2_2_pins: pinmux_hsusb2_2_pins { | |
224 | pinctrl-single,pins = < | |
225 | OMAP3430_CORE2_IOPAD(0x25f0, PIN_OUTPUT | MUX_MODE3) /* etk_d10.hsusb2_clk */ | |
226 | OMAP3430_CORE2_IOPAD(0x25f2, PIN_OUTPUT | MUX_MODE3) /* etk_d11.hsusb2_stp */ | |
227 | OMAP3430_CORE2_IOPAD(0x25f4, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d12.hsusb2_dir */ | |
228 | OMAP3430_CORE2_IOPAD(0x25f6, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d13.hsusb2_nxt */ | |
229 | OMAP3430_CORE2_IOPAD(0x25f8, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d14.hsusb2_data0 */ | |
230 | OMAP3430_CORE2_IOPAD(0x25fa, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d15.hsusb2_data1 */ | |
231 | >; | |
232 | }; | |
233 | }; | |
234 | ||
5a8095e9 JH |
235 | &i2c1 { |
236 | clock-frequency = <2600000>; | |
237 | ||
238 | twl: twl@48 { | |
239 | reg = <0x48>; | |
240 | interrupts = <7>; /* SYS_NIRQ cascaded to intc */ | |
241 | interrupt-parent = <&intc>; | |
33e9c392 JN |
242 | |
243 | twl_audio: audio { | |
244 | compatible = "ti,twl4030-audio"; | |
245 | codec { | |
246 | }; | |
247 | }; | |
5a8095e9 JH |
248 | }; |
249 | }; | |
250 | ||
98ef7957 | 251 | #include "twl4030.dtsi" |
f9688457 | 252 | #include "twl4030_omap3.dtsi" |
5a8095e9 | 253 | |
8cecf52b TV |
254 | &i2c3 { |
255 | clock-frequency = <100000>; | |
256 | }; | |
257 | ||
5a8095e9 JH |
258 | &mmc1 { |
259 | vmmc-supply = <&vmmc1>; | |
260 | vmmc_aux-supply = <&vsim>; | |
261 | bus-width = <8>; | |
262 | }; | |
263 | ||
264 | &mmc2 { | |
265 | status = "disabled"; | |
266 | }; | |
267 | ||
268 | &mmc3 { | |
269 | status = "disabled"; | |
270 | }; | |
2e5f78ae RQ |
271 | |
272 | &usbhshost { | |
273 | port2-mode = "ehci-phy"; | |
274 | }; | |
275 | ||
276 | &usbhsehci { | |
277 | phys = <0 &hsusb2_phy>; | |
278 | }; | |
279 | ||
280 | &twl_gpio { | |
281 | ti,use-leds; | |
282 | /* pullups: BIT(1) */ | |
283 | ti,pullups = <0x000002>; | |
284 | /* | |
285 | * pulldowns: | |
286 | * BIT(2), BIT(6), BIT(7), BIT(8), BIT(13) | |
287 | * BIT(15), BIT(16), BIT(17) | |
288 | */ | |
289 | ti,pulldowns = <0x03a1c4>; | |
290 | }; | |
b859c1ef KH |
291 | |
292 | &uart3 { | |
293 | pinctrl-names = "default"; | |
294 | pinctrl-0 = <&uart3_pins>; | |
c15adae8 | 295 | interrupts-extended = <&intc 74 &omap3_pmx_core OMAP3_UART3_RX>; |
b859c1ef | 296 | }; |
d641c3d5 KH |
297 | |
298 | &gpio1 { | |
299 | pinctrl-names = "default"; | |
300 | pinctrl-0 = <&gpio1_pins>; | |
301 | }; | |
81660208 RQ |
302 | |
303 | &usb_otg_hs { | |
304 | interface-type = <0>; | |
305 | usb-phy = <&usb2_phy>; | |
b462b05a RQ |
306 | phys = <&usb2_phy>; |
307 | phy-names = "usb2-phy"; | |
81660208 RQ |
308 | mode = <3>; |
309 | power = <50>; | |
310 | }; | |
30023a7e RQ |
311 | |
312 | &vaux2 { | |
313 | regulator-name = "vdd_ehci"; | |
314 | regulator-min-microvolt = <1800000>; | |
315 | regulator-max-microvolt = <1800000>; | |
316 | regulator-always-on; | |
317 | }; | |
726322ce PU |
318 | |
319 | &mcbsp2 { | |
320 | status = "okay"; | |
321 | }; | |
8cecf52b TV |
322 | |
323 | /* Needed to power the DPI pins */ | |
324 | &vpll2 { | |
325 | regulator-always-on; | |
326 | }; | |
327 | ||
328 | &dss { | |
329 | status = "ok"; | |
330 | ||
331 | pinctrl-names = "default"; | |
332 | pinctrl-0 = <&dss_dpi_pins>; | |
333 | ||
334 | port { | |
335 | dpi_out: endpoint { | |
336 | remote-endpoint = <&tfp410_in>; | |
337 | data-lines = <24>; | |
338 | }; | |
339 | }; | |
340 | }; | |
341 | ||
342 | &venc { | |
343 | status = "ok"; | |
344 | ||
345 | vdda-supply = <&vdac>; | |
346 | ||
347 | port { | |
348 | venc_out: endpoint { | |
349 | remote-endpoint = <&tv_connector_in>; | |
350 | ti,channels = <2>; | |
351 | }; | |
352 | }; | |
353 | }; |