]>
Commit | Line | Data |
---|---|---|
7e2f8c0a TL |
1 | /* |
2 | * This program is free software; you can redistribute it and/or modify | |
3 | * it under the terms of the GNU General Public License version 2 as | |
4 | * published by the Free Software Foundation. | |
5 | */ | |
6 | /dts-v1/; | |
7 | ||
59e1a4af | 8 | #include <dt-bindings/input/input.h> |
7e2f8c0a | 9 | #include "omap443x.dtsi" |
0d4cb3cc | 10 | #include "motorola-cpcap-mapphone.dtsi" |
7e2f8c0a TL |
11 | |
12 | / { | |
13 | model = "Motorola Droid 4 XT894"; | |
14 | compatible = "motorola,droid4", "ti,omap4430", "ti,omap4"; | |
15 | ||
16 | chosen { | |
17 | stdout-path = &uart3; | |
18 | }; | |
19 | ||
d9bed144 TL |
20 | aliases { |
21 | display0 = &lcd0; | |
22 | display1 = &hdmi0; | |
23 | }; | |
24 | ||
7e2f8c0a TL |
25 | /* |
26 | * We seem to have only 1021 MB accessible, 1021 - 1022 is locked, | |
22d65342 | 27 | * then 1023 - 1024 seems to contain mbm. |
7e2f8c0a TL |
28 | */ |
29 | memory { | |
30 | device_type = "memory"; | |
31 | reg = <0x80000000 0x3fd00000>; /* 1021 MB */ | |
32 | }; | |
33 | ||
9946f937 TL |
34 | /* Poweroff GPIO probably connected to CPCAP */ |
35 | gpio-poweroff { | |
36 | compatible = "gpio-poweroff"; | |
37 | pinctrl-0 = <&poweroff_gpio>; | |
38 | pinctrl-names = "default"; | |
39 | gpios = <&gpio2 18 GPIO_ACTIVE_LOW>; /* gpio50 */ | |
40 | }; | |
41 | ||
50cdcc0b TL |
42 | hdmi0: connector { |
43 | compatible = "hdmi-connector"; | |
44 | pinctrl-0 = <&hdmi_hpd_gpio>; | |
45 | pinctrl-names = "default"; | |
46 | label = "hdmi"; | |
47 | type = "d"; | |
48 | ||
49 | hpd-gpios = <&gpio2 31 GPIO_ACTIVE_HIGH>; /* gpio63 */ | |
50 | ||
51 | port { | |
52 | hdmi_connector_in: endpoint { | |
53 | remote-endpoint = <&hdmi_out>; | |
54 | }; | |
55 | }; | |
56 | }; | |
57 | ||
58 | /* | |
59 | * HDMI 5V regulator probably sourced from battery. Let's keep | |
60 | * keep this as always enabled for HDMI to work until we've | |
61 | * figured what the encoder chip is. | |
62 | */ | |
63 | hdmi_regulator: regulator-hdmi { | |
64 | compatible = "regulator-fixed"; | |
65 | regulator-name = "hdmi"; | |
66 | regulator-min-microvolt = <5000000>; | |
67 | regulator-max-microvolt = <5000000>; | |
68 | gpio = <&gpio2 27 GPIO_ACTIVE_HIGH>; /* gpio59 */ | |
69 | enable-active-high; | |
70 | regulator-always-on; | |
71 | }; | |
72 | ||
7a9b2484 TL |
73 | /* HS USB Host PHY on PORT 1 */ |
74 | hsusb1_phy: hsusb1_phy { | |
75 | compatible = "usb-nop-xceiv"; | |
f568f6f5 | 76 | #phy-cells = <0>; |
7a9b2484 TL |
77 | }; |
78 | ||
d9bed144 TL |
79 | /* LCD regulator from sw5 source */ |
80 | lcd_regulator: regulator-lcd { | |
81 | compatible = "regulator-fixed"; | |
82 | regulator-name = "lcd"; | |
83 | regulator-min-microvolt = <5050000>; | |
84 | regulator-max-microvolt = <5050000>; | |
85 | gpio = <&gpio4 0 GPIO_ACTIVE_HIGH>; /* gpio96 */ | |
86 | enable-active-high; | |
87 | vin-supply = <&sw5>; | |
88 | }; | |
89 | ||
0d4cb3cc | 90 | /* This is probably coming straight from the battery.. */ |
7e2f8c0a TL |
91 | wl12xx_vmmc: regulator-wl12xx { |
92 | compatible = "regulator-fixed"; | |
93 | regulator-name = "vwl1271"; | |
94 | regulator-min-microvolt = <1650000>; | |
95 | regulator-max-microvolt = <1650000>; | |
96 | gpio = <&gpio3 30 GPIO_ACTIVE_HIGH>; /* gpio94 */ | |
97 | startup-delay-us = <70000>; | |
98 | enable-active-high; | |
99 | }; | |
5937a55c SR |
100 | |
101 | gpio_keys { | |
102 | compatible = "gpio-keys"; | |
103 | ||
104 | volume_down { | |
105 | label = "Volume Down"; | |
106 | gpios = <&gpio5 26 GPIO_ACTIVE_LOW>; /* gpio154 */ | |
107 | linux,code = <KEY_VOLUMEDOWN>; | |
108 | linux,can-disable; | |
109 | }; | |
110 | ||
111 | slider { | |
112 | label = "Keypad Slide"; | |
113 | gpios = <&gpio4 26 GPIO_ACTIVE_HIGH>; /* gpio122 */ | |
114 | linux,input-type = <EV_SW>; | |
115 | linux,code = <SW_KEYPAD_SLIDE>; | |
116 | linux,can-disable; | |
117 | ||
118 | }; | |
119 | }; | |
7e2f8c0a TL |
120 | }; |
121 | ||
50cdcc0b TL |
122 | &dss { |
123 | status = "okay"; | |
124 | }; | |
125 | ||
0526364c TL |
126 | &gpio6 { |
127 | touchscreen_reset { | |
128 | gpio-hog; | |
129 | gpios = <13 0>; | |
130 | output-high; | |
131 | line-name = "touchscreen-reset"; | |
132 | }; | |
a5effd96 SR |
133 | |
134 | pwm8: dmtimer-pwm-8 { | |
135 | pinctrl-names = "default"; | |
136 | pinctrl-0 = <&vibrator_direction_pin>; | |
137 | ||
138 | compatible = "ti,omap-dmtimer-pwm"; | |
139 | #pwm-cells = <3>; | |
140 | ti,timers = <&timer8>; | |
141 | ti,clock-source = <0x01>; | |
142 | }; | |
143 | ||
144 | pwm9: dmtimer-pwm-9 { | |
145 | pinctrl-names = "default"; | |
146 | pinctrl-0 = <&vibrator_enable_pin>; | |
147 | ||
148 | compatible = "ti,omap-dmtimer-pwm"; | |
149 | #pwm-cells = <3>; | |
150 | ti,timers = <&timer9>; | |
151 | ti,clock-source = <0x01>; | |
152 | }; | |
153 | ||
154 | vibrator { | |
155 | compatible = "pwm-vibrator"; | |
156 | pwms = <&pwm9 0 10000000 0>, <&pwm8 0 10000000 0>; | |
157 | pwm-names = "enable", "direction"; | |
158 | direction-duty-cycle-ns = <10000000>; | |
159 | }; | |
160 | ||
0526364c TL |
161 | }; |
162 | ||
d9bed144 TL |
163 | &dsi1 { |
164 | status = "okay"; | |
165 | vdd-supply = <&vcsi>; | |
166 | ||
167 | port { | |
168 | dsi1_out_ep: endpoint { | |
169 | remote-endpoint = <&lcd0_in>; | |
170 | lanes = <0 1 2 3 4 5>; | |
171 | }; | |
172 | }; | |
173 | ||
174 | lcd0: display { | |
175 | compatible = "panel-dsi-cm"; | |
176 | label = "lcd0"; | |
177 | vddi-supply = <&lcd_regulator>; | |
178 | reset-gpios = <&gpio4 5 GPIO_ACTIVE_HIGH>; /* gpio101 */ | |
179 | ||
180 | panel-timing { | |
181 | clock-frequency = <0>; /* Calculated by dsi */ | |
182 | ||
183 | hback-porch = <2>; | |
184 | hactive = <540>; | |
185 | hfront-porch = <0>; | |
186 | hsync-len = <2>; | |
187 | ||
188 | vback-porch = <1>; | |
189 | vactive = <960>; | |
190 | vfront-porch = <0>; | |
191 | vsync-len = <1>; | |
192 | ||
193 | hsync-active = <0>; | |
194 | vsync-active = <0>; | |
195 | de-active = <1>; | |
196 | pixelclk-active = <1>; | |
197 | }; | |
198 | ||
199 | port { | |
200 | lcd0_in: endpoint { | |
201 | remote-endpoint = <&dsi1_out_ep>; | |
202 | }; | |
203 | }; | |
204 | }; | |
205 | }; | |
206 | ||
50cdcc0b TL |
207 | &hdmi { |
208 | status = "okay"; | |
209 | pinctrl-0 = <&dss_hdmi_pins>; | |
210 | pinctrl-names = "default"; | |
211 | vdda-supply = <&vdac>; | |
212 | ||
213 | port { | |
214 | hdmi_out: endpoint { | |
215 | remote-endpoint = <&hdmi_connector_in>; | |
216 | lanes = <1 0 3 2 5 4 7 6>; | |
217 | }; | |
218 | }; | |
219 | }; | |
220 | ||
fdec8edb TL |
221 | &i2c1 { |
222 | tmp105@48 { | |
223 | compatible = "ti,tmp105"; | |
224 | reg = <0x48>; | |
225 | pinctrl-0 = <&tmp105_irq>; | |
226 | pinctrl-names = "default"; | |
227 | /* kpd_row0.gpio_178 */ | |
228 | interrupts-extended = <&gpio6 18 IRQ_TYPE_EDGE_FALLING | |
229 | &omap4_pmx_core 0x14e>; | |
230 | interrupt-names = "irq", "wakeup"; | |
231 | wakeup-source; | |
232 | }; | |
233 | }; | |
234 | ||
59e1a4af TL |
235 | &keypad { |
236 | keypad,num-rows = <8>; | |
237 | keypad,num-columns = <8>; | |
238 | linux,keymap = < | |
239 | ||
240 | /* Row 1 */ | |
241 | MATRIX_KEY(0, 2, KEY_1) | |
242 | MATRIX_KEY(0, 6, KEY_2) | |
243 | MATRIX_KEY(2, 3, KEY_3) | |
244 | MATRIX_KEY(0, 7, KEY_4) | |
245 | MATRIX_KEY(0, 4, KEY_5) | |
246 | MATRIX_KEY(5, 5, KEY_6) | |
247 | MATRIX_KEY(0, 1, KEY_7) | |
248 | MATRIX_KEY(0, 5, KEY_8) | |
249 | MATRIX_KEY(0, 0, KEY_9) | |
250 | MATRIX_KEY(1, 6, KEY_0) | |
251 | ||
252 | /* Row 2 */ | |
253 | MATRIX_KEY(3, 4, KEY_APOSTROPHE) | |
254 | MATRIX_KEY(7, 6, KEY_Q) | |
255 | MATRIX_KEY(7, 7, KEY_W) | |
256 | MATRIX_KEY(7, 2, KEY_E) | |
257 | MATRIX_KEY(1, 0, KEY_R) | |
258 | MATRIX_KEY(4, 4, KEY_T) | |
259 | MATRIX_KEY(1, 2, KEY_Y) | |
260 | MATRIX_KEY(6, 7, KEY_U) | |
261 | MATRIX_KEY(2, 2, KEY_I) | |
262 | MATRIX_KEY(5, 6, KEY_O) | |
263 | MATRIX_KEY(3, 7, KEY_P) | |
264 | MATRIX_KEY(6, 5, KEY_BACKSPACE) | |
265 | ||
266 | /* Row 3 */ | |
267 | MATRIX_KEY(5, 4, KEY_TAB) | |
268 | MATRIX_KEY(5, 7, KEY_A) | |
269 | MATRIX_KEY(2, 7, KEY_S) | |
270 | MATRIX_KEY(7, 0, KEY_D) | |
271 | MATRIX_KEY(2, 6, KEY_F) | |
272 | MATRIX_KEY(6, 2, KEY_G) | |
273 | MATRIX_KEY(6, 6, KEY_H) | |
274 | MATRIX_KEY(1, 4, KEY_J) | |
275 | MATRIX_KEY(3, 1, KEY_K) | |
276 | MATRIX_KEY(2, 1, KEY_L) | |
277 | MATRIX_KEY(4, 6, KEY_ENTER) | |
278 | ||
279 | /* Row 4 */ | |
280 | MATRIX_KEY(3, 6, KEY_LEFTSHIFT) /* KEY_CAPSLOCK */ | |
281 | MATRIX_KEY(6, 1, KEY_Z) | |
282 | MATRIX_KEY(7, 4, KEY_X) | |
283 | MATRIX_KEY(5, 1, KEY_C) | |
284 | MATRIX_KEY(1, 7, KEY_V) | |
285 | MATRIX_KEY(2, 4, KEY_B) | |
286 | MATRIX_KEY(4, 1, KEY_N) | |
287 | MATRIX_KEY(1, 1, KEY_M) | |
288 | MATRIX_KEY(3, 5, KEY_COMMA) | |
289 | MATRIX_KEY(5, 2, KEY_DOT) | |
290 | MATRIX_KEY(6, 3, KEY_UP) | |
291 | MATRIX_KEY(7, 3, KEY_OK) | |
292 | ||
293 | /* Row 5 */ | |
294 | MATRIX_KEY(2, 5, KEY_LEFTCTRL) /* KEY_LEFTSHIFT */ | |
295 | MATRIX_KEY(4, 5, KEY_LEFTALT) /* SYM */ | |
296 | MATRIX_KEY(6, 0, KEY_MINUS) | |
297 | MATRIX_KEY(4, 7, KEY_EQUAL) | |
298 | MATRIX_KEY(1, 5, KEY_SPACE) | |
299 | MATRIX_KEY(3, 2, KEY_SLASH) | |
300 | MATRIX_KEY(4, 3, KEY_LEFT) | |
301 | MATRIX_KEY(5, 3, KEY_DOWN) | |
302 | MATRIX_KEY(3, 3, KEY_RIGHT) | |
303 | ||
304 | /* Side buttons, KEY_VOLUMEDOWN and KEY_PWER are on CPCAP? */ | |
305 | MATRIX_KEY(5, 0, KEY_VOLUMEUP) | |
306 | >; | |
307 | }; | |
308 | ||
7e2f8c0a | 309 | &mmc1 { |
26bfad63 | 310 | vmmc-supply = <&vwlan2>; |
7e2f8c0a | 311 | bus-width = <4>; |
26bfad63 | 312 | cd-gpios = <&gpio6 16 GPIO_ACTIVE_LOW>; /* gpio176 */ |
7e2f8c0a TL |
313 | }; |
314 | ||
315 | &mmc2 { | |
0d4cb3cc | 316 | vmmc-supply = <&vsdio>; |
7e2f8c0a | 317 | bus-width = <8>; |
304d5fa9 | 318 | ti,non-removable; |
7e2f8c0a TL |
319 | }; |
320 | ||
321 | &mmc3 { | |
322 | vmmc-supply = <&wl12xx_vmmc>; | |
323 | interrupts-extended = <&wakeupgen GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH | |
324 | &omap4_pmx_core 0xde>; | |
325 | ||
326 | non-removable; | |
327 | bus-width = <4>; | |
328 | cap-power-off-card; | |
329 | ||
330 | #address-cells = <1>; | |
331 | #size-cells = <0>; | |
332 | wlcore: wlcore@2 { | |
d809f2cc | 333 | compatible = "ti,wl1285", "ti,wl1283"; |
7e2f8c0a TL |
334 | reg = <2>; |
335 | interrupt-parent = <&gpio4>; | |
336 | interrupts = <4 IRQ_TYPE_LEVEL_HIGH>; /* gpio100 */ | |
337 | ref-clock-frequency = <26000000>; | |
338 | tcxo-clock-frequency = <26000000>; | |
339 | }; | |
340 | }; | |
341 | ||
771e4feb TL |
342 | &i2c1 { |
343 | lm3532@38 { | |
344 | compatible = "ti,lm3532"; | |
345 | reg = <0x38>; | |
346 | ||
347 | enable-gpios = <&gpio6 12 GPIO_ACTIVE_HIGH>; | |
348 | ||
349 | backlight { | |
350 | compatible = "ti,lm3532-backlight"; | |
351 | ||
352 | lcd { | |
353 | led-sources = <0 1 2>; | |
354 | ramp-up-msec = <1>; | |
355 | ramp-down-msec = <0>; | |
356 | }; | |
357 | }; | |
358 | }; | |
359 | }; | |
360 | ||
0526364c TL |
361 | /* |
362 | * REVISIT: Add gpio173 reset pin handling to the driver, see gpio-hog above. | |
363 | * If the GPIO reset is used, we probably need to have /lib/firmware/maxtouch.fw | |
364 | * available. See "mxt-app" and "droid4-touchscreen-firmware" tools for more | |
365 | * information. | |
366 | */ | |
367 | &i2c2 { | |
368 | tsp@4a { | |
369 | compatible = "atmel,maxtouch"; | |
370 | reg = <0x4a>; | |
371 | pinctrl-names = "default"; | |
372 | pinctrl-0 = <&touchscreen_pins>; | |
373 | ||
374 | /* gpio_183 with sys_nirq2 pad as wakeup */ | |
375 | interrupts-extended = <&gpio6 23 IRQ_TYPE_EDGE_FALLING | |
376 | &omap4_pmx_core 0x160>; | |
377 | interrupt-names = "irq", "wakeup"; | |
378 | wakeup-source; | |
379 | }; | |
6f0b0c03 SR |
380 | |
381 | isl29030@44 { | |
382 | compatible = "isil,isl29030"; | |
383 | reg = <0x44>; | |
384 | ||
385 | pinctrl-names = "default"; | |
386 | pinctrl-0 = <&als_proximity_pins>; | |
387 | ||
388 | interrupt-parent = <&gpio6>; | |
389 | interrupts = <17 IRQ_TYPE_LEVEL_LOW>; /* gpio177 */ | |
390 | }; | |
0526364c TL |
391 | }; |
392 | ||
7e2f8c0a | 393 | &omap4_pmx_core { |
9946f937 | 394 | |
50cdcc0b TL |
395 | /* hdmi_hpd.gpio_63 */ |
396 | hdmi_hpd_gpio: pinmux_hdmi_hpd_pins { | |
397 | pinctrl-single,pins = < | |
398 | OMAP4_IOPAD(0x098, PIN_INPUT | MUX_MODE3) | |
399 | >; | |
400 | }; | |
401 | ||
402 | /* hdmi_cec.hdmi_cec, hdmi_scl.hdmi_scl, hdmi_sda.hdmi_sda */ | |
403 | dss_hdmi_pins: pinmux_dss_hdmi_pins { | |
404 | pinctrl-single,pins = < | |
3a8ed20d | 405 | OMAP4_IOPAD(0x09a, PIN_INPUT | MUX_MODE0) |
50cdcc0b TL |
406 | OMAP4_IOPAD(0x09c, PIN_INPUT | MUX_MODE0) |
407 | OMAP4_IOPAD(0x09e, PIN_INPUT | MUX_MODE0) | |
408 | >; | |
409 | }; | |
410 | ||
9946f937 TL |
411 | /* gpmc_ncs0.gpio_50 */ |
412 | poweroff_gpio: pinmux_poweroff_pins { | |
413 | pinctrl-single,pins = < | |
414 | OMAP4_IOPAD(0x074, PIN_OUTPUT_PULLUP | MUX_MODE3) | |
415 | >; | |
416 | }; | |
417 | ||
fdec8edb TL |
418 | /* kpd_row0.gpio_178 */ |
419 | tmp105_irq: pinmux_tmp105_irq { | |
420 | pinctrl-single,pins = < | |
421 | OMAP4_IOPAD(0x18e, PIN_INPUT_PULLUP | MUX_MODE3) | |
422 | >; | |
423 | }; | |
424 | ||
7e2f8c0a TL |
425 | usb_gpio_mux_sel1: pinmux_usb_gpio_mux_sel1_pins { |
426 | /* gpio_60 */ | |
427 | pinctrl-single,pins = < | |
428 | OMAP4_IOPAD(0x088, PIN_OUTPUT | MUX_MODE3) | |
429 | >; | |
430 | }; | |
431 | ||
0526364c TL |
432 | touchscreen_pins: pinmux_touchscreen_pins { |
433 | pinctrl-single,pins = < | |
434 | OMAP4_IOPAD(0x1a0, PIN_INPUT_PULLUP | MUX_MODE3) | |
435 | >; | |
436 | }; | |
437 | ||
6f0b0c03 SR |
438 | als_proximity_pins: pinmux_als_proximity_pins { |
439 | pinctrl-single,pins = < | |
440 | OMAP4_IOPAD(0x18c, PIN_INPUT_PULLUP | MUX_MODE3) | |
441 | >; | |
442 | }; | |
443 | ||
7e2f8c0a TL |
444 | usb_ulpi_pins: pinmux_usb_ulpi_pins { |
445 | pinctrl-single,pins = < | |
446 | OMAP4_IOPAD(0x196, MUX_MODE7) | |
447 | OMAP4_IOPAD(0x198, MUX_MODE7) | |
448 | OMAP4_IOPAD(0x1b2, PIN_INPUT_PULLUP | MUX_MODE0) | |
449 | OMAP4_IOPAD(0x1b4, PIN_INPUT_PULLUP | MUX_MODE0) | |
450 | OMAP4_IOPAD(0x1b6, PIN_INPUT_PULLUP | MUX_MODE0) | |
451 | OMAP4_IOPAD(0x1b8, PIN_INPUT_PULLUP | MUX_MODE0) | |
452 | OMAP4_IOPAD(0x1ba, PIN_INPUT_PULLUP | MUX_MODE0) | |
453 | OMAP4_IOPAD(0x1bc, PIN_INPUT_PULLUP | MUX_MODE0) | |
454 | OMAP4_IOPAD(0x1be, PIN_INPUT_PULLUP | MUX_MODE0) | |
455 | OMAP4_IOPAD(0x1c0, PIN_INPUT_PULLUP | MUX_MODE0) | |
456 | OMAP4_IOPAD(0x1c2, PIN_INPUT_PULLUP | MUX_MODE0) | |
457 | OMAP4_IOPAD(0x1c4, PIN_INPUT_PULLUP | MUX_MODE0) | |
458 | OMAP4_IOPAD(0x1c6, PIN_INPUT_PULLUP | MUX_MODE0) | |
459 | OMAP4_IOPAD(0x1c8, PIN_INPUT_PULLUP | MUX_MODE0) | |
460 | >; | |
461 | }; | |
462 | ||
463 | /* usb0_otg_dp and usb0_otg_dm */ | |
464 | usb_utmi_pins: pinmux_usb_utmi_pins { | |
465 | pinctrl-single,pins = < | |
466 | OMAP4_IOPAD(0x196, PIN_INPUT | MUX_MODE0) | |
467 | OMAP4_IOPAD(0x198, PIN_INPUT | MUX_MODE0) | |
468 | OMAP4_IOPAD(0x1b2, PIN_INPUT_PULLUP | MUX_MODE7) | |
469 | OMAP4_IOPAD(0x1b4, PIN_INPUT_PULLUP | MUX_MODE7) | |
470 | OMAP4_IOPAD(0x1b6, PIN_INPUT_PULLUP | MUX_MODE7) | |
471 | OMAP4_IOPAD(0x1b8, PIN_INPUT_PULLUP | MUX_MODE7) | |
472 | OMAP4_IOPAD(0x1ba, PIN_INPUT_PULLUP | MUX_MODE7) | |
473 | OMAP4_IOPAD(0x1bc, PIN_INPUT_PULLUP | MUX_MODE7) | |
474 | OMAP4_IOPAD(0x1be, PIN_INPUT_PULLUP | MUX_MODE7) | |
475 | OMAP4_IOPAD(0x1c0, PIN_INPUT_PULLUP | MUX_MODE7) | |
476 | OMAP4_IOPAD(0x1c2, PIN_INPUT_PULLUP | MUX_MODE7) | |
477 | OMAP4_IOPAD(0x1c4, PIN_INPUT_PULLUP | MUX_MODE7) | |
478 | OMAP4_IOPAD(0x1c6, PIN_INPUT_PULLUP | MUX_MODE7) | |
479 | OMAP4_IOPAD(0x1c8, PIN_INPUT_PULLUP | MUX_MODE7) | |
480 | >; | |
481 | }; | |
482 | ||
483 | /* uart3_tx_irtx and uart3_rx_irrx */ | |
484 | uart3_pins: pinmux_uart3_pins { | |
485 | pinctrl-single,pins = < | |
486 | OMAP4_IOPAD(0x196, MUX_MODE7) | |
487 | OMAP4_IOPAD(0x198, MUX_MODE7) | |
488 | OMAP4_IOPAD(0x1b2, PIN_INPUT_PULLUP | MUX_MODE7) | |
489 | OMAP4_IOPAD(0x1b4, PIN_INPUT_PULLUP | MUX_MODE7) | |
490 | OMAP4_IOPAD(0x1b6, PIN_INPUT_PULLUP | MUX_MODE7) | |
491 | OMAP4_IOPAD(0x1b8, PIN_INPUT_PULLUP | MUX_MODE7) | |
492 | OMAP4_IOPAD(0x1ba, MUX_MODE2) | |
493 | OMAP4_IOPAD(0x1bc, PIN_INPUT | MUX_MODE2) | |
494 | OMAP4_IOPAD(0x1be, PIN_INPUT_PULLUP | MUX_MODE7) | |
495 | OMAP4_IOPAD(0x1c0, PIN_INPUT_PULLUP | MUX_MODE7) | |
496 | OMAP4_IOPAD(0x1c2, PIN_INPUT_PULLUP | MUX_MODE7) | |
497 | OMAP4_IOPAD(0x1c4, PIN_INPUT_PULLUP | MUX_MODE7) | |
498 | OMAP4_IOPAD(0x1c6, PIN_INPUT_PULLUP | MUX_MODE7) | |
499 | OMAP4_IOPAD(0x1c8, PIN_INPUT_PULLUP | MUX_MODE7) | |
500 | >; | |
501 | }; | |
decd2db7 SR |
502 | |
503 | uart4_pins: pinmux_uart4_pins { | |
504 | pinctrl-single,pins = < | |
505 | OMAP4_IOPAD(0x15c, PIN_INPUT | MUX_MODE0) /* uart4_rx */ | |
506 | OMAP4_IOPAD(0x15e, PIN_OUTPUT | MUX_MODE0) /* uart4_tx */ | |
507 | OMAP4_IOPAD(0x110, PIN_INPUT_PULLUP | MUX_MODE5) /* uart4_cts */ | |
508 | OMAP4_IOPAD(0x112, PIN_OUTPUT_PULLUP | MUX_MODE5) /* uart4_rts */ | |
509 | >; | |
510 | }; | |
7e2f8c0a TL |
511 | }; |
512 | ||
513 | &omap4_pmx_wkup { | |
514 | usb_gpio_mux_sel2: pinmux_usb_gpio_mux_sel2_pins { | |
515 | /* gpio_wk0 */ | |
516 | pinctrl-single,pins = < | |
517 | OMAP4_IOPAD(0x040, PIN_OUTPUT_PULLDOWN | MUX_MODE3) | |
518 | >; | |
519 | }; | |
a5effd96 SR |
520 | |
521 | vibrator_direction_pin: pinmux_vibrator_direction_pin { | |
522 | pinctrl-single,pins = < | |
523 | OMAP4_IOPAD(0x1ce, PIN_OUTPUT | MUX_MODE1) /* dmtimer8_pwm_evt (gpio_27) */ | |
524 | >; | |
525 | }; | |
526 | ||
527 | vibrator_enable_pin: pinmux_vibrator_enable_pin { | |
528 | pinctrl-single,pins = < | |
529 | OMAP4_IOPAD(0X1d0, PIN_OUTPUT | MUX_MODE1) /* dmtimer9_pwm_evt (gpio_28) */ | |
530 | >; | |
531 | }; | |
7e2f8c0a TL |
532 | }; |
533 | ||
534 | &uart3 { | |
535 | interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH | |
536 | &omap4_pmx_core 0x17c>; | |
537 | }; | |
538 | ||
decd2db7 SR |
539 | &uart4 { |
540 | pinctrl-names = "default"; | |
541 | pinctrl-0 = <&uart4_pins>; | |
542 | ||
543 | bluetooth { | |
544 | compatible = "ti,wl1285-st"; | |
545 | enable-gpios = <&gpio6 14 GPIO_ACTIVE_HIGH>; /* gpio 174 */ | |
546 | max-speed = <3686400>; | |
547 | }; | |
548 | }; | |
549 | ||
7a9b2484 TL |
550 | &usbhsehci { |
551 | phys = <&hsusb1_phy>; | |
552 | }; | |
553 | ||
554 | &usbhshost { | |
555 | port1-mode = "ohci-phy-4pin-dpdm"; | |
556 | port2-mode = "ehci-tll"; | |
557 | }; | |
558 | ||
7e2f8c0a TL |
559 | /* Internal UTMI+ PHY used for OTG, CPCAP ULPI PHY for detection and charger */ |
560 | &usb_otg_hs { | |
561 | interface-type = <1>; | |
562 | mode = <3>; | |
563 | power = <50>; | |
564 | }; | |
d2913a69 SR |
565 | |
566 | &i2c4 { | |
567 | ak8975: magnetometer@c { | |
568 | compatible = "asahi-kasei,ak8975"; | |
569 | reg = <0x0c>; | |
570 | ||
571 | vdd-supply = <&vhvio>; | |
572 | ||
573 | interrupt-parent = <&gpio6>; | |
574 | interrupts = <15 IRQ_TYPE_EDGE_RISING>; /* gpio175 */ | |
575 | ||
576 | rotation-matrix = "-1", "0", "0", | |
577 | "0", "1", "0", | |
578 | "0", "0", "-1"; | |
579 | ||
580 | }; | |
6f1a0744 SR |
581 | |
582 | lis3dh: accelerometer@18 { | |
583 | compatible = "st,lis3dh-accel"; | |
584 | reg = <0x18>; | |
585 | ||
586 | vdd-supply = <&vhvio>; | |
587 | ||
588 | interrupt-parent = <&gpio2>; | |
589 | interrupts = <2 IRQ_TYPE_EDGE_BOTH>; /* gpio34 */ | |
590 | ||
591 | rotation-matrix = "0", "-1", "0", | |
592 | "1", "0", "0", | |
593 | "0", "0", "1"; | |
594 | }; | |
d2913a69 | 595 | }; |