]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blame - arch/arm/boot/dts/omap3-n900.dts
ARM: dts: omap3-n900: Add SSI support
[mirror_ubuntu-zesty-kernel.git] / arch / arm / boot / dts / omap3-n900.dts
CommitLineData
a4d4b153
PM
1/*
2 * Copyright (C) 2013 Pavel Machek <pavel@ucw.cz>
c3580bc1 3 * Copyright (C) 2013-2014 Aaro Koskinen <aaro.koskinen@iki.fi>
a4d4b153
PM
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 (or later) as
7 * published by the Free Software Foundation.
8 */
9
10/dts-v1/;
11
f2e2c9d9 12#include "omap34xx-hs.dtsi"
3fdb7717 13#include <dt-bindings/input/input.h>
a4d4b153
PM
14
15/ {
16 model = "Nokia N900";
c3580bc1 17 compatible = "nokia,omap3-n900", "ti,omap3430", "ti,omap3";
a4d4b153
PM
18
19 cpus {
20 cpu@0 {
21 cpu0-supply = <&vcc>;
22 };
23 };
24
25 memory {
26 device_type = "memory";
27 reg = <0x80000000 0x10000000>; /* 256 MB */
28 };
29
3931c839
SR
30 gpio_keys {
31 compatible = "gpio-keys";
32
33 camera_lens_cover {
34 label = "Camera Lens Cover";
35 gpios = <&gpio4 14 GPIO_ACTIVE_LOW>; /* 110 */
36 linux,input-type = <5>; /* EV_SW */
37 linux,code = <0x09>; /* SW_CAMERA_LENS_COVER */
38 gpio-key,wakeup;
39 };
40
41 camera_focus {
42 label = "Camera Focus";
43 gpios = <&gpio3 4 GPIO_ACTIVE_LOW>; /* 68 */
44 linux,code = <0x210>; /* KEY_CAMERA_FOCUS */
45 gpio-key,wakeup;
46 };
47
48 camera_capture {
49 label = "Camera Capture";
50 gpios = <&gpio3 5 GPIO_ACTIVE_LOW>; /* 69 */
51 linux,code = <0xd4>; /* KEY_CAMERA */
52 gpio-key,wakeup;
53 };
54
55 lock_button {
56 label = "Lock Button";
57 gpios = <&gpio4 17 GPIO_ACTIVE_LOW>; /* 113 */
58 linux,code = <0x98>; /* KEY_SCREENLOCK */
59 gpio-key,wakeup;
60 };
61
62 keypad_slide {
63 label = "Keypad Slide";
64 gpios = <&gpio3 7 GPIO_ACTIVE_LOW>; /* 71 */
65 linux,input-type = <5>; /* EV_SW */
66 linux,code = <0x0a>; /* SW_KEYPAD_SLIDE */
67 gpio-key,wakeup;
68 };
69
70 proximity_sensor {
71 label = "Proximity Sensor";
72 gpios = <&gpio3 25 GPIO_ACTIVE_HIGH>; /* 89 */
73 linux,input-type = <5>; /* EV_SW */
74 linux,code = <0x0b>; /* SW_FRONT_PROXIMITY */
75 };
76 };
77
e17337a2
SR
78 isp1704: isp1704 {
79 compatible = "nxp,isp1704";
80 nxp,enable-gpio = <&gpio3 3 GPIO_ACTIVE_HIGH>;
81 usb-phy = <&usb2_phy>;
82 };
1133420f
TV
83
84 tv: connector {
85 compatible = "composite-connector";
86 label = "tv";
87
88 port {
89 tv_connector_in: endpoint {
90 remote-endpoint = <&venc_out>;
91 };
92 };
93 };
f7d0f2a0
SR
94
95 sound: n900-audio {
96 compatible = "nokia,n900-audio";
97
98 nokia,cpu-dai = <&mcbsp2>;
99 nokia,audio-codec = <&tlv320aic3x>, <&tlv320aic3x_aux>;
100 nokia,headphone-amplifier = <&tpa6130a2>;
101
102 tvout-selection-gpios = <&gpio2 8 GPIO_ACTIVE_HIGH>; /* 40 */
103 jack-detection-gpios = <&gpio6 17 GPIO_ACTIVE_HIGH>; /* 177 */
104 eci-switch-gpios = <&gpio6 22 GPIO_ACTIVE_HIGH>; /* 182 */
105 speaker-amplifier-gpios = <&twl_gpio 7 GPIO_ACTIVE_HIGH>;
106 };
a4d4b153
PM
107};
108
ac888a88
SR
109&omap3_pmx_core {
110 pinctrl-names = "default";
111
7a89eecf
SR
112 uart2_pins: pinmux_uart2_pins {
113 pinctrl-single,pins = <
114 0x14a (PIN_INPUT | MUX_MODE0) /* uart2_rx */
115 0x148 (PIN_OUTPUT | MUX_MODE0) /* uart2_tx */
116 >;
117 };
118
119 uart3_pins: pinmux_uart3_pins {
120 pinctrl-single,pins = <
121 0x16e (PIN_INPUT | MUX_MODE0) /* uart3_rx */
122 0x170 (PIN_OUTPUT | MUX_MODE0) /* uart3_tx */
123 >;
124 };
125
ac888a88
SR
126 i2c1_pins: pinmux_i2c1_pins {
127 pinctrl-single,pins = <
128 0x18a (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */
129 0x18c (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */
130 >;
131 };
132
133 i2c2_pins: pinmux_i2c2_pins {
134 pinctrl-single,pins = <
135 0x18e (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */
136 0x190 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */
137 >;
138 };
139
140 i2c3_pins: pinmux_i2c3_pins {
141 pinctrl-single,pins = <
142 0x192 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */
143 0x194 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */
144 >;
145 };
f1751cff 146
c1ad2206
SR
147 mcspi4_pins: pinmux_mcspi4_pins {
148 pinctrl-single,pins = <
149 0x15c (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mcspi4_clk */
150 0x162 (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mcspi4_somi */
151 0x160 (PIN_OUTPUT | MUX_MODE1) /* mcspi4_simo */
152 0x166 (PIN_OUTPUT | MUX_MODE1) /* mcspi4_cs0 */
153 >;
154 };
155
f1751cff
SR
156 mmc1_pins: pinmux_mmc1_pins {
157 pinctrl-single,pins = <
158 0x114 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_clk */
159 0x116 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_cmd */
160 0x118 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat0 */
161 0x11a (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat1 */
162 0x11c (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat2 */
163 0x11e (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3 */
164 >;
165 };
d1e6f516 166
edd5eb4e
TL
167 mmc2_pins: pinmux_mmc2_pins {
168 pinctrl-single,pins = <
169 0x128 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_clk */
170 0x12a (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_cmd */
171 0x12c (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat0 */
172 0x12e (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat1 */
173 0x130 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat2 */
174 0x132 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat3 */
175 0x134 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat4 */
176 0x136 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat5 */
177 0x138 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat6 */
178 0x13a (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat7 */
179 >;
180 };
181
1133420f 182 acx565akm_pins: pinmux_acx565akm_pins {
d1e6f516
SR
183 pinctrl-single,pins = <
184 0x0d4 (PIN_OUTPUT | MUX_MODE4) /* RX51_LCD_RESET_GPIO */
185 >;
186 };
1133420f
TV
187
188 dss_sdi_pins: pinmux_dss_sdi_pins {
189 pinctrl-single,pins = <
190 0x0c0 (PIN_OUTPUT | MUX_MODE1) /* dss_data10.sdi_dat1n */
191 0x0c2 (PIN_OUTPUT | MUX_MODE1) /* dss_data11.sdi_dat1p */
192 0x0c4 (PIN_OUTPUT | MUX_MODE1) /* dss_data12.sdi_dat2n */
193 0x0c6 (PIN_OUTPUT | MUX_MODE1) /* dss_data13.sdi_dat2p */
194
195 0x0d8 (PIN_OUTPUT | MUX_MODE1) /* dss_data22.sdi_clkp */
196 0x0da (PIN_OUTPUT | MUX_MODE1) /* dss_data23.sdi_clkn */
197 >;
198 };
c1ad2206
SR
199
200 wl1251_pins: pinmux_wl1251 {
201 pinctrl-single,pins = <
202 0x0ce (PIN_OUTPUT | MUX_MODE4) /* gpio 87 => wl1251 enable */
203 0x05a (PIN_INPUT | MUX_MODE4) /* gpio 42 => wl1251 irq */
204 >;
205 };
782e25a4
SR
206
207 ssi_pins: pinmux_ssi {
208 pinctrl-single,pins = <
209 0x150 (PIN_INPUT_PULLUP | MUX_MODE1) /* ssi1_rdy_tx */
210 0x14e (PIN_OUTPUT | MUX_MODE1) /* ssi1_flag_tx */
211 0x152 (PIN_INPUT | WAKEUP_EN | MUX_MODE4) /* ssi1_wake_tx (cawake) */
212 0x14c (PIN_OUTPUT | MUX_MODE1) /* ssi1_dat_tx */
213 0x154 (PIN_INPUT | MUX_MODE1) /* ssi1_dat_rx */
214 0x156 (PIN_INPUT | MUX_MODE1) /* ssi1_flag_rx */
215 0x158 (PIN_OUTPUT | MUX_MODE1) /* ssi1_rdy_rx */
216 0x15a (PIN_OUTPUT | MUX_MODE1) /* ssi1_wake */
217 >;
218 };
ac888a88
SR
219};
220
a4d4b153 221&i2c1 {
ac888a88
SR
222 pinctrl-names = "default";
223 pinctrl-0 = <&i2c1_pins>;
224
a4d4b153
PM
225 clock-frequency = <2200000>;
226
227 twl: twl@48 {
228 reg = <0x48>;
229 interrupts = <7>; /* SYS_NIRQ cascaded to intc */
230 interrupt-parent = <&intc>;
231 };
232};
233
234#include "twl4030.dtsi"
ac888a88 235#include "twl4030_omap3.dtsi"
a4d4b153 236
9cdbbadd
SR
237&vaux1 {
238 regulator-name = "V28";
239 regulator-min-microvolt = <2800000>;
240 regulator-max-microvolt = <2800000>;
241 regulator-always-on; /* due battery cover sensor */
242};
243
244&vaux2 {
245 regulator-name = "VCSI";
246 regulator-min-microvolt = <1800000>;
247 regulator-max-microvolt = <1800000>;
248};
249
250&vaux3 {
251 regulator-name = "VMMC2_30";
252 regulator-min-microvolt = <2800000>;
253 regulator-max-microvolt = <3000000>;
254};
255
256&vaux4 {
257 regulator-name = "VCAM_ANA_28";
258 regulator-min-microvolt = <2800000>;
259 regulator-max-microvolt = <2800000>;
260};
261
262&vmmc1 {
263 regulator-name = "VMMC1";
264 regulator-min-microvolt = <1850000>;
265 regulator-max-microvolt = <3150000>;
266};
267
268&vmmc2 {
269 regulator-name = "V28_A";
270 regulator-min-microvolt = <2800000>;
271 regulator-max-microvolt = <3000000>;
272 regulator-always-on; /* due VIO leak to AIC34 VDDs */
273};
274
275&vpll1 {
276 regulator-name = "VPLL";
277 regulator-min-microvolt = <1800000>;
278 regulator-max-microvolt = <1800000>;
279 regulator-always-on;
280};
281
282&vpll2 {
283 regulator-name = "VSDI_CSI";
284 regulator-min-microvolt = <1800000>;
285 regulator-max-microvolt = <1800000>;
286 regulator-always-on;
287};
288
289&vsim {
290 regulator-name = "VMMC2_IO_18";
291 regulator-min-microvolt = <1800000>;
292 regulator-max-microvolt = <1800000>;
293};
294
295&vio {
296 regulator-name = "VIO";
297 regulator-min-microvolt = <1800000>;
298 regulator-max-microvolt = <1800000>;
299
300};
301
302&vintana1 {
303 regulator-name = "VINTANA1";
304 /* fixed to 1500000 */
305 regulator-always-on;
306};
307
308&vintana2 {
309 regulator-name = "VINTANA2";
310 regulator-min-microvolt = <2750000>;
311 regulator-max-microvolt = <2750000>;
312 regulator-always-on;
313};
314
315&vintdig {
316 regulator-name = "VINTDIG";
317 /* fixed to 1500000 */
318 regulator-always-on;
319};
320
06ba7a61
SR
321&twl {
322 twl_audio: audio {
323 compatible = "ti,twl4030-audio";
324 ti,enable-vibra = <1>;
325 };
326};
327
85c215f3 328&twl_keypad {
3fdb7717
SR
329 linux,keymap = < MATRIX_KEY(0x00, 0x00, KEY_Q)
330 MATRIX_KEY(0x00, 0x01, KEY_O)
331 MATRIX_KEY(0x00, 0x02, KEY_P)
332 MATRIX_KEY(0x00, 0x03, KEY_COMMA)
333 MATRIX_KEY(0x00, 0x04, KEY_BACKSPACE)
334 MATRIX_KEY(0x00, 0x06, KEY_A)
335 MATRIX_KEY(0x00, 0x07, KEY_S)
336
337 MATRIX_KEY(0x01, 0x00, KEY_W)
338 MATRIX_KEY(0x01, 0x01, KEY_D)
339 MATRIX_KEY(0x01, 0x02, KEY_F)
340 MATRIX_KEY(0x01, 0x03, KEY_G)
341 MATRIX_KEY(0x01, 0x04, KEY_H)
342 MATRIX_KEY(0x01, 0x05, KEY_J)
343 MATRIX_KEY(0x01, 0x06, KEY_K)
344 MATRIX_KEY(0x01, 0x07, KEY_L)
345
346 MATRIX_KEY(0x02, 0x00, KEY_E)
347 MATRIX_KEY(0x02, 0x01, KEY_DOT)
348 MATRIX_KEY(0x02, 0x02, KEY_UP)
349 MATRIX_KEY(0x02, 0x03, KEY_ENTER)
350 MATRIX_KEY(0x02, 0x05, KEY_Z)
351 MATRIX_KEY(0x02, 0x06, KEY_X)
352 MATRIX_KEY(0x02, 0x07, KEY_C)
353 MATRIX_KEY(0x02, 0x08, KEY_F9)
354
355 MATRIX_KEY(0x03, 0x00, KEY_R)
356 MATRIX_KEY(0x03, 0x01, KEY_V)
357 MATRIX_KEY(0x03, 0x02, KEY_B)
358 MATRIX_KEY(0x03, 0x03, KEY_N)
359 MATRIX_KEY(0x03, 0x04, KEY_M)
360 MATRIX_KEY(0x03, 0x05, KEY_SPACE)
361 MATRIX_KEY(0x03, 0x06, KEY_SPACE)
362 MATRIX_KEY(0x03, 0x07, KEY_LEFT)
363
364 MATRIX_KEY(0x04, 0x00, KEY_T)
365 MATRIX_KEY(0x04, 0x01, KEY_DOWN)
366 MATRIX_KEY(0x04, 0x02, KEY_RIGHT)
367 MATRIX_KEY(0x04, 0x04, KEY_LEFTCTRL)
368 MATRIX_KEY(0x04, 0x05, KEY_RIGHTALT)
369 MATRIX_KEY(0x04, 0x06, KEY_LEFTSHIFT)
370 MATRIX_KEY(0x04, 0x08, KEY_F10)
371
372 MATRIX_KEY(0x05, 0x00, KEY_Y)
373 MATRIX_KEY(0x05, 0x08, KEY_F11)
374
375 MATRIX_KEY(0x06, 0x00, KEY_U)
376
377 MATRIX_KEY(0x07, 0x00, KEY_I)
378 MATRIX_KEY(0x07, 0x01, KEY_F7)
379 MATRIX_KEY(0x07, 0x02, KEY_F8)
85c215f3
SR
380 >;
381};
382
a4d4b153
PM
383&twl_gpio {
384 ti,pullups = <0x0>;
385 ti,pulldowns = <0x03ff3f>; /* BIT(0..5) | BIT(8..17) */
386};
387
388&i2c2 {
ac888a88
SR
389 pinctrl-names = "default";
390 pinctrl-0 = <&i2c2_pins>;
391
48fc9864 392 clock-frequency = <100000>;
b2b9b258 393
14e3e295
SR
394 tlv320aic3x: tlv320aic3x@18 {
395 compatible = "ti,tlv320aic3x";
396 reg = <0x18>;
397 gpio-reset = <&gpio2 28 GPIO_ACTIVE_HIGH>; /* 60 */
398 ai3x-gpio-func = <
399 0 /* AIC3X_GPIO1_FUNC_DISABLED */
400 5 /* AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT */
401 >;
402
403 AVDD-supply = <&vmmc2>;
404 DRVDD-supply = <&vmmc2>;
405 IOVDD-supply = <&vio>;
406 DVDD-supply = <&vio>;
407 };
408
409 tlv320aic3x_aux: tlv320aic3x@19 {
410 compatible = "ti,tlv320aic3x";
411 reg = <0x19>;
412 gpio-reset = <&gpio2 28 GPIO_ACTIVE_HIGH>; /* 60 */
413
414 AVDD-supply = <&vmmc2>;
415 DRVDD-supply = <&vmmc2>;
416 IOVDD-supply = <&vio>;
417 DVDD-supply = <&vio>;
418 };
419
12f2f873
SR
420 tsl2563: tsl2563@29 {
421 compatible = "amstaos,tsl2563";
422 reg = <0x29>;
423
424 amstaos,cover-comp-gain = <16>;
425 };
426
a0bf1f3e
SR
427 lp5523: lp5523@32 {
428 compatible = "national,lp5523";
429 reg = <0x32>;
430 clock-mode = /bits/ 8 <0>; /* LP55XX_CLOCK_AUTO */
431 enable-gpio = <&gpio2 9 GPIO_ACTIVE_HIGH>; /* 41 */
432
433 chan0 {
434 chan-name = "lp5523:kb1";
435 led-cur = /bits/ 8 <50>;
436 max-cur = /bits/ 8 <100>;
437 };
438
439 chan1 {
440 chan-name = "lp5523:kb2";
441 led-cur = /bits/ 8 <50>;
442 max-cur = /bits/ 8 <100>;
443 };
444
445 chan2 {
446 chan-name = "lp5523:kb3";
447 led-cur = /bits/ 8 <50>;
448 max-cur = /bits/ 8 <100>;
449 };
450
451 chan3 {
452 chan-name = "lp5523:kb4";
453 led-cur = /bits/ 8 <50>;
454 max-cur = /bits/ 8 <100>;
455 };
456
457 chan4 {
458 chan-name = "lp5523:b";
459 led-cur = /bits/ 8 <50>;
460 max-cur = /bits/ 8 <100>;
461 };
462
463 chan5 {
464 chan-name = "lp5523:g";
465 led-cur = /bits/ 8 <50>;
466 max-cur = /bits/ 8 <100>;
467 };
468
469 chan6 {
470 chan-name = "lp5523:r";
471 led-cur = /bits/ 8 <50>;
472 max-cur = /bits/ 8 <100>;
473 };
474
475 chan7 {
476 chan-name = "lp5523:kb5";
477 led-cur = /bits/ 8 <50>;
478 max-cur = /bits/ 8 <100>;
479 };
480
481 chan8 {
482 chan-name = "lp5523:kb6";
483 led-cur = /bits/ 8 <50>;
484 max-cur = /bits/ 8 <100>;
485 };
486 };
487
b2b9b258
SR
488 bq27200: bq27200@55 {
489 compatible = "ti,bq27200";
490 reg = <0x55>;
491 };
9e2367c8
SR
492
493 tpa6130a2: tpa6130a2@60 {
494 compatible = "ti,tpa6130a2";
495 reg = <0x60>;
496
497 Vdd-supply = <&vmmc2>;
498
499 power-gpio = <&gpio4 2 GPIO_ACTIVE_HIGH>; /* 98 */
500 };
334a09c8
SR
501
502 bq24150a: bq24150a@6b {
503 compatible = "ti,bq24150a";
504 reg = <0x6b>;
505
506 ti,current-limit = <100>;
507 ti,weak-battery-voltage = <3400>;
508 ti,battery-regulation-voltage = <4200>;
509 ti,charge-current = <650>;
510 ti,termination-current = <100>;
511 ti,resistor-sense = <68>;
512
513 ti,usb-charger-detection = <&isp1704>;
514 };
a4d4b153
PM
515};
516
517&i2c3 {
ac888a88
SR
518 pinctrl-names = "default";
519 pinctrl-0 = <&i2c3_pins>;
520
48fc9864 521 clock-frequency = <400000>;
a4d4b153
PM
522};
523
524&mmc1 {
f1751cff
SR
525 pinctrl-names = "default";
526 pinctrl-0 = <&mmc1_pins>;
527 vmmc-supply = <&vmmc1>;
528 bus-width = <4>;
529 cd-gpios = <&gpio6 0 GPIO_ACTIVE_HIGH>; /* 160 */
a4d4b153
PM
530};
531
edd5eb4e 532/* most boards use vaux3, only some old versions use vmmc2 instead */
a4d4b153 533&mmc2 {
edd5eb4e
TL
534 pinctrl-names = "default";
535 pinctrl-0 = <&mmc2_pins>;
536 vmmc-supply = <&vaux3>;
537 vmmc_aux-supply = <&vsim>;
538 bus-width = <8>;
539 non-removable;
a4d4b153
PM
540};
541
542&mmc3 {
543 status = "disabled";
544};
545
8699d2dd
SR
546&gpmc {
547 ranges = <0 0 0x04000000 0x10000000>; /* 256MB */
548
549 /* gpio-irq for dma: 65 */
550
551 onenand@0,0 {
552 #address-cells = <1>;
553 #size-cells = <1>;
554 reg = <0 0 0x10000000>;
555
556 gpmc,sync-read;
557 gpmc,sync-write;
558 gpmc,burst-length = <16>;
559 gpmc,burst-read;
560 gpmc,burst-wrap;
561 gpmc,burst-write;
562 gpmc,device-width = <2>; /* GPMC_DEVWIDTH_16BIT */
563 gpmc,mux-add-data = <2>; /* GPMC_MUX_AD */
564 gpmc,cs-on-ns = <0>;
565 gpmc,cs-rd-off-ns = <87>;
566 gpmc,cs-wr-off-ns = <87>;
567 gpmc,adv-on-ns = <0>;
568 gpmc,adv-rd-off-ns = <10>;
569 gpmc,adv-wr-off-ns = <10>;
570 gpmc,oe-on-ns = <15>;
571 gpmc,oe-off-ns = <87>;
572 gpmc,we-on-ns = <0>;
573 gpmc,we-off-ns = <87>;
574 gpmc,rd-cycle-ns = <112>;
575 gpmc,wr-cycle-ns = <112>;
576 gpmc,access-ns = <81>;
577 gpmc,page-burst-access-ns = <15>;
578 gpmc,bus-turnaround-ns = <0>;
579 gpmc,cycle2cycle-delay-ns = <0>;
580 gpmc,wait-monitoring-ns = <0>;
581 gpmc,clk-activation-ns = <5>;
582 gpmc,wr-data-mux-bus-ns = <30>;
583 gpmc,wr-access-ns = <81>;
584 gpmc,sync-clk-ps = <15000>;
585
586 /*
587 * MTD partition table corresponding to Nokia's
588 * Maemo 5 (Fremantle) release.
589 */
590 partition@0 {
591 label = "bootloader";
592 reg = <0x00000000 0x00020000>;
593 read-only;
594 };
595 partition@1 {
596 label = "config";
597 reg = <0x00020000 0x00060000>;
598 };
599 partition@2 {
600 label = "log";
601 reg = <0x00080000 0x00040000>;
602 };
603 partition@3 {
604 label = "kernel";
605 reg = <0x000c0000 0x00200000>;
606 };
607 partition@4 {
608 label = "initfs";
609 reg = <0x002c0000 0x00200000>;
610 };
611 partition@5 {
612 label = "rootfs";
613 reg = <0x004c0000 0x0fb40000>;
614 };
615 };
616};
617
a4d4b153
PM
618&mcspi1 {
619 /*
620 * For some reason, touchscreen is necessary for screen to work at
621 * all on real hw. It works well without it on emulator.
622 *
623 * Also... order in the device tree actually matters here.
624 */
625 tsc2005@0 {
626 compatible = "tsc2005";
627 spi-max-frequency = <6000000>;
628 reg = <0>;
629 };
1133420f
TV
630
631 acx565akm@2 {
632 compatible = "sony,acx565akm";
a4d4b153
PM
633 spi-max-frequency = <6000000>;
634 reg = <2>;
d1e6f516
SR
635
636 pinctrl-names = "default";
1133420f
TV
637 pinctrl-0 = <&acx565akm_pins>;
638
639 label = "lcd";
640 reset-gpios = <&gpio3 26 GPIO_ACTIVE_HIGH>; /* 90 */
641
642 port {
643 lcd_in: endpoint {
644 remote-endpoint = <&sdi_out>;
645 };
646 };
a4d4b153
PM
647 };
648};
649
c1ad2206
SR
650&mcspi4 {
651 pinctrl-names = "default";
652 pinctrl-0 = <&mcspi4_pins>;
653
654 wl1251@0 {
655 pinctrl-names = "default";
656 pinctrl-0 = <&wl1251_pins>;
657
658 vio-supply = <&vio>;
659
660 compatible = "ti,wl1251";
661 reg = <0>;
662 spi-max-frequency = <48000000>;
663
664 spi-cpol;
665 spi-cpha;
666
667 ti,power-gpio = <&gpio3 23 GPIO_ACTIVE_HIGH>; /* 87 */
668
669 interrupt-parent = <&gpio2>;
670 interrupts = <10 IRQ_TYPE_NONE>; /* gpio line 42 */
671 };
672};
673
a4d4b153
PM
674&usb_otg_hs {
675 interface-type = <0>;
676 usb-phy = <&usb2_phy>;
d2afcf09
RQ
677 phys = <&usb2_phy>;
678 phy-names = "usb2-phy";
a4d4b153
PM
679 mode = <2>;
680 power = <50>;
681};
7a89eecf
SR
682
683&uart1 {
684 status = "disabled";
685};
686
687&uart2 {
688 pinctrl-names = "default";
689 pinctrl-0 = <&uart2_pins>;
690};
691
692&uart3 {
693 pinctrl-names = "default";
694 pinctrl-0 = <&uart3_pins>;
695};
1133420f
TV
696
697&dss {
698 status = "ok";
699
700 pinctrl-names = "default";
701 pinctrl-0 = <&dss_sdi_pins>;
702
703 vdds_sdi-supply = <&vaux1>;
704
705 ports {
706 #address-cells = <1>;
707 #size-cells = <0>;
708
709 port@1 {
710 reg = <1>;
711
712 sdi_out: endpoint {
713 remote-endpoint = <&lcd_in>;
714 datapairs = <2>;
715 };
716 };
717 };
718};
719
720&venc {
721 status = "ok";
722
723 vdda-supply = <&vdac>;
724
725 port {
726 venc_out: endpoint {
727 remote-endpoint = <&tv_connector_in>;
728 ti,channels = <1>;
729 };
730 };
731};
f7d0f2a0
SR
732
733&mcbsp2 {
734 status = "ok";
735};
782e25a4
SR
736
737&ssi_port1 {
738 pinctrl-names = "default";
739 pinctrl-0 = <&ssi_pins>;
740
741 ti,ssi-cawake-gpio = <&gpio5 23 GPIO_ACTIVE_HIGH>; /* 151 */
742};
743
744&ssi_port2 {
745 status = "disabled";
746};