Commit | Line | Data |
---|---|---|
adfe1473 MB |
1 | /* |
2 | * Copyright (C) 2013 Marek Belisko <marek@goldelico.com> | |
3 | * | |
4 | * Based on omap3-beagle-xm.dts | |
5 | * | |
6 | * This program is free software; you can redistribute it and/or modify | |
7 | * it under the terms of the GNU General Public License version 2 as | |
8 | * published by the Free Software Foundation. | |
9 | */ | |
10 | /dts-v1/; | |
11 | ||
12 | #include "omap36xx.dtsi" | |
13 | ||
14 | / { | |
15 | model = "OMAP3 GTA04"; | |
ae41a303 | 16 | compatible = "ti,omap3-gta04", "ti,omap36xx", "ti,omap3"; |
adfe1473 MB |
17 | |
18 | cpus { | |
19 | cpu@0 { | |
20 | cpu0-supply = <&vcc>; | |
21 | }; | |
22 | }; | |
23 | ||
24 | memory { | |
25 | device_type = "memory"; | |
26 | reg = <0x80000000 0x20000000>; /* 512 MB */ | |
27 | }; | |
28 | ||
29 | gpio-keys { | |
30 | compatible = "gpio-keys"; | |
31 | ||
32 | aux-button { | |
33 | label = "aux"; | |
34 | linux,code = <169>; | |
d8bd6731 | 35 | gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; |
adfe1473 MB |
36 | gpio-key,wakeup; |
37 | }; | |
38 | }; | |
6764f648 N |
39 | |
40 | sound { | |
41 | compatible = "ti,omap-twl4030"; | |
42 | ti,model = "gta04"; | |
43 | ||
44 | ti,mcbsp = <&mcbsp2>; | |
45 | ti,codec = <&twl_audio>; | |
46 | }; | |
c2e138bc MB |
47 | |
48 | spi_lcd { | |
49 | compatible = "spi-gpio"; | |
50 | #address-cells = <0x1>; | |
51 | #size-cells = <0x0>; | |
52 | pinctrl-names = "default"; | |
53 | pinctrl-0 = <&spi_gpio_pins>; | |
54 | ||
55 | gpio-sck = <&gpio1 12 0>; | |
56 | gpio-miso = <&gpio1 18 0>; | |
57 | gpio-mosi = <&gpio1 20 0>; | |
58 | cs-gpios = <&gpio1 19 0>; | |
59 | num-chipselects = <1>; | |
60 | ||
61 | /* lcd panel */ | |
62 | lcd: td028ttec1@0 { | |
63 | compatible = "toppoly,td028ttec1"; | |
64 | reg = <0>; | |
65 | spi-max-frequency = <100000>; | |
66 | spi-cpol; | |
67 | spi-cpha; | |
68 | ||
69 | label = "lcd"; | |
70 | port { | |
71 | lcd_in: endpoint { | |
72 | remote-endpoint = <&dpi_out>; | |
73 | }; | |
74 | }; | |
75 | }; | |
76 | }; | |
adfe1473 MB |
77 | }; |
78 | ||
79 | &omap3_pmx_core { | |
80 | uart1_pins: pinmux_uart1_pins { | |
81 | pinctrl-single,pins = < | |
82 | 0x152 (PIN_INPUT | MUX_MODE0) /* uart1_rx.uart1_rx */ | |
83 | 0x14c (PIN_OUTPUT |MUX_MODE0) /* uart1_tx.uart1_tx */ | |
84 | >; | |
85 | }; | |
86 | ||
87 | uart2_pins: pinmux_uart2_pins { | |
88 | pinctrl-single,pins = < | |
89 | 0x14a (PIN_INPUT | MUX_MODE0) /* uart2_rx.uart2_rx */ | |
90 | 0x148 (PIN_OUTPUT | MUX_MODE0) /* uart2_tx.uart2_tx */ | |
91 | >; | |
92 | }; | |
93 | ||
94 | uart3_pins: pinmux_uart3_pins { | |
95 | pinctrl-single,pins = < | |
96 | 0x16e (PIN_INPUT | MUX_MODE0) /* uart3_rx.uart3_rx */ | |
97 | 0x170 (PIN_OUTPUT | MUX_MODE0) /* uart3_tx.uart3_tx */ | |
98 | >; | |
99 | }; | |
100 | ||
101 | mmc1_pins: pinmux_mmc1_pins { | |
102 | pinctrl-single,pins = < | |
103 | 0x114 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */ | |
104 | 0x116 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_cmd.sdmmc1_cmd */ | |
105 | 0x118 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat0.sdmmc1_dat0 */ | |
106 | 0x11a (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat1.sdmmc1_dat1 */ | |
107 | 0x11c (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat2.sdmmc1_dat2 */ | |
108 | 0x11e (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */ | |
109 | >; | |
110 | }; | |
c2e138bc MB |
111 | |
112 | dss_dpi_pins: pinmux_dss_dpi_pins { | |
113 | pinctrl-single,pins = < | |
114 | 0x0a4 (PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */ | |
115 | 0x0a6 (PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */ | |
116 | 0x0a8 (PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */ | |
117 | 0x0aa (PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */ | |
118 | 0x0ac (PIN_OUTPUT | MUX_MODE0) /* dss_data0.dss_data0 */ | |
119 | 0x0ae (PIN_OUTPUT | MUX_MODE0) /* dss_data1.dss_data1 */ | |
120 | 0x0b0 (PIN_OUTPUT | MUX_MODE0) /* dss_data2.dss_data2 */ | |
121 | 0x0b2 (PIN_OUTPUT | MUX_MODE0) /* dss_data3.dss_data3 */ | |
122 | 0x0b4 (PIN_OUTPUT | MUX_MODE0) /* dss_data4.dss_data4 */ | |
123 | 0x0b6 (PIN_OUTPUT | MUX_MODE0) /* dss_data5.dss_data5 */ | |
124 | 0x0b8 (PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */ | |
125 | 0x0ba (PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */ | |
126 | 0x0bc (PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */ | |
127 | 0x0be (PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */ | |
128 | 0x0c0 (PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */ | |
129 | 0x0c2 (PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */ | |
130 | 0x0c4 (PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */ | |
131 | 0x0c6 (PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */ | |
132 | 0x0c8 (PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */ | |
133 | 0x0ca (PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */ | |
134 | 0x0cc (PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */ | |
135 | 0x0ce (PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */ | |
136 | 0x0d0 (PIN_OUTPUT | MUX_MODE0) /* dss_data18.dss_data18 */ | |
137 | 0x0d2 (PIN_OUTPUT | MUX_MODE0) /* dss_data19.dss_data19 */ | |
138 | 0x0d4 (PIN_OUTPUT | MUX_MODE0) /* dss_data20.dss_data20 */ | |
139 | 0x0d6 (PIN_OUTPUT | MUX_MODE0) /* dss_data21.dss_data21 */ | |
140 | 0x0d8 (PIN_OUTPUT | MUX_MODE0) /* dss_data22.dss_data22 */ | |
141 | 0x0da (PIN_OUTPUT | MUX_MODE0) /* dss_data23.dss_data23 */ | |
142 | >; | |
143 | }; | |
6c402f8d | 144 | }; |
c2e138bc | 145 | |
6c402f8d | 146 | &omap3_pmx_core2 { |
c2e138bc | 147 | spi_gpio_pins: spi_gpio_pinmux { |
6c402f8d MB |
148 | pinctrl-single,pins = < |
149 | OMAP3630_CORE2_IOPAD(0x25d8, PIN_OUTPUT | MUX_MODE4) /* clk */ | |
150 | OMAP3630_CORE2_IOPAD(0x25e6, PIN_OUTPUT | MUX_MODE4) /* cs */ | |
151 | OMAP3630_CORE2_IOPAD(0x25e8, PIN_OUTPUT | MUX_MODE4) /* tx */ | |
152 | OMAP3630_CORE2_IOPAD(0x25e4, PIN_INPUT | MUX_MODE4) /* rx */ | |
c2e138bc MB |
153 | >; |
154 | }; | |
adfe1473 MB |
155 | }; |
156 | ||
157 | &i2c1 { | |
158 | clock-frequency = <2600000>; | |
159 | ||
160 | twl: twl@48 { | |
161 | reg = <0x48>; | |
162 | interrupts = <7>; /* SYS_NIRQ cascaded to intc */ | |
163 | interrupt-parent = <&intc>; | |
164 | }; | |
6764f648 N |
165 | |
166 | twl_audio: audio { | |
167 | compatible = "ti,twl4030-audio"; | |
168 | codec { | |
169 | }; | |
170 | }; | |
adfe1473 MB |
171 | }; |
172 | ||
173 | #include "twl4030.dtsi" | |
174 | #include "twl4030_omap3.dtsi" | |
175 | ||
176 | &i2c2 { | |
177 | clock-frequency = <400000>; | |
178 | ||
179 | /* pressure sensor */ | |
180 | bmp085@77 { | |
181 | compatible = "bosch,bmp085"; | |
182 | reg = <0x77>; | |
d26794c0 MB |
183 | interrupt-parent = <&gpio4>; |
184 | interrupts = <17 IRQ_TYPE_EDGE_RISING>; | |
adfe1473 MB |
185 | }; |
186 | ||
24d0bb88 N |
187 | /* accelerometer */ |
188 | bma180@41 { | |
189 | compatible = "bosch,bma180"; | |
190 | reg = <0x41>; | |
191 | interrupt-parent = <&gpio3>; | |
192 | interrupts = <19 IRQ_TYPE_LEVEL_HIGH>; | |
193 | }; | |
194 | ||
adfe1473 MB |
195 | /* leds */ |
196 | tca6507@45 { | |
197 | compatible = "ti,tca6507"; | |
198 | #address-cells = <1>; | |
199 | #size-cells = <0>; | |
200 | reg = <0x45>; | |
201 | ||
e51c6bea MB |
202 | gpio-controller; |
203 | #gpio-cells = <2>; | |
204 | ||
adfe1473 MB |
205 | gta04_led0: red_aux@0 { |
206 | label = "gta04:red:aux"; | |
207 | reg = <0x0>; | |
208 | }; | |
209 | ||
210 | gta04_led1: green_aux@1 { | |
211 | label = "gta04:green:aux"; | |
212 | reg = <0x1>; | |
213 | }; | |
214 | ||
215 | gta04_led3: red_power@3 { | |
216 | label = "gta04:red:power"; | |
217 | reg = <0x3>; | |
218 | linux,default-trigger = "default-on"; | |
219 | }; | |
220 | ||
221 | gta04_led4: green_power@4 { | |
222 | label = "gta04:green:power"; | |
223 | reg = <0x4>; | |
224 | }; | |
e51c6bea MB |
225 | |
226 | wifi_reset: wifi_reset@6 { | |
227 | reg = <0x6>; | |
228 | compatible = "gpio"; | |
229 | }; | |
adfe1473 | 230 | }; |
32f2c393 N |
231 | |
232 | /* compass aka magnetometer */ | |
233 | hmc5843@1e { | |
9edc57af | 234 | compatible = "honeywell,hmc5883l"; |
32f2c393 N |
235 | reg = <0x1e>; |
236 | }; | |
9cbc03b4 MB |
237 | |
238 | /* touchscreen */ | |
239 | tsc2007@48 { | |
240 | compatible = "ti,tsc2007"; | |
241 | reg = <0x48>; | |
242 | interrupt-parent = <&gpio6>; | |
243 | interrupts = <0 IRQ_TYPE_EDGE_FALLING>; | |
244 | gpios = <&gpio6 0 GPIO_ACTIVE_LOW>; | |
245 | ti,x-plate-ohms = <600>; | |
246 | }; | |
adfe1473 MB |
247 | }; |
248 | ||
249 | &i2c3 { | |
250 | clock-frequency = <100000>; | |
251 | }; | |
252 | ||
253 | &usb_otg_hs { | |
254 | interface-type = <0>; | |
255 | usb-phy = <&usb2_phy>; | |
d2afcf09 RQ |
256 | phys = <&usb2_phy>; |
257 | phy-names = "usb2-phy"; | |
adfe1473 MB |
258 | mode = <3>; |
259 | power = <50>; | |
260 | }; | |
261 | ||
262 | &mmc1 { | |
263 | pinctrl-names = "default"; | |
264 | pinctrl-0 = <&mmc1_pins>; | |
265 | vmmc-supply = <&vmmc1>; | |
adfe1473 | 266 | bus-width = <4>; |
2d6ac29e | 267 | ti,non-removable; |
adfe1473 MB |
268 | }; |
269 | ||
270 | &mmc2 { | |
5a13ba68 N |
271 | vmmc-supply = <&vaux4>; |
272 | bus-width = <4>; | |
273 | ti,non-removable; | |
adfe1473 MB |
274 | }; |
275 | ||
276 | &mmc3 { | |
277 | status = "disabled"; | |
278 | }; | |
279 | ||
280 | &uart1 { | |
281 | pinctrl-names = "default"; | |
282 | pinctrl-0 = <&uart1_pins>; | |
283 | }; | |
284 | ||
285 | &uart2 { | |
286 | pinctrl-names = "default"; | |
287 | pinctrl-0 = <&uart2_pins>; | |
288 | }; | |
289 | ||
290 | &uart3 { | |
291 | pinctrl-names = "default"; | |
292 | pinctrl-0 = <&uart3_pins>; | |
293 | }; | |
294 | ||
8bdc9e90 N |
295 | &charger { |
296 | bb_uvolt = <3200000>; | |
297 | bb_uamp = <150>; | |
298 | }; | |
5a13ba68 N |
299 | |
300 | &vaux4 { | |
301 | regulator-min-microvolt = <2800000>; | |
302 | regulator-max-microvolt = <3150000>; | |
303 | }; | |
c2e138bc MB |
304 | |
305 | /* Needed to power the DPI pins */ | |
306 | &vpll2 { | |
307 | regulator-always-on; | |
308 | }; | |
309 | ||
310 | &dss { | |
311 | pinctrl-names = "default"; | |
312 | pinctrl-0 = < &dss_dpi_pins >; | |
313 | ||
314 | status = "okay"; | |
315 | ||
316 | port { | |
317 | dpi_out: endpoint { | |
318 | remote-endpoint = <&lcd_in>; | |
319 | data-lines = <24>; | |
320 | }; | |
321 | }; | |
322 | }; | |
2618a182 MB |
323 | |
324 | &gpmc { | |
325 | ranges = <0 0 0x30000000 0x04>; /* CS0: NAND */ | |
326 | ||
327 | nand@0,0 { | |
328 | reg = <0 0 0>; /* CS0, offset 0 */ | |
329 | nand-bus-width = <16>; | |
330 | ti,nand-ecc-opt = "bch8"; | |
331 | ||
332 | gpmc,sync-clk-ps = <0>; | |
333 | gpmc,cs-on-ns = <0>; | |
334 | gpmc,cs-rd-off-ns = <44>; | |
335 | gpmc,cs-wr-off-ns = <44>; | |
336 | gpmc,adv-on-ns = <6>; | |
337 | gpmc,adv-rd-off-ns = <34>; | |
338 | gpmc,adv-wr-off-ns = <44>; | |
339 | gpmc,we-off-ns = <40>; | |
340 | gpmc,oe-off-ns = <54>; | |
341 | gpmc,access-ns = <64>; | |
342 | gpmc,rd-cycle-ns = <82>; | |
343 | gpmc,wr-cycle-ns = <82>; | |
344 | gpmc,wr-access-ns = <40>; | |
345 | gpmc,wr-data-mux-bus-ns = <0>; | |
346 | gpmc,device-width = <2>; | |
347 | ||
348 | #address-cells = <1>; | |
349 | #size-cells = <1>; | |
350 | ||
351 | x-loader@0 { | |
352 | label = "X-Loader"; | |
353 | reg = <0 0x80000>; | |
354 | }; | |
355 | ||
356 | bootloaders@80000 { | |
357 | label = "U-Boot"; | |
358 | reg = <0x80000 0x1e0000>; | |
359 | }; | |
360 | ||
361 | bootloaders_env@260000 { | |
362 | label = "U-Boot Env"; | |
363 | reg = <0x260000 0x20000>; | |
364 | }; | |
365 | ||
366 | kernel@280000 { | |
367 | label = "Kernel"; | |
368 | reg = <0x280000 0x400000>; | |
369 | }; | |
370 | ||
371 | filesystem@680000 { | |
372 | label = "File System"; | |
373 | reg = <0x680000 0xf980000>; | |
374 | }; | |
375 | }; | |
376 | }; |