GNU Linux-libre 6.1.90-gnu
[releases.git] / arch / arm / boot / dts / omap3-n900.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /*
3  * Copyright (C) 2013 Pavel Machek <pavel@ucw.cz>
4  * Copyright (C) 2013-2014 Aaro Koskinen <aaro.koskinen@iki.fi>
5  */
6
7 /dts-v1/;
8
9 #include "omap34xx.dtsi"
10 #include <dt-bindings/input/input.h>
11 #include <dt-bindings/leds/common.h>
12
13 /*
14  * Default secure signed bootloader (Nokia X-Loader) does not enable L3 firewall
15  * for omap AES HW crypto support. When linux kernel try to access memory of AES
16  * blocks then kernel receive "Unhandled fault: external abort on non-linefetch"
17  * and crash. Until somebody fix omap-aes.c and omap_hwmod_3xxx_data.c code (no
18  * crash anymore) omap AES support will be disabled for all Nokia N900 devices.
19  * There is "unofficial" version of bootloader which enables AES in L3 firewall
20  * but it is not widely used and to prevent kernel crash rather AES is disabled.
21  * There is also no runtime detection code if AES is disabled in L3 firewall...
22  */
23 &aes1_target {
24         status = "disabled";
25 };
26
27 &aes2_target {
28         status = "disabled";
29 };
30
31 / {
32         model = "Nokia N900";
33         compatible = "nokia,omap3-n900", "ti,omap3430", "ti,omap3";
34
35         aliases {
36                 i2c0;
37                 i2c1 = &i2c1;
38                 i2c2 = &i2c2;
39                 i2c3 = &i2c3;
40                 display0 = &lcd;
41                 display1 = &tv;
42         };
43
44         cpus {
45                 cpu@0 {
46                         cpu0-supply = <&vcc>;
47                 };
48         };
49
50         leds {
51                 compatible = "gpio-leds";
52                 heartbeat {
53                         label = "debug::sleep";
54                         gpios = <&gpio6 2 GPIO_ACTIVE_HIGH>;  /* 162 */
55                         linux,default-trigger = "default-on";
56                         pinctrl-names = "default";
57                         pinctrl-0 = <&debug_leds>;
58                 };
59         };
60
61         memory@80000000 {
62                 device_type = "memory";
63                 reg = <0x80000000 0x10000000>; /* 256 MB */
64         };
65
66         gpio_keys {
67                 compatible = "gpio-keys";
68
69                 camera_lens_cover {
70                         label = "Camera Lens Cover";
71                         gpios = <&gpio4 14 GPIO_ACTIVE_LOW>; /* 110 */
72                         linux,input-type = <EV_SW>;
73                         linux,code = <SW_CAMERA_LENS_COVER>;
74                         linux,can-disable;
75                 };
76
77                 camera_focus {
78                         label = "Camera Focus";
79                         gpios = <&gpio3 4 GPIO_ACTIVE_LOW>; /* 68 */
80                         linux,code = <KEY_CAMERA_FOCUS>;
81                         linux,can-disable;
82                 };
83
84                 camera_capture {
85                         label = "Camera Capture";
86                         gpios = <&gpio3 5 GPIO_ACTIVE_LOW>; /* 69 */
87                         linux,code = <KEY_CAMERA>;
88                         linux,can-disable;
89                 };
90
91                 lock_button {
92                         label = "Lock Button";
93                         gpios = <&gpio4 17 GPIO_ACTIVE_LOW>; /* 113 */
94                         linux,code = <KEY_SCREENLOCK>;
95                         linux,can-disable;
96                 };
97
98                 keypad_slide {
99                         label = "Keypad Slide";
100                         gpios = <&gpio3 7 GPIO_ACTIVE_LOW>; /* 71 */
101                         linux,input-type = <EV_SW>;
102                         linux,code = <SW_KEYPAD_SLIDE>;
103                         linux,can-disable;
104                 };
105
106                 proximity_sensor {
107                         label = "Proximity Sensor";
108                         gpios = <&gpio3 25 GPIO_ACTIVE_HIGH>; /* 89 */
109                         linux,input-type = <EV_SW>;
110                         linux,code = <SW_FRONT_PROXIMITY>;
111                         linux,can-disable;
112                 };
113
114                 machine_cover {
115                         label = "Machine Cover";
116                         gpios = <&gpio6 0 GPIO_ACTIVE_LOW>; /* 160 */
117                         linux,input-type = <EV_SW>;
118                         linux,code = <SW_MACHINE_COVER>;
119                         linux,can-disable;
120                 };
121         };
122
123         isp1707: isp1707 {
124                 compatible = "nxp,isp1707";
125                 nxp,enable-gpio = <&gpio3 3 GPIO_ACTIVE_HIGH>;
126                 usb-phy = <&usb2_phy>;
127         };
128
129         tv: connector {
130                 compatible = "composite-video-connector";
131                 label = "tv";
132
133                 port {
134                         tv_connector_in: endpoint {
135                                 remote-endpoint = <&venc_out>;
136                         };
137                 };
138         };
139
140         sound: n900-audio {
141                 compatible = "nokia,n900-audio";
142
143                 nokia,cpu-dai = <&mcbsp2>;
144                 nokia,audio-codec = <&tlv320aic3x>, <&tlv320aic3x_aux>;
145                 nokia,headphone-amplifier = <&tpa6130a2>;
146
147                 tvout-selection-gpios = <&gpio2 8 GPIO_ACTIVE_HIGH>; /* 40 */
148                 jack-detection-gpios = <&gpio6 17 GPIO_ACTIVE_HIGH>; /* 177 */
149                 eci-switch-gpios = <&gpio6 22 GPIO_ACTIVE_HIGH>; /* 182 */
150                 speaker-amplifier-gpios = <&twl_gpio 7 GPIO_ACTIVE_HIGH>;
151         };
152
153         battery: n900-battery {
154                 compatible = "nokia,n900-battery";
155                 io-channels = <&twl_madc 0>, <&twl_madc 4>, <&twl_madc 12>;
156                 io-channel-names = "temp", "bsi", "vbat";
157         };
158
159         pwm9: pwm-9 {
160                 compatible = "ti,omap-dmtimer-pwm";
161                 #pwm-cells = <3>;
162                 ti,timers = <&timer9>;
163                 ti,clock-source = <0x00>; /* timer_sys_ck */
164         };
165
166         ir: n900-ir {
167                 compatible = "nokia,n900-ir";
168                 pwms = <&pwm9 0 26316 0>; /* 38000 Hz */
169         };
170
171         rom_rng: rng {
172                 compatible = "nokia,n900-rom-rng";
173                 clocks = <&rng_ick>;
174                 clock-names = "ick";
175         };
176
177         /* controlled (enabled/disabled) directly by bcm2048 and wl1251 */
178         vctcxo: vctcxo {
179                 compatible = "fixed-clock";
180                 #clock-cells = <0>;
181                 clock-frequency = <38400000>;
182         };
183 };
184
185 &isp {
186         vdds_csib-supply = <&vaux2>;
187
188         pinctrl-names = "default";
189         pinctrl-0 = <&camera_pins>;
190
191         ports {
192                 port@1 {
193                         reg = <1>;
194
195                         csi_isp: endpoint {
196                                 remote-endpoint = <&csi_cam1>;
197                                 bus-type = <3>; /* CCP2 */
198                                 clock-lanes = <1>;
199                                 data-lanes = <0>;
200                                 lane-polarity = <0 0>;
201                                 /* Select strobe = <1> for back camera, <0> for front camera */
202                                 strobe = <1>;
203                         };
204                 };
205         };
206 };
207
208 &omap3_pmx_core {
209         pinctrl-names = "default";
210
211         uart2_pins: pinmux_uart2_pins {
212                 pinctrl-single,pins = <
213                         OMAP3_CORE1_IOPAD(0x2174, PIN_INPUT_PULLUP | MUX_MODE0)         /* uart2_cts */
214                         OMAP3_CORE1_IOPAD(0x2176, PIN_OUTPUT | MUX_MODE0)               /* uart2_rts */
215                         OMAP3_CORE1_IOPAD(0x2178, PIN_OUTPUT | MUX_MODE0)               /* uart2_tx */
216                         OMAP3_CORE1_IOPAD(0x217a, PIN_INPUT | MUX_MODE0)                /* uart2_rx */
217                 >;
218         };
219
220         uart3_pins: pinmux_uart3_pins {
221                 pinctrl-single,pins = <
222                         OMAP3_CORE1_IOPAD(0x219e, PIN_INPUT | MUX_MODE0)                /* uart3_rx */
223                         OMAP3_CORE1_IOPAD(0x21a0, PIN_OUTPUT | MUX_MODE0)               /* uart3_tx */
224                 >;
225         };
226
227         ethernet_pins: pinmux_ethernet_pins {
228                 pinctrl-single,pins = <
229                         OMAP3_CORE1_IOPAD(0x20b4, PIN_INPUT_PULLDOWN | MUX_MODE4)       /* gpmc_ncs3.gpio_54 */
230                         OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE4)               /* dss_data16.gpio_86 */
231                         OMAP3_CORE1_IOPAD(0x219c, PIN_OUTPUT | MUX_MODE4)               /* uart3_rts_sd.gpio_164 */
232                 >;
233         };
234
235         gpmc_pins: pinmux_gpmc_pins {
236                 pinctrl-single,pins = <
237
238                         /* address lines */
239                         OMAP3_CORE1_IOPAD(0x207a, PIN_OUTPUT | MUX_MODE0)       /* gpmc_a1.gpmc_a1 */
240                         OMAP3_CORE1_IOPAD(0x207c, PIN_OUTPUT | MUX_MODE0)       /* gpmc_a2.gpmc_a2 */
241                         OMAP3_CORE1_IOPAD(0x207e, PIN_OUTPUT | MUX_MODE0)       /* gpmc_a3.gpmc_a3 */
242
243                         /* data lines, gpmc_d0..d7 not muxable according to TRM */
244                         OMAP3_CORE1_IOPAD(0x209e, PIN_INPUT | MUX_MODE0)        /* gpmc_d8.gpmc_d8 */
245                         OMAP3_CORE1_IOPAD(0x20a0, PIN_INPUT | MUX_MODE0)        /* gpmc_d9.gpmc_d9 */
246                         OMAP3_CORE1_IOPAD(0x20a2, PIN_INPUT | MUX_MODE0)        /* gpmc_d10.gpmc_d10 */
247                         OMAP3_CORE1_IOPAD(0x20a4, PIN_INPUT | MUX_MODE0)        /* gpmc_d11.gpmc_d11 */
248                         OMAP3_CORE1_IOPAD(0x20a6, PIN_INPUT | MUX_MODE0)        /* gpmc_d12.gpmc_d12 */
249                         OMAP3_CORE1_IOPAD(0x20a8, PIN_INPUT | MUX_MODE0)        /* gpmc_d13.gpmc_d13 */
250                         OMAP3_CORE1_IOPAD(0x20aa, PIN_INPUT | MUX_MODE0)        /* gpmc_d14.gpmc_d14 */
251                         OMAP3_CORE1_IOPAD(0x20ac, PIN_INPUT | MUX_MODE0)        /* gpmc_d15.gpmc_d15 */
252
253                         /*
254                          * gpmc_ncs0, gpmc_nadv_ale, gpmc_noe, gpmc_nwe, gpmc_wait0 not muxable
255                          * according to TRM. OneNAND seems to require PIN_INPUT on clock.
256                          */
257                         OMAP3_CORE1_IOPAD(0x20b0, PIN_OUTPUT | MUX_MODE0)       /* gpmc_ncs1.gpmc_ncs1 */
258                         OMAP3_CORE1_IOPAD(0x20be, PIN_INPUT | MUX_MODE0)        /* gpmc_clk.gpmc_clk */
259                         >;
260         };
261
262         i2c1_pins: pinmux_i2c1_pins {
263                 pinctrl-single,pins = <
264                         OMAP3_CORE1_IOPAD(0x21ba, PIN_INPUT | MUX_MODE0)                /* i2c1_scl */
265                         OMAP3_CORE1_IOPAD(0x21bc, PIN_INPUT | MUX_MODE0)                /* i2c1_sda */
266                 >;
267         };
268
269         i2c2_pins: pinmux_i2c2_pins {
270                 pinctrl-single,pins = <
271                         OMAP3_CORE1_IOPAD(0x21be, PIN_INPUT | MUX_MODE0)                /* i2c2_scl */
272                         OMAP3_CORE1_IOPAD(0x21c0, PIN_INPUT | MUX_MODE0)                /* i2c2_sda */
273                 >;
274         };
275
276         i2c3_pins: pinmux_i2c3_pins {
277                 pinctrl-single,pins = <
278                         OMAP3_CORE1_IOPAD(0x21c2, PIN_INPUT | MUX_MODE0)                /* i2c3_scl */
279                         OMAP3_CORE1_IOPAD(0x21c4, PIN_INPUT | MUX_MODE0)                /* i2c3_sda */
280                 >;
281         };
282
283         debug_leds: pinmux_debug_led_pins {
284                 pinctrl-single,pins = <
285                         OMAP3_CORE1_IOPAD(0x2198, PIN_OUTPUT | MUX_MODE4)       /* mcbsp1_clkx.gpio_162 */
286                 >;
287         };
288
289         mcspi4_pins: pinmux_mcspi4_pins {
290                 pinctrl-single,pins = <
291                         OMAP3_CORE1_IOPAD(0x218c, PIN_INPUT_PULLDOWN | MUX_MODE1) /* mcspi4_clk */
292                         OMAP3_CORE1_IOPAD(0x2192, PIN_INPUT_PULLDOWN | MUX_MODE1) /* mcspi4_somi */
293                         OMAP3_CORE1_IOPAD(0x2190, PIN_OUTPUT | MUX_MODE1) /* mcspi4_simo */
294                         OMAP3_CORE1_IOPAD(0x2196, PIN_OUTPUT | MUX_MODE1) /* mcspi4_cs0 */
295                 >;
296         };
297
298         mmc1_pins: pinmux_mmc1_pins {
299                 pinctrl-single,pins = <
300                         OMAP3_CORE1_IOPAD(0x2144, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_clk */
301                         OMAP3_CORE1_IOPAD(0x2146, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_cmd */
302                         OMAP3_CORE1_IOPAD(0x2148, PIN_INPUT_PULLUP | MUX_MODE0)         /* sdmmc1_dat0 */
303                         OMAP3_CORE1_IOPAD(0x214a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat1 */
304                         OMAP3_CORE1_IOPAD(0x214c, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat2 */
305                         OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3 */
306                 >;
307         };
308
309         mmc2_pins: pinmux_mmc2_pins {
310                 pinctrl-single,pins = <
311                         OMAP3_CORE1_IOPAD(0x2158, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_clk */
312                         OMAP3_CORE1_IOPAD(0x215a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_cmd */
313                         OMAP3_CORE1_IOPAD(0x215c, PIN_INPUT_PULLUP | MUX_MODE0)         /* sdmmc2_dat0 */
314                         OMAP3_CORE1_IOPAD(0x215e, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat1 */
315                         OMAP3_CORE1_IOPAD(0x2160, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat2 */
316                         OMAP3_CORE1_IOPAD(0x2162, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat3 */
317                         OMAP3_CORE1_IOPAD(0x2164, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat4 */
318                         OMAP3_CORE1_IOPAD(0x2166, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat5 */
319                         OMAP3_CORE1_IOPAD(0x2168, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat6 */
320                         OMAP3_CORE1_IOPAD(0x216a, PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat7 */
321                 >;
322         };
323
324         acx565akm_pins: pinmux_acx565akm_pins {
325                 pinctrl-single,pins = <
326                         OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE4)               /* RX51_LCD_RESET_GPIO */
327                 >;
328         };
329
330         dss_sdi_pins: pinmux_dss_sdi_pins {
331                 pinctrl-single,pins = <
332                         OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE1)   /* dss_data10.sdi_dat1n */
333                         OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE1)   /* dss_data11.sdi_dat1p */
334                         OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE1)   /* dss_data12.sdi_dat2n */
335                         OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE1)   /* dss_data13.sdi_dat2p */
336
337                         OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE1)   /* dss_data22.sdi_clkp */
338                         OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE1)   /* dss_data23.sdi_clkn */
339                 >;
340         };
341
342         wl1251_pins: pinmux_wl1251 {
343                 pinctrl-single,pins = <
344                         OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE4)               /* gpio 87 => wl1251 enable */
345                         OMAP3_CORE1_IOPAD(0x208a, PIN_INPUT | MUX_MODE4)                /* gpio 42 => wl1251 irq */
346                 >;
347         };
348
349         ssi_pins: pinmux_ssi {
350                 pinctrl-single,pins = <
351                         OMAP3_CORE1_IOPAD(0x2180, PIN_INPUT_PULLUP | MUX_MODE1) /* ssi1_rdy_tx */
352                         OMAP3_CORE1_IOPAD(0x217e, PIN_OUTPUT | MUX_MODE1)               /* ssi1_flag_tx */
353                         OMAP3_CORE1_IOPAD(0x2182, PIN_INPUT | MUX_MODE4)                /* ssi1_wake_tx (cawake) */
354                         OMAP3_CORE1_IOPAD(0x217c, PIN_OUTPUT | MUX_MODE1)               /* ssi1_dat_tx */
355                         OMAP3_CORE1_IOPAD(0x2184, PIN_INPUT | MUX_MODE1)                /* ssi1_dat_rx */
356                         OMAP3_CORE1_IOPAD(0x2186, PIN_INPUT | MUX_MODE1)                /* ssi1_flag_rx */
357                         OMAP3_CORE1_IOPAD(0x2188, PIN_OUTPUT | MUX_MODE1)               /* ssi1_rdy_rx */
358                         OMAP3_CORE1_IOPAD(0x218a, PIN_OUTPUT | MUX_MODE1)               /* ssi1_wake */
359                 >;
360         };
361
362         modem_pins: pinmux_modem {
363                 pinctrl-single,pins = <
364                         OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT | MUX_MODE4)               /* gpio 70 => cmt_apeslpx */
365                         OMAP3_CORE1_IOPAD(0x20e0, PIN_INPUT | MUX_MODE4)                /* gpio 72 => ape_rst_rq */
366                         OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT | MUX_MODE4)               /* gpio 73 => cmt_rst_rq */
367                         OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT | MUX_MODE4)               /* gpio 74 => cmt_en */
368                         OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT | MUX_MODE4)               /* gpio 75 => cmt_rst */
369                         OMAP3_CORE1_IOPAD(0x218e, PIN_OUTPUT | MUX_MODE4)               /* gpio 157 => cmt_bsi */
370                 >;
371         };
372
373         camera_pins: pinmux_camera {
374                 pinctrl-single,pins = <
375                         OMAP3_CORE1_IOPAD(0x210c, PIN_OUTPUT | MUX_MODE7)       /* cam_hs */
376                         OMAP3_CORE1_IOPAD(0x210e, PIN_OUTPUT | MUX_MODE7)       /* cam_vs */
377                         OMAP3_CORE1_IOPAD(0x2110, PIN_OUTPUT | MUX_MODE0)       /* cam_xclka */
378                         OMAP3_CORE1_IOPAD(0x211e, PIN_OUTPUT | MUX_MODE7)       /* cam_d4 */
379                         OMAP3_CORE1_IOPAD(0x2122, PIN_INPUT | MUX_MODE0)        /* cam_d6 */
380                         OMAP3_CORE1_IOPAD(0x2124, PIN_INPUT | MUX_MODE0)        /* cam_d7 */
381                         OMAP3_CORE1_IOPAD(0x2126, PIN_INPUT | MUX_MODE0)        /* cam_d8 */
382                         OMAP3_CORE1_IOPAD(0x2128, PIN_INPUT | MUX_MODE0)        /* cam_d9 */
383                         OMAP3_CORE1_IOPAD(0x212a, PIN_OUTPUT | MUX_MODE7)       /* cam_d10 */
384                         OMAP3_CORE1_IOPAD(0x212e, PIN_OUTPUT | MUX_MODE7)       /* cam_xclkb */
385                         OMAP3_CORE1_IOPAD(0x2132, PIN_OUTPUT | MUX_MODE0)       /* cam_strobe */
386                 >;
387         };
388 };
389
390 &i2c1 {
391         pinctrl-names = "default";
392         pinctrl-0 = <&i2c1_pins>;
393
394         clock-frequency = <2200000>;
395
396         twl: twl@48 {
397                 reg = <0x48>;
398                 interrupts = <7>; /* SYS_NIRQ cascaded to intc */
399                 interrupt-parent = <&intc>;
400         };
401 };
402
403 #include "twl4030.dtsi"
404 #include "twl4030_omap3.dtsi"
405
406 &vaux1 {
407         regulator-name = "V28";
408         regulator-min-microvolt = <2800000>;
409         regulator-max-microvolt = <2800000>;
410         regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */
411         regulator-always-on; /* due to battery cover sensor */
412 };
413
414 &vaux2 {
415         regulator-name = "VCSI";
416         regulator-min-microvolt = <1800000>;
417         regulator-max-microvolt = <1800000>;
418         regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */
419 };
420
421 &vaux3 {
422         regulator-name = "VMMC2_30";
423         regulator-min-microvolt = <2800000>;
424         regulator-max-microvolt = <3000000>;
425         regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */
426 };
427
428 &vaux4 {
429         regulator-name = "VCAM_ANA_28";
430         regulator-min-microvolt = <2800000>;
431         regulator-max-microvolt = <2800000>;
432         regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */
433 };
434
435 &vmmc1 {
436         regulator-name = "VMMC1";
437         regulator-min-microvolt = <1850000>;
438         regulator-max-microvolt = <3150000>;
439         regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */
440 };
441
442 &vmmc2 {
443         regulator-name = "V28_A";
444         regulator-min-microvolt = <2800000>;
445         regulator-max-microvolt = <3000000>;
446         regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */
447         regulator-always-on; /* due VIO leak to AIC34 VDDs */
448 };
449
450 &vpll1 {
451         regulator-name = "VPLL";
452         regulator-min-microvolt = <1800000>;
453         regulator-max-microvolt = <1800000>;
454         regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */
455         regulator-always-on;
456 };
457
458 &vpll2 {
459         regulator-name = "VSDI_CSI";
460         regulator-min-microvolt = <1800000>;
461         regulator-max-microvolt = <1800000>;
462         regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */
463         regulator-always-on;
464 };
465
466 &vsim {
467         regulator-name = "VMMC2_IO_18";
468         regulator-min-microvolt = <1800000>;
469         regulator-max-microvolt = <1800000>;
470         regulator-initial-mode = <0x0e>; /* RES_STATE_ACTIVE */
471 };
472
473 &vio {
474         regulator-name = "VIO";
475         regulator-min-microvolt = <1800000>;
476         regulator-max-microvolt = <1800000>;
477 };
478
479 &vintana1 {
480         regulator-name = "VINTANA1";
481         /* fixed to 1500000 */
482         regulator-always-on;
483 };
484
485 &vintana2 {
486         regulator-name = "VINTANA2";
487         regulator-min-microvolt = <2750000>;
488         regulator-max-microvolt = <2750000>;
489         regulator-always-on;
490 };
491
492 &vintdig {
493         regulator-name = "VINTDIG";
494         /* fixed to 1500000 */
495         regulator-always-on;
496 };
497
498 /* First two dma channels are reserved on secure omap3 */
499 &sdma {
500         dma-channel-mask = <0xfffffffc>;
501 };
502
503 &twl {
504         twl_audio: audio {
505                 compatible = "ti,twl4030-audio";
506                 ti,enable-vibra = <1>;
507         };
508
509         twl_power: power {
510                 compatible = "ti,twl4030-power-n900", "ti,twl4030-power-idle-osc-off";
511                 ti,use_poweroff;
512         };
513 };
514
515 &twl_keypad {
516         linux,keymap = < MATRIX_KEY(0x00, 0x00, KEY_Q)
517                          MATRIX_KEY(0x00, 0x01, KEY_O)
518                          MATRIX_KEY(0x00, 0x02, KEY_P)
519                          MATRIX_KEY(0x00, 0x03, KEY_COMMA)
520                          MATRIX_KEY(0x00, 0x04, KEY_BACKSPACE)
521                          MATRIX_KEY(0x00, 0x06, KEY_A)
522                          MATRIX_KEY(0x00, 0x07, KEY_S)
523
524                          MATRIX_KEY(0x01, 0x00, KEY_W)
525                          MATRIX_KEY(0x01, 0x01, KEY_D)
526                          MATRIX_KEY(0x01, 0x02, KEY_F)
527                          MATRIX_KEY(0x01, 0x03, KEY_G)
528                          MATRIX_KEY(0x01, 0x04, KEY_H)
529                          MATRIX_KEY(0x01, 0x05, KEY_J)
530                          MATRIX_KEY(0x01, 0x06, KEY_K)
531                          MATRIX_KEY(0x01, 0x07, KEY_L)
532
533                          MATRIX_KEY(0x02, 0x00, KEY_E)
534                          MATRIX_KEY(0x02, 0x01, KEY_DOT)
535                          MATRIX_KEY(0x02, 0x02, KEY_UP)
536                          MATRIX_KEY(0x02, 0x03, KEY_ENTER)
537                          MATRIX_KEY(0x02, 0x05, KEY_Z)
538                          MATRIX_KEY(0x02, 0x06, KEY_X)
539                          MATRIX_KEY(0x02, 0x07, KEY_C)
540                          MATRIX_KEY(0x02, 0x08, KEY_F9)
541
542                          MATRIX_KEY(0x03, 0x00, KEY_R)
543                          MATRIX_KEY(0x03, 0x01, KEY_V)
544                          MATRIX_KEY(0x03, 0x02, KEY_B)
545                          MATRIX_KEY(0x03, 0x03, KEY_N)
546                          MATRIX_KEY(0x03, 0x04, KEY_M)
547                          MATRIX_KEY(0x03, 0x05, KEY_SPACE)
548                          MATRIX_KEY(0x03, 0x06, KEY_SPACE)
549                          MATRIX_KEY(0x03, 0x07, KEY_LEFT)
550
551                          MATRIX_KEY(0x04, 0x00, KEY_T)
552                          MATRIX_KEY(0x04, 0x01, KEY_DOWN)
553                          MATRIX_KEY(0x04, 0x02, KEY_RIGHT)
554                          MATRIX_KEY(0x04, 0x04, KEY_LEFTCTRL)
555                          MATRIX_KEY(0x04, 0x05, KEY_RIGHTALT)
556                          MATRIX_KEY(0x04, 0x06, KEY_LEFTSHIFT)
557                          MATRIX_KEY(0x04, 0x08, KEY_F10)
558
559                          MATRIX_KEY(0x05, 0x00, KEY_Y)
560                          MATRIX_KEY(0x05, 0x08, KEY_F11)
561
562                          MATRIX_KEY(0x06, 0x00, KEY_U)
563
564                          MATRIX_KEY(0x07, 0x00, KEY_I)
565                          MATRIX_KEY(0x07, 0x01, KEY_F7)
566                          MATRIX_KEY(0x07, 0x02, KEY_F8)
567                          >;
568 };
569
570 &twl_gpio {
571         ti,pullups = <0x0>;
572         ti,pulldowns = <0x03ff3f>; /* BIT(0..5) | BIT(8..17) */
573 };
574
575 &i2c2 {
576         pinctrl-names = "default";
577         pinctrl-0 = <&i2c2_pins>;
578
579         clock-frequency = <100000>;
580
581         tlv320aic3x: tlv320aic3x@18 {
582                 compatible = "ti,tlv320aic3x";
583                 reg = <0x18>;
584                 reset-gpios = <&gpio2 28 GPIO_ACTIVE_LOW>; /* 60 */
585                 ai3x-gpio-func = <
586                         0 /* AIC3X_GPIO1_FUNC_DISABLED */
587                         5 /* AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT */
588                 >;
589
590                 AVDD-supply = <&vmmc2>;
591                 DRVDD-supply = <&vmmc2>;
592                 IOVDD-supply = <&vio>;
593                 DVDD-supply = <&vio>;
594
595                 ai3x-micbias-vg = <1>;
596         };
597
598         tlv320aic3x_aux: tlv320aic3x@19 {
599                 compatible = "ti,tlv320aic3x";
600                 reg = <0x19>;
601                 reset-gpios = <&gpio2 28 GPIO_ACTIVE_LOW>; /* 60 */
602
603                 AVDD-supply = <&vmmc2>;
604                 DRVDD-supply = <&vmmc2>;
605                 IOVDD-supply = <&vio>;
606                 DVDD-supply = <&vio>;
607
608                 ai3x-micbias-vg = <2>;
609         };
610
611         tsl2563: tsl2563@29 {
612                 compatible = "amstaos,tsl2563";
613                 reg = <0x29>;
614
615                 amstaos,cover-comp-gain = <16>;
616         };
617
618         adp1653: led-controller@30 {
619                 compatible = "adi,adp1653";
620                 reg = <0x30>;
621                 enable-gpios = <&gpio3 24 GPIO_ACTIVE_HIGH>; /* 88 */
622
623                 flash {
624                         flash-timeout-us = <500000>;
625                         flash-max-microamp = <320000>;
626                         led-max-microamp = <50000>;
627                 };
628                 indicator {
629                         led-max-microamp = <17500>;
630                 };
631         };
632
633         lp5523: lp5523@32 {
634                 #address-cells = <1>;
635                 #size-cells = <0>;
636                 compatible = "national,lp5523";
637                 reg = <0x32>;
638                 clock-mode = /bits/ 8 <0>; /* LP55XX_CLOCK_AUTO */
639                 enable-gpios = <&gpio2 9 GPIO_ACTIVE_HIGH>; /* 41 */
640
641                 led@0 {
642                         reg = <0>;
643                         chan-name = "lp5523:kb1";
644                         led-cur = /bits/ 8 <50>;
645                         max-cur = /bits/ 8 <100>;
646                         color = <LED_COLOR_ID_WHITE>;
647                         function = LED_FUNCTION_KBD_BACKLIGHT;
648                 };
649
650                 led@1 {
651                         reg = <1>;
652                         chan-name = "lp5523:kb2";
653                         led-cur = /bits/ 8 <50>;
654                         max-cur = /bits/ 8 <100>;
655                         color = <LED_COLOR_ID_WHITE>;
656                         function = LED_FUNCTION_KBD_BACKLIGHT;
657                 };
658
659                 led@2 {
660                         reg = <2>;
661                         chan-name = "lp5523:kb3";
662                         led-cur = /bits/ 8 <50>;
663                         max-cur = /bits/ 8 <100>;
664                         color = <LED_COLOR_ID_WHITE>;
665                         function = LED_FUNCTION_KBD_BACKLIGHT;
666                 };
667
668                 led@3 {
669                         reg = <3>;
670                         chan-name = "lp5523:kb4";
671                         led-cur = /bits/ 8 <50>;
672                         max-cur = /bits/ 8 <100>;
673                         color = <LED_COLOR_ID_WHITE>;
674                         function = LED_FUNCTION_KBD_BACKLIGHT;
675                 };
676
677                 led@4 {
678                         reg = <4>;
679                         chan-name = "lp5523:b";
680                         led-cur = /bits/ 8 <50>;
681                         max-cur = /bits/ 8 <100>;
682                         color = <LED_COLOR_ID_BLUE>;
683                         function = LED_FUNCTION_STATUS;
684                 };
685
686                 led@5 {
687                         reg = <5>;
688                         chan-name = "lp5523:g";
689                         led-cur = /bits/ 8 <50>;
690                         max-cur = /bits/ 8 <100>;
691                         color = <LED_COLOR_ID_GREEN>;
692                         function = LED_FUNCTION_STATUS;
693                 };
694
695                 led@6 {
696                         reg = <6>;
697                         chan-name = "lp5523:r";
698                         led-cur = /bits/ 8 <50>;
699                         max-cur = /bits/ 8 <100>;
700                         color = <LED_COLOR_ID_RED>;
701                         function = LED_FUNCTION_STATUS;
702                 };
703
704                 led@7 {
705                         reg = <7>;
706                         chan-name = "lp5523:kb5";
707                         led-cur = /bits/ 8 <50>;
708                         max-cur = /bits/ 8 <100>;
709                         color = <LED_COLOR_ID_WHITE>;
710                         function = LED_FUNCTION_KBD_BACKLIGHT;
711                 };
712
713                 led@8 {
714                         reg = <8>;
715                         chan-name = "lp5523:kb6";
716                         led-cur = /bits/ 8 <50>;
717                         max-cur = /bits/ 8 <100>;
718                         color = <LED_COLOR_ID_WHITE>;
719                         function = LED_FUNCTION_KBD_BACKLIGHT;
720                 };
721         };
722
723         bq27200: bq27200@55 {
724                 compatible = "ti,bq27200";
725                 reg = <0x55>;
726                 power-supplies = <&bq24150a>;
727         };
728
729         /* Stereo headphone amplifier */
730         tpa6130a2: tpa6130a2@60 {
731                 compatible = "ti,tpa6130a2";
732                 reg = <0x60>;
733
734                 Vdd-supply = <&vmmc2>;
735
736                 power-gpio = <&gpio4 2 GPIO_ACTIVE_HIGH>; /* 98 */
737         };
738
739         si4713: si4713@63 {
740                 compatible = "silabs,si4713";
741                 reg = <0x63>;
742
743                 interrupts-extended = <&gpio2 21 IRQ_TYPE_EDGE_FALLING>; /* 53 */
744                 reset-gpios = <&gpio6 3 GPIO_ACTIVE_HIGH>; /* 163 */
745                 vio-supply = <&vio>;
746                 vdd-supply = <&vaux1>;
747         };
748
749         bq24150a: bq24150a@6b {
750                 compatible = "ti,bq24150a";
751                 reg = <0x6b>;
752
753                 ti,current-limit = <100>;
754                 ti,weak-battery-voltage = <3400>;
755                 ti,battery-regulation-voltage = <4200>;
756                 ti,charge-current = <650>;
757                 ti,termination-current = <100>;
758                 ti,resistor-sense = <68>;
759
760                 ti,usb-charger-detection = <&isp1707>;
761         };
762 };
763
764 &i2c3 {
765         pinctrl-names = "default";
766         pinctrl-0 = <&i2c3_pins>;
767
768         clock-frequency = <400000>;
769
770         lis302dl: lis3lv02d@1d {
771                 compatible = "st,lis3lv02d";
772                 reg = <0x1d>;
773
774                 Vdd-supply = <&vaux1>;
775                 Vdd_IO-supply = <&vio>;
776
777                 interrupt-parent = <&gpio6>;
778                 interrupts = <21 20>; /* 181 and 180 */
779
780                 /* click flags */
781                 st,click-single-x;
782                 st,click-single-y;
783                 st,click-single-z;
784
785                 /* Limits are 0.5g * value */
786                 st,click-threshold-x = <8>;
787                 st,click-threshold-y = <8>;
788                 st,click-threshold-z = <10>;
789
790                 /* Click must be longer than time limit */
791                 st,click-time-limit = <9>;
792
793                 /* Kind of debounce filter */
794                 st,click-latency = <50>;
795
796                 /* Interrupt line 2 for click detection */
797                 st,irq2-click;
798
799                 st,wakeup-x-hi;
800                 st,wakeup-y-hi;
801                 st,wakeup-threshold = <(800/18)>; /* millig-value / 18 to get HW values */
802
803                 st,wakeup2-z-hi;
804                 st,wakeup2-threshold = <(900/18)>; /* millig-value / 18 to get HW values */
805
806                 st,hipass1-disable;
807                 st,hipass2-disable;
808
809                 st,axis-x = <1>;    /* LIS3_DEV_X */
810                 st,axis-y = <(-2)>; /* LIS3_INV_DEV_Y */
811                 st,axis-z = <(-3)>; /* LIS3_INV_DEV_Z */
812
813                 st,min-limit-x = <(-32)>;
814                 st,min-limit-y = <3>;
815                 st,min-limit-z = <3>;
816
817                 st,max-limit-x = <(-3)>;
818                 st,max-limit-y = <32>;
819                 st,max-limit-z = <32>;
820         };
821
822         cam1: camera@3e {
823                 compatible = "toshiba,et8ek8";
824                 reg = <0x3e>;
825
826                 vana-supply = <&vaux4>;
827
828                 clocks = <&isp 0>;
829                 clock-names = "extclk";
830                 clock-frequency = <9600000>;
831
832                 reset-gpio = <&gpio4 6 GPIO_ACTIVE_HIGH>; /* 102 */
833
834                 lens-focus = <&ad5820>;
835
836                 port {
837                         csi_cam1: endpoint {
838                                 bus-type = <3>; /* CCP2 */
839                                 strobe = <1>;
840                                 clock-inv = <0>;
841                                 crc = <1>;
842
843                                 remote-endpoint = <&csi_isp>;
844                         };
845                 };
846         };
847
848         /* D/A converter for auto-focus */
849         ad5820: dac@c {
850                 compatible = "adi,ad5820";
851                 reg = <0x0c>;
852
853                 VANA-supply = <&vaux4>;
854
855                 #io-channel-cells = <0>;
856         };
857 };
858
859 &mmc1 {
860         pinctrl-names = "default";
861         pinctrl-0 = <&mmc1_pins>;
862         vmmc-supply = <&vmmc1>;
863         bus-width = <4>;
864 };
865
866 /* most boards use vaux3, only some old versions use vmmc2 instead */
867 &mmc2 {
868         pinctrl-names = "default";
869         pinctrl-0 = <&mmc2_pins>;
870         vmmc-supply = <&vaux3>;
871         vqmmc-supply = <&vsim>;
872         bus-width = <8>;
873         non-removable;
874         no-sdio;
875         no-sd;
876 };
877
878 &mmc3 {
879         status = "disabled";
880 };
881
882 &gpmc {
883         ranges = <0 0 0x01000000 0x01000000>,   /* 16 MB for OneNAND */
884                  <1 0 0x02000000 0x01000000>;   /* 16 MB for smc91c96 */
885         pinctrl-names = "default";
886         pinctrl-0 = <&gpmc_pins>;
887
888         /* sys_ndmareq1 could be used by the driver, not as gpio65 though */
889         onenand@0,0 {
890                 #address-cells = <1>;
891                 #size-cells = <1>;
892                 compatible = "ti,omap2-onenand";
893                 reg = <0 0 0x20000>;    /* CS0, offset 0, IO size 128K */
894
895                 /*
896                  * These timings are based on CONFIG_OMAP_GPMC_DEBUG=y reported
897                  * bootloader set values when booted with v5.1
898                  * (OneNAND Manufacturer: Samsung):
899                  *
900                  *   cs0 GPMC_CS_CONFIG1: 0xfb001202
901                  *   cs0 GPMC_CS_CONFIG2: 0x00111100
902                  *   cs0 GPMC_CS_CONFIG3: 0x00020200
903                  *   cs0 GPMC_CS_CONFIG4: 0x11001102
904                  *   cs0 GPMC_CS_CONFIG5: 0x03101616
905                  *   cs0 GPMC_CS_CONFIG6: 0x90060000
906                  */
907                 gpmc,sync-read;
908                 gpmc,sync-write;
909                 gpmc,burst-length = <16>;
910                 gpmc,burst-read;
911                 gpmc,burst-wrap;
912                 gpmc,burst-write;
913                 gpmc,device-width = <2>;
914                 gpmc,mux-add-data = <2>;
915                 gpmc,cs-on-ns = <0>;
916                 gpmc,cs-rd-off-ns = <102>;
917                 gpmc,cs-wr-off-ns = <102>;
918                 gpmc,adv-on-ns = <0>;
919                 gpmc,adv-rd-off-ns = <12>;
920                 gpmc,adv-wr-off-ns = <12>;
921                 gpmc,oe-on-ns = <12>;
922                 gpmc,oe-off-ns = <102>;
923                 gpmc,we-on-ns = <0>;
924                 gpmc,we-off-ns = <102>;
925                 gpmc,rd-cycle-ns = <132>;
926                 gpmc,wr-cycle-ns = <132>;
927                 gpmc,access-ns = <96>;
928                 gpmc,page-burst-access-ns = <18>;
929                 gpmc,bus-turnaround-ns = <0>;
930                 gpmc,cycle2cycle-delay-ns = <0>;
931                 gpmc,wait-monitoring-ns = <0>;
932                 gpmc,clk-activation-ns = <6>;
933                 gpmc,wr-data-mux-bus-ns = <36>;
934                 gpmc,wr-access-ns = <96>;
935                 gpmc,sync-clk-ps = <15000>;
936
937                 /*
938                  * MTD partition table corresponding to Nokia's
939                  * Maemo 5 (Fremantle) release.
940                  */
941                 partition@0 {
942                         label = "bootloader";
943                         reg = <0x00000000 0x00020000>;
944                         read-only;
945                 };
946                 partition@1 {
947                         label = "config";
948                         reg = <0x00020000 0x00060000>;
949                 };
950                 partition@2 {
951                         label = "log";
952                         reg = <0x00080000 0x00040000>;
953                 };
954                 partition@3 {
955                         label = "kernel";
956                         reg = <0x000c0000 0x00200000>;
957                 };
958                 partition@4 {
959                         label = "initfs";
960                         reg = <0x002c0000 0x00200000>;
961                 };
962                 partition@5 {
963                         label = "rootfs";
964                         reg = <0x004c0000 0x0fb40000>;
965                 };
966         };
967
968         /* Ethernet is on some early development boards and qemu */
969         ethernet@gpmc {
970                 compatible = "smsc,lan91c94";
971                 interrupt-parent = <&gpio2>;
972                 interrupts = <22 IRQ_TYPE_LEVEL_HIGH>;  /* gpio54 */
973                 reg = <1 0 0xf>;                /* 16 byte IO range */
974                 bank-width = <2>;
975                 pinctrl-names = "default";
976                 pinctrl-0 = <&ethernet_pins>;
977                 power-gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>;     /* gpio86 */
978                 reset-gpios = <&gpio6 4 GPIO_ACTIVE_HIGH>;      /* gpio164 */
979                 gpmc,device-width = <2>;
980                 gpmc,sync-clk-ps = <0>;
981                 gpmc,cs-on-ns = <0>;
982                 gpmc,cs-rd-off-ns = <48>;
983                 gpmc,cs-wr-off-ns = <24>;
984                 gpmc,adv-on-ns = <0>;
985                 gpmc,adv-rd-off-ns = <0>;
986                 gpmc,adv-wr-off-ns = <0>;
987                 gpmc,we-on-ns = <12>;
988                 gpmc,we-off-ns = <18>;
989                 gpmc,oe-on-ns = <12>;
990                 gpmc,oe-off-ns = <48>;
991                 gpmc,page-burst-access-ns = <0>;
992                 gpmc,access-ns = <42>;
993                 gpmc,rd-cycle-ns = <180>;
994                 gpmc,wr-cycle-ns = <180>;
995                 gpmc,bus-turnaround-ns = <0>;
996                 gpmc,cycle2cycle-delay-ns = <0>;
997                 gpmc,wait-monitoring-ns = <0>;
998                 gpmc,clk-activation-ns = <0>;
999                 gpmc,wr-access-ns = <0>;
1000                 gpmc,wr-data-mux-bus-ns = <12>;
1001         };
1002 };
1003
1004 &mcspi1 {
1005         /*
1006          * For some reason, touchscreen is necessary for screen to work at
1007          * all on real hw. It works well without it on emulator.
1008          *
1009          * Also... order in the device tree actually matters here.
1010          */
1011         tsc2005@0 {
1012                 compatible = "ti,tsc2005";
1013                 spi-max-frequency = <6000000>;
1014                 reg = <0>;
1015
1016                 vio-supply = <&vio>;
1017
1018                 reset-gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>; /* 104 */
1019                 interrupts-extended = <&gpio4 4 IRQ_TYPE_EDGE_RISING>; /* 100 */
1020
1021                 touchscreen-fuzz-x = <4>;
1022                 touchscreen-fuzz-y = <7>;
1023                 touchscreen-fuzz-pressure = <2>;
1024                 touchscreen-size-x = <4096>;
1025                 touchscreen-size-y = <4096>;
1026                 touchscreen-max-pressure = <2048>;
1027
1028                 ti,x-plate-ohms = <280>;
1029                 ti,esd-recovery-timeout-ms = <8000>;
1030         };
1031
1032         lcd: acx565akm@2 {
1033                 compatible = "sony,acx565akm";
1034                 spi-max-frequency = <6000000>;
1035                 reg = <2>;
1036
1037                 pinctrl-names = "default";
1038                 pinctrl-0 = <&acx565akm_pins>;
1039
1040                 label = "lcd";
1041                 reset-gpios = <&gpio3 26 GPIO_ACTIVE_HIGH>; /* 90 */
1042
1043                 port {
1044                         lcd_in: endpoint {
1045                                 remote-endpoint = <&sdi_out>;
1046                         };
1047                 };
1048         };
1049 };
1050
1051 &mcspi4 {
1052         pinctrl-names = "default";
1053         pinctrl-0 = <&mcspi4_pins>;
1054
1055         wl1251@0 {
1056                 pinctrl-names = "default";
1057                 pinctrl-0 = <&wl1251_pins>;
1058
1059                 vio-supply = <&vio>;
1060
1061                 compatible = "ti,wl1251";
1062                 reg = <0>;
1063                 spi-max-frequency = <48000000>;
1064
1065                 spi-cpol;
1066                 spi-cpha;
1067
1068                 ti,power-gpio = <&gpio3 23 GPIO_ACTIVE_HIGH>; /* 87 */
1069
1070                 interrupt-parent = <&gpio2>;
1071                 interrupts = <10 IRQ_TYPE_NONE>; /* gpio line 42 */
1072
1073                 clocks = <&vctcxo>;
1074         };
1075 };
1076
1077 /* RNG not directly accessible on n900, see omap3-rom-rng instead */
1078 &rng_target {
1079         status = "disabled";
1080 };
1081
1082 &usb_otg_hs {
1083         interface-type = <0>;
1084         usb-phy = <&usb2_phy>;
1085         phys = <&usb2_phy>;
1086         phy-names = "usb2-phy";
1087         mode = <2>;
1088         power = <50>;
1089 };
1090
1091 &uart1 {
1092         status = "disabled";
1093 };
1094
1095 &uart2 {
1096         pinctrl-names = "default";
1097         pinctrl-0 = <&uart2_pins>;
1098
1099         bcm2048: bluetooth {
1100                 compatible = "brcm,bcm2048-nokia", "nokia,h4p-bluetooth";
1101                 reset-gpios = <&gpio3 27 GPIO_ACTIVE_LOW>; /* 91 */
1102                 host-wakeup-gpios = <&gpio4 5 GPIO_ACTIVE_HIGH>; /* 101 */
1103                 bluetooth-wakeup-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; /* 37 */
1104                 clocks = <&vctcxo>;
1105                 clock-names = "sysclk";
1106         };
1107 };
1108
1109 &uart3 {
1110         interrupts-extended = <&intc 74 &omap3_pmx_core OMAP3_UART3_RX>;
1111         pinctrl-names = "default";
1112         pinctrl-0 = <&uart3_pins>;
1113 };
1114
1115 &dss {
1116         status = "okay";
1117
1118         pinctrl-names = "default";
1119         pinctrl-0 = <&dss_sdi_pins>;
1120
1121         vdds_sdi-supply = <&vaux1>;
1122
1123         ports {
1124                 #address-cells = <1>;
1125                 #size-cells = <0>;
1126
1127                 port@1 {
1128                         reg = <1>;
1129
1130                         sdi_out: endpoint {
1131                                 remote-endpoint = <&lcd_in>;
1132                                 datapairs = <2>;
1133                         };
1134                 };
1135         };
1136 };
1137
1138 &venc {
1139         status = "okay";
1140
1141         vdda-supply = <&vdac>;
1142
1143         port {
1144                 venc_out: endpoint {
1145                         remote-endpoint = <&tv_connector_in>;
1146                         ti,channels = <1>;
1147                 };
1148         };
1149 };
1150
1151 &mcbsp2 {
1152         status = "okay";
1153 };
1154
1155 &ssi_port1 {
1156         pinctrl-names = "default";
1157         pinctrl-0 = <&ssi_pins>;
1158
1159         ti,ssi-cawake-gpio = <&gpio5 23 GPIO_ACTIVE_HIGH>; /* 151 */
1160
1161         modem: hsi-client {
1162                 compatible = "nokia,n900-modem";
1163
1164                 pinctrl-names = "default";
1165                 pinctrl-0 = <&modem_pins>;
1166
1167                 hsi-channel-ids = <0>, <1>, <2>, <3>;
1168                 hsi-channel-names = "mcsaab-control",
1169                                     "speech-control",
1170                                     "speech-data",
1171                                     "mcsaab-data";
1172                 hsi-speed-kbps = <55000>;
1173                 hsi-mode = "frame";
1174                 hsi-flow = "synchronized";
1175                 hsi-arb-mode = "round-robin";
1176
1177                 interrupts-extended = <&gpio3 8 IRQ_TYPE_EDGE_FALLING>; /* 72 */
1178
1179                 gpios = <&gpio3  6 GPIO_ACTIVE_HIGH>, /* 70 */
1180                         <&gpio3  9 GPIO_ACTIVE_HIGH>, /* 73 */
1181                         <&gpio3 10 GPIO_ACTIVE_HIGH>, /* 74 */
1182                         <&gpio3 11 GPIO_ACTIVE_HIGH>, /* 75 */
1183                         <&gpio5 29 GPIO_ACTIVE_HIGH>; /* 157 */
1184                 gpio-names = "cmt_apeslpx",
1185                              "cmt_rst_rq",
1186                              "cmt_en",
1187                              "cmt_rst",
1188                              "cmt_bsi";
1189         };
1190 };
1191
1192 &ssi_port2 {
1193         status = "disabled";
1194 };