ARM: dts: enable PCIe support for Cygnus
[deliverable/linux.git] / arch / arm / boot / dts / omap5-uevm.dts
1 /*
2 * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8 /dts-v1/;
9
10 #include "omap5.dtsi"
11 #include <dt-bindings/interrupt-controller/irq.h>
12 #include <dt-bindings/interrupt-controller/arm-gic.h>
13
14 / {
15 model = "TI OMAP5 uEVM board";
16 compatible = "ti,omap5-uevm", "ti,omap5";
17
18 memory {
19 device_type = "memory";
20 reg = <0x80000000 0x7F000000>; /* 2032 MB */
21 };
22
23 aliases {
24 display0 = &hdmi0;
25 };
26
27 vmmcsd_fixed: fixedregulator-mmcsd {
28 compatible = "regulator-fixed";
29 regulator-name = "vmmcsd_fixed";
30 regulator-min-microvolt = <3000000>;
31 regulator-max-microvolt = <3000000>;
32 };
33
34 /* HS USB Host PHY on PORT 2 */
35 hsusb2_phy: hsusb2_phy {
36 compatible = "usb-nop-xceiv";
37 reset-gpios = <&gpio3 16 GPIO_ACTIVE_LOW>; /* gpio3_80 HUB_NRESET */
38 clocks = <&auxclk1_ck>;
39 clock-names = "main_clk";
40 clock-frequency = <19200000>;
41 };
42
43 /* HS USB Host PHY on PORT 3 */
44 hsusb3_phy: hsusb3_phy {
45 compatible = "usb-nop-xceiv";
46 reset-gpios = <&gpio3 15 GPIO_ACTIVE_LOW>; /* gpio3_79 ETH_NRESET */
47 };
48
49 leds {
50 compatible = "gpio-leds";
51 led@1 {
52 label = "omap5:blue:usr1";
53 gpios = <&gpio5 25 GPIO_ACTIVE_HIGH>; /* gpio5_153 D1 LED */
54 linux,default-trigger = "heartbeat";
55 default-state = "off";
56 };
57 };
58
59 tpd12s015: encoder@0 {
60 compatible = "ti,tpd12s015";
61
62 pinctrl-names = "default";
63 pinctrl-0 = <&tpd12s015_pins>;
64
65 gpios = <&gpio9 0 GPIO_ACTIVE_HIGH>, /* TCA6424A P01, CT CP HPD */
66 <&gpio9 1 GPIO_ACTIVE_HIGH>, /* TCA6424A P00, LS OE */
67 <&gpio7 1 GPIO_ACTIVE_HIGH>; /* GPIO 193, HPD */
68
69 ports {
70 #address-cells = <1>;
71 #size-cells = <0>;
72
73 port@0 {
74 reg = <0>;
75
76 tpd12s015_in: endpoint@0 {
77 remote-endpoint = <&hdmi_out>;
78 };
79 };
80
81 port@1 {
82 reg = <1>;
83
84 tpd12s015_out: endpoint@0 {
85 remote-endpoint = <&hdmi_connector_in>;
86 };
87 };
88 };
89 };
90
91 hdmi0: connector@0 {
92 compatible = "hdmi-connector";
93 label = "hdmi";
94
95 type = "b";
96
97 port {
98 hdmi_connector_in: endpoint {
99 remote-endpoint = <&tpd12s015_out>;
100 };
101 };
102 };
103
104 sound: sound {
105 compatible = "ti,abe-twl6040";
106 ti,model = "omap5-uevm";
107
108 ti,mclk-freq = <19200000>;
109
110 ti,mcpdm = <&mcpdm>;
111
112 ti,twl6040 = <&twl6040>;
113
114 /* Audio routing */
115 ti,audio-routing =
116 "Headset Stereophone", "HSOL",
117 "Headset Stereophone", "HSOR",
118 "Line Out", "AUXL",
119 "Line Out", "AUXR",
120 "HSMIC", "Headset Mic",
121 "Headset Mic", "Headset Mic Bias",
122 "AFML", "Line In",
123 "AFMR", "Line In";
124 };
125 };
126
127 &omap5_pmx_core {
128 pinctrl-names = "default";
129 pinctrl-0 = <
130 &usbhost_pins
131 &led_gpio_pins
132 >;
133
134 twl6040_pins: pinmux_twl6040_pins {
135 pinctrl-single,pins = <
136 0x17e (PIN_OUTPUT | MUX_MODE6) /* mcspi1_somi.gpio5_141 */
137 >;
138 };
139
140 mcpdm_pins: pinmux_mcpdm_pins {
141 pinctrl-single,pins = <
142 0x142 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abe_clks.abe_clks */
143 0x15c (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abemcpdm_ul_data.abemcpdm_ul_data */
144 0x15e (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abemcpdm_dl_data.abemcpdm_dl_data */
145 0x160 (PIN_INPUT_PULLUP | MUX_MODE0) /* abemcpdm_frame.abemcpdm_frame */
146 0x162 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abemcpdm_lb_clk.abemcpdm_lb_clk */
147 >;
148 };
149
150 mcbsp1_pins: pinmux_mcbsp1_pins {
151 pinctrl-single,pins = <
152 0x14c (PIN_INPUT | MUX_MODE1) /* abedmic_clk2.abemcbsp1_fsx */
153 0x14e (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* abedmic_clk3.abemcbsp1_dx */
154 0x150 (PIN_INPUT | MUX_MODE1) /* abeslimbus1_clock.abemcbsp1_clkx */
155 0x152 (PIN_INPUT_PULLDOWN | MUX_MODE1) /* abeslimbus1_data.abemcbsp1_dr */
156 >;
157 };
158
159 mcbsp2_pins: pinmux_mcbsp2_pins {
160 pinctrl-single,pins = <
161 0x154 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* abemcbsp2_dr.abemcbsp2_dr */
162 0x156 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abemcbsp2_dx.abemcbsp2_dx */
163 0x158 (PIN_INPUT | MUX_MODE0) /* abemcbsp2_fsx.abemcbsp2_fsx */
164 0x15a (PIN_INPUT | MUX_MODE0) /* abemcbsp2_clkx.abemcbsp2_clkx */
165 >;
166 };
167
168 i2c1_pins: pinmux_i2c1_pins {
169 pinctrl-single,pins = <
170 0x1b2 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */
171 0x1b4 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */
172 >;
173 };
174
175 i2c5_pins: pinmux_i2c5_pins {
176 pinctrl-single,pins = <
177 0x184 (PIN_INPUT | MUX_MODE0) /* i2c5_scl */
178 0x186 (PIN_INPUT | MUX_MODE0) /* i2c5_sda */
179 >;
180 };
181
182 mcspi2_pins: pinmux_mcspi2_pins {
183 pinctrl-single,pins = <
184 0xbc (PIN_INPUT | MUX_MODE0) /* mcspi2_clk */
185 0xbe (PIN_INPUT | MUX_MODE0) /* mcspi2_simo */
186 0xc0 (PIN_INPUT_PULLUP | MUX_MODE0) /* mcspi2_somi */
187 0xc2 (PIN_OUTPUT | MUX_MODE0) /* mcspi2_cs0 */
188 >;
189 };
190
191 mcspi3_pins: pinmux_mcspi3_pins {
192 pinctrl-single,pins = <
193 0x78 (PIN_INPUT | MUX_MODE1) /* mcspi3_somi */
194 0x7a (PIN_INPUT | MUX_MODE1) /* mcspi3_cs0 */
195 0x7c (PIN_INPUT | MUX_MODE1) /* mcspi3_simo */
196 0x7e (PIN_INPUT | MUX_MODE1) /* mcspi3_clk */
197 >;
198 };
199
200 mcspi4_pins: pinmux_mcspi4_pins {
201 pinctrl-single,pins = <
202 0x164 (PIN_INPUT | MUX_MODE1) /* mcspi4_clk */
203 0x168 (PIN_INPUT | MUX_MODE1) /* mcspi4_simo */
204 0x16a (PIN_INPUT | MUX_MODE1) /* mcspi4_somi */
205 0x16c (PIN_INPUT | MUX_MODE1) /* mcspi4_cs0 */
206 >;
207 };
208
209 usbhost_pins: pinmux_usbhost_pins {
210 pinctrl-single,pins = <
211 0x84 (PIN_INPUT | MUX_MODE0) /* usbb2_hsic_strobe */
212 0x86 (PIN_INPUT | MUX_MODE0) /* usbb2_hsic_data */
213
214 0x19e (PIN_INPUT | MUX_MODE0) /* usbb3_hsic_strobe */
215 0x1a0 (PIN_INPUT | MUX_MODE0) /* usbb3_hsic_data */
216
217 0x70 (PIN_OUTPUT | MUX_MODE6) /* gpio3_80 HUB_NRESET */
218 0x6e (PIN_OUTPUT | MUX_MODE6) /* gpio3_79 ETH_NRESET */
219 >;
220 };
221
222 led_gpio_pins: pinmux_led_gpio_pins {
223 pinctrl-single,pins = <
224 0x196 (PIN_OUTPUT | MUX_MODE6) /* uart3_cts_rctx.gpio5_153 */
225 >;
226 };
227
228 uart1_pins: pinmux_uart1_pins {
229 pinctrl-single,pins = <
230 0x60 (PIN_OUTPUT | MUX_MODE0) /* uart1_tx.uart1_cts */
231 0x62 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_tx.uart1_cts */
232 0x64 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_rx.uart1_rts */
233 0x66 (PIN_OUTPUT | MUX_MODE0) /* uart1_rx.uart1_rts */
234 >;
235 };
236
237 uart3_pins: pinmux_uart3_pins {
238 pinctrl-single,pins = <
239 0x19a (PIN_OUTPUT | MUX_MODE0) /* uart3_rts_irsd.uart3_tx_irtx */
240 0x19c (PIN_INPUT_PULLUP | MUX_MODE0) /* uart3_rx_irrx.uart3_usbb3_hsic */
241 >;
242 };
243
244 uart5_pins: pinmux_uart5_pins {
245 pinctrl-single,pins = <
246 0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart5_rx.uart5_rx */
247 0x172 (PIN_OUTPUT | MUX_MODE0) /* uart5_tx.uart5_tx */
248 0x174 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart5_cts.uart5_rts */
249 0x176 (PIN_OUTPUT | MUX_MODE0) /* uart5_cts.uart5_rts */
250 >;
251 };
252
253 dss_hdmi_pins: pinmux_dss_hdmi_pins {
254 pinctrl-single,pins = <
255 0x0fc (PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_cec.hdmi_cec */
256 0x100 (PIN_INPUT | MUX_MODE0) /* hdmi_ddc_scl.hdmi_ddc_scl */
257 0x102 (PIN_INPUT | MUX_MODE0) /* hdmi_ddc_sda.hdmi_ddc_sda */
258 >;
259 };
260
261 tpd12s015_pins: pinmux_tpd12s015_pins {
262 pinctrl-single,pins = <
263 0x0fe (PIN_INPUT_PULLDOWN | MUX_MODE6) /* hdmi_hpd.gpio7_193 */
264 >;
265 };
266 };
267
268 &omap5_pmx_wkup {
269 pinctrl-names = "default";
270 pinctrl-0 = <
271 &usbhost_wkup_pins
272 >;
273
274 usbhost_wkup_pins: pinmux_usbhost_wkup_pins {
275 pinctrl-single,pins = <
276 0x1A (PIN_OUTPUT | MUX_MODE0) /* fref_clk1_out, USB hub clk */
277 >;
278 };
279 };
280
281 &mmc1 {
282 vmmc-supply = <&ldo9_reg>;
283 bus-width = <4>;
284 };
285
286 &mmc2 {
287 vmmc-supply = <&vmmcsd_fixed>;
288 bus-width = <8>;
289 ti,non-removable;
290 };
291
292 &mmc3 {
293 bus-width = <4>;
294 ti,non-removable;
295 };
296
297 &mmc4 {
298 status = "disabled";
299 };
300
301 &mmc5 {
302 status = "disabled";
303 };
304
305 &i2c1 {
306 pinctrl-names = "default";
307 pinctrl-0 = <&i2c1_pins>;
308
309 clock-frequency = <400000>;
310
311 palmas: palmas@48 {
312 compatible = "ti,palmas";
313 interrupts = <GIC_SPI 7 IRQ_TYPE_NONE>; /* IRQ_SYS_1N */
314 interrupt-parent = <&gic>;
315 reg = <0x48>;
316 interrupt-controller;
317 #interrupt-cells = <2>;
318 ti,system-power-controller;
319
320 extcon_usb3: palmas_usb {
321 compatible = "ti,palmas-usb-vid";
322 ti,enable-vbus-detection;
323 ti,enable-id-detection;
324 ti,wakeup;
325 };
326
327 clk32kgaudio: palmas_clk32k@1 {
328 compatible = "ti,palmas-clk32kgaudio";
329 #clock-cells = <0>;
330 };
331
332 palmas_pmic {
333 compatible = "ti,palmas-pmic";
334 interrupt-parent = <&palmas>;
335 interrupts = <14 IRQ_TYPE_NONE>;
336 interrupt-name = "short-irq";
337
338 ti,ldo6-vibrator;
339
340 regulators {
341 smps123_reg: smps123 {
342 /* VDD_OPP_MPU */
343 regulator-name = "smps123";
344 regulator-min-microvolt = < 600000>;
345 regulator-max-microvolt = <1500000>;
346 regulator-always-on;
347 regulator-boot-on;
348 };
349
350 smps45_reg: smps45 {
351 /* VDD_OPP_MM */
352 regulator-name = "smps45";
353 regulator-min-microvolt = < 600000>;
354 regulator-max-microvolt = <1310000>;
355 regulator-always-on;
356 regulator-boot-on;
357 };
358
359 smps6_reg: smps6 {
360 /* VDD_DDR3 - over VDD_SMPS6 */
361 regulator-name = "smps6";
362 regulator-min-microvolt = <1200000>;
363 regulator-max-microvolt = <1200000>;
364 regulator-always-on;
365 regulator-boot-on;
366 };
367
368 smps7_reg: smps7 {
369 /* VDDS_1v8_OMAP over VDDS_1v8_MAIN */
370 regulator-name = "smps7";
371 regulator-min-microvolt = <1800000>;
372 regulator-max-microvolt = <1800000>;
373 regulator-always-on;
374 regulator-boot-on;
375 };
376
377 smps8_reg: smps8 {
378 /* VDD_OPP_CORE */
379 regulator-name = "smps8";
380 regulator-min-microvolt = < 600000>;
381 regulator-max-microvolt = <1310000>;
382 regulator-always-on;
383 regulator-boot-on;
384 };
385
386 smps9_reg: smps9 {
387 /* VDDA_2v1_AUD over VDD_2v1 */
388 regulator-name = "smps9";
389 regulator-min-microvolt = <2100000>;
390 regulator-max-microvolt = <2100000>;
391 ti,smps-range = <0x80>;
392 };
393
394 smps10_out2_reg: smps10_out2 {
395 /* VBUS_5V_OTG */
396 regulator-name = "smps10_out2";
397 regulator-min-microvolt = <5000000>;
398 regulator-max-microvolt = <5000000>;
399 regulator-always-on;
400 regulator-boot-on;
401 };
402
403 smps10_out1_reg: smps10_out1 {
404 /* VBUS_5V_OTG */
405 regulator-name = "smps10_out1";
406 regulator-min-microvolt = <5000000>;
407 regulator-max-microvolt = <5000000>;
408 };
409
410 ldo1_reg: ldo1 {
411 /* VDDAPHY_CAM: vdda_csiport */
412 regulator-name = "ldo1";
413 regulator-min-microvolt = <1500000>;
414 regulator-max-microvolt = <1800000>;
415 };
416
417 ldo2_reg: ldo2 {
418 /* VCC_2V8_DISP: Does not go anywhere */
419 regulator-name = "ldo2";
420 regulator-min-microvolt = <2800000>;
421 regulator-max-microvolt = <2800000>;
422 /* Unused */
423 status = "disabled";
424 };
425
426 ldo3_reg: ldo3 {
427 /* VDDAPHY_MDM: vdda_lli */
428 regulator-name = "ldo3";
429 regulator-min-microvolt = <1500000>;
430 regulator-max-microvolt = <1500000>;
431 regulator-boot-on;
432 /* Only if Modem is used */
433 status = "disabled";
434 };
435
436 ldo4_reg: ldo4 {
437 /* VDDAPHY_DISP: vdda_dsiport/hdmi */
438 regulator-name = "ldo4";
439 regulator-min-microvolt = <1500000>;
440 regulator-max-microvolt = <1800000>;
441 };
442
443 ldo5_reg: ldo5 {
444 /* VDDA_1V8_PHY: usb/sata/hdmi.. */
445 regulator-name = "ldo5";
446 regulator-min-microvolt = <1800000>;
447 regulator-max-microvolt = <1800000>;
448 regulator-always-on;
449 regulator-boot-on;
450 };
451
452 ldo6_reg: ldo6 {
453 /* VDDS_1V2_WKUP: hsic/ldo_emu_wkup */
454 regulator-name = "ldo6";
455 regulator-min-microvolt = <1200000>;
456 regulator-max-microvolt = <1200000>;
457 regulator-always-on;
458 regulator-boot-on;
459 };
460
461 ldo7_reg: ldo7 {
462 /* VDD_VPP: vpp1 */
463 regulator-name = "ldo7";
464 regulator-min-microvolt = <2000000>;
465 regulator-max-microvolt = <2000000>;
466 /* Only for efuse reprograming! */
467 status = "disabled";
468 };
469
470 ldo8_reg: ldo8 {
471 /* VDD_3v0: Does not go anywhere */
472 regulator-name = "ldo8";
473 regulator-min-microvolt = <3000000>;
474 regulator-max-microvolt = <3000000>;
475 regulator-boot-on;
476 /* Unused */
477 status = "disabled";
478 };
479
480 ldo9_reg: ldo9 {
481 /* VCC_DV_SDIO: vdds_sdcard */
482 regulator-name = "ldo9";
483 regulator-min-microvolt = <1800000>;
484 regulator-max-microvolt = <3000000>;
485 regulator-boot-on;
486 };
487
488 ldoln_reg: ldoln {
489 /* VDDA_1v8_REF: vdds_osc/mm_l4per.. */
490 regulator-name = "ldoln";
491 regulator-min-microvolt = <1800000>;
492 regulator-max-microvolt = <1800000>;
493 regulator-always-on;
494 regulator-boot-on;
495 };
496
497 ldousb_reg: ldousb {
498 /* VDDA_3V_USB: VDDA_USBHS33 */
499 regulator-name = "ldousb";
500 regulator-min-microvolt = <3250000>;
501 regulator-max-microvolt = <3250000>;
502 regulator-always-on;
503 regulator-boot-on;
504 };
505
506 regen3_reg: regen3 {
507 /* REGEN3 controls LDO9 supply to card */
508 regulator-name = "regen3";
509 regulator-always-on;
510 regulator-boot-on;
511 };
512 };
513 };
514 };
515
516 twl6040: twl@4b {
517 compatible = "ti,twl6040";
518 reg = <0x4b>;
519
520 pinctrl-names = "default";
521 pinctrl-0 = <&twl6040_pins>;
522
523 interrupts = <GIC_SPI 119 IRQ_TYPE_NONE>; /* IRQ_SYS_2N cascaded to gic */
524 interrupt-parent = <&gic>;
525 ti,audpwron-gpio = <&gpio5 13 0>; /* gpio line 141 */
526
527 vio-supply = <&smps7_reg>;
528 v2v1-supply = <&smps9_reg>;
529 enable-active-high;
530
531 clocks = <&clk32kgaudio>;
532 clock-names = "clk32k";
533 };
534 };
535
536 &i2c5 {
537 pinctrl-names = "default";
538 pinctrl-0 = <&i2c5_pins>;
539
540 clock-frequency = <400000>;
541
542 gpio9: gpio@22 {
543 compatible = "ti,tca6424";
544 reg = <0x22>;
545 gpio-controller;
546 #gpio-cells = <2>;
547 };
548 };
549
550 &mcpdm {
551 pinctrl-names = "default";
552 pinctrl-0 = <&mcpdm_pins>;
553 status = "okay";
554 };
555
556 &mcbsp1 {
557 pinctrl-names = "default";
558 pinctrl-0 = <&mcbsp1_pins>;
559 status = "okay";
560 };
561
562 &mcbsp2 {
563 pinctrl-names = "default";
564 pinctrl-0 = <&mcbsp2_pins>;
565 status = "okay";
566 };
567
568 &usbhshost {
569 port2-mode = "ehci-hsic";
570 port3-mode = "ehci-hsic";
571 };
572
573 &usbhsehci {
574 phys = <0 &hsusb2_phy &hsusb3_phy>;
575 };
576
577 &usb3 {
578 extcon = <&extcon_usb3>;
579 vbus-supply = <&smps10_out1_reg>;
580 };
581
582 &mcspi1 {
583
584 };
585
586 &mcspi2 {
587 pinctrl-names = "default";
588 pinctrl-0 = <&mcspi2_pins>;
589 };
590
591 &mcspi3 {
592 pinctrl-names = "default";
593 pinctrl-0 = <&mcspi3_pins>;
594 };
595
596 &mcspi4 {
597 pinctrl-names = "default";
598 pinctrl-0 = <&mcspi4_pins>;
599 };
600
601 &uart1 {
602 pinctrl-names = "default";
603 pinctrl-0 = <&uart1_pins>;
604 };
605
606 &uart3 {
607 pinctrl-names = "default";
608 pinctrl-0 = <&uart3_pins>;
609 };
610
611 &uart5 {
612 pinctrl-names = "default";
613 pinctrl-0 = <&uart5_pins>;
614 };
615
616 &cpu0 {
617 cpu0-supply = <&smps123_reg>;
618 };
619
620 &dss {
621 status = "ok";
622 };
623
624 &hdmi {
625 status = "ok";
626 vdda-supply = <&ldo4_reg>;
627
628 pinctrl-names = "default";
629 pinctrl-0 = <&dss_hdmi_pins>;
630
631 port {
632 hdmi_out: endpoint {
633 remote-endpoint = <&tpd12s015_in>;
634 };
635 };
636 };
This page took 0.073976 seconds and 5 git commands to generate.