Merge tag 'kvm-4.3-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm
[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 reg = <0x48>;
315 interrupt-controller;
316 #interrupt-cells = <2>;
317 ti,system-power-controller;
318
319 extcon_usb3: palmas_usb {
320 compatible = "ti,palmas-usb-vid";
321 ti,enable-vbus-detection;
322 ti,enable-id-detection;
323 ti,wakeup;
324 };
325
326 clk32kgaudio: palmas_clk32k@1 {
327 compatible = "ti,palmas-clk32kgaudio";
328 #clock-cells = <0>;
329 };
330
331 palmas_pmic {
332 compatible = "ti,palmas-pmic";
333 interrupt-parent = <&palmas>;
334 interrupts = <14 IRQ_TYPE_NONE>;
335 interrupt-name = "short-irq";
336
337 ti,ldo6-vibrator;
338
339 regulators {
340 smps123_reg: smps123 {
341 /* VDD_OPP_MPU */
342 regulator-name = "smps123";
343 regulator-min-microvolt = < 600000>;
344 regulator-max-microvolt = <1500000>;
345 regulator-always-on;
346 regulator-boot-on;
347 };
348
349 smps45_reg: smps45 {
350 /* VDD_OPP_MM */
351 regulator-name = "smps45";
352 regulator-min-microvolt = < 600000>;
353 regulator-max-microvolt = <1310000>;
354 regulator-always-on;
355 regulator-boot-on;
356 };
357
358 smps6_reg: smps6 {
359 /* VDD_DDR3 - over VDD_SMPS6 */
360 regulator-name = "smps6";
361 regulator-min-microvolt = <1200000>;
362 regulator-max-microvolt = <1200000>;
363 regulator-always-on;
364 regulator-boot-on;
365 };
366
367 smps7_reg: smps7 {
368 /* VDDS_1v8_OMAP over VDDS_1v8_MAIN */
369 regulator-name = "smps7";
370 regulator-min-microvolt = <1800000>;
371 regulator-max-microvolt = <1800000>;
372 regulator-always-on;
373 regulator-boot-on;
374 };
375
376 smps8_reg: smps8 {
377 /* VDD_OPP_CORE */
378 regulator-name = "smps8";
379 regulator-min-microvolt = < 600000>;
380 regulator-max-microvolt = <1310000>;
381 regulator-always-on;
382 regulator-boot-on;
383 };
384
385 smps9_reg: smps9 {
386 /* VDDA_2v1_AUD over VDD_2v1 */
387 regulator-name = "smps9";
388 regulator-min-microvolt = <2100000>;
389 regulator-max-microvolt = <2100000>;
390 ti,smps-range = <0x80>;
391 };
392
393 smps10_out2_reg: smps10_out2 {
394 /* VBUS_5V_OTG */
395 regulator-name = "smps10_out2";
396 regulator-min-microvolt = <5000000>;
397 regulator-max-microvolt = <5000000>;
398 regulator-always-on;
399 regulator-boot-on;
400 };
401
402 smps10_out1_reg: smps10_out1 {
403 /* VBUS_5V_OTG */
404 regulator-name = "smps10_out1";
405 regulator-min-microvolt = <5000000>;
406 regulator-max-microvolt = <5000000>;
407 };
408
409 ldo1_reg: ldo1 {
410 /* VDDAPHY_CAM: vdda_csiport */
411 regulator-name = "ldo1";
412 regulator-min-microvolt = <1500000>;
413 regulator-max-microvolt = <1800000>;
414 };
415
416 ldo2_reg: ldo2 {
417 /* VCC_2V8_DISP: Does not go anywhere */
418 regulator-name = "ldo2";
419 regulator-min-microvolt = <2800000>;
420 regulator-max-microvolt = <2800000>;
421 /* Unused */
422 status = "disabled";
423 };
424
425 ldo3_reg: ldo3 {
426 /* VDDAPHY_MDM: vdda_lli */
427 regulator-name = "ldo3";
428 regulator-min-microvolt = <1500000>;
429 regulator-max-microvolt = <1500000>;
430 regulator-boot-on;
431 /* Only if Modem is used */
432 status = "disabled";
433 };
434
435 ldo4_reg: ldo4 {
436 /* VDDAPHY_DISP: vdda_dsiport/hdmi */
437 regulator-name = "ldo4";
438 regulator-min-microvolt = <1500000>;
439 regulator-max-microvolt = <1800000>;
440 };
441
442 ldo5_reg: ldo5 {
443 /* VDDA_1V8_PHY: usb/sata/hdmi.. */
444 regulator-name = "ldo5";
445 regulator-min-microvolt = <1800000>;
446 regulator-max-microvolt = <1800000>;
447 regulator-always-on;
448 regulator-boot-on;
449 };
450
451 ldo6_reg: ldo6 {
452 /* VDDS_1V2_WKUP: hsic/ldo_emu_wkup */
453 regulator-name = "ldo6";
454 regulator-min-microvolt = <1200000>;
455 regulator-max-microvolt = <1200000>;
456 regulator-always-on;
457 regulator-boot-on;
458 };
459
460 ldo7_reg: ldo7 {
461 /* VDD_VPP: vpp1 */
462 regulator-name = "ldo7";
463 regulator-min-microvolt = <2000000>;
464 regulator-max-microvolt = <2000000>;
465 /* Only for efuse reprograming! */
466 status = "disabled";
467 };
468
469 ldo8_reg: ldo8 {
470 /* VDD_3v0: Does not go anywhere */
471 regulator-name = "ldo8";
472 regulator-min-microvolt = <3000000>;
473 regulator-max-microvolt = <3000000>;
474 regulator-boot-on;
475 /* Unused */
476 status = "disabled";
477 };
478
479 ldo9_reg: ldo9 {
480 /* VCC_DV_SDIO: vdds_sdcard */
481 regulator-name = "ldo9";
482 regulator-min-microvolt = <1800000>;
483 regulator-max-microvolt = <3000000>;
484 regulator-boot-on;
485 };
486
487 ldoln_reg: ldoln {
488 /* VDDA_1v8_REF: vdds_osc/mm_l4per.. */
489 regulator-name = "ldoln";
490 regulator-min-microvolt = <1800000>;
491 regulator-max-microvolt = <1800000>;
492 regulator-always-on;
493 regulator-boot-on;
494 };
495
496 ldousb_reg: ldousb {
497 /* VDDA_3V_USB: VDDA_USBHS33 */
498 regulator-name = "ldousb";
499 regulator-min-microvolt = <3250000>;
500 regulator-max-microvolt = <3250000>;
501 regulator-always-on;
502 regulator-boot-on;
503 };
504
505 regen3_reg: regen3 {
506 /* REGEN3 controls LDO9 supply to card */
507 regulator-name = "regen3";
508 regulator-always-on;
509 regulator-boot-on;
510 };
511 };
512 };
513 };
514
515 twl6040: twl@4b {
516 compatible = "ti,twl6040";
517 reg = <0x4b>;
518
519 pinctrl-names = "default";
520 pinctrl-0 = <&twl6040_pins>;
521
522 interrupts = <GIC_SPI 119 IRQ_TYPE_NONE>; /* IRQ_SYS_2N cascaded to gic */
523 ti,audpwron-gpio = <&gpio5 13 0>; /* gpio line 141 */
524
525 vio-supply = <&smps7_reg>;
526 v2v1-supply = <&smps9_reg>;
527 enable-active-high;
528
529 clocks = <&clk32kgaudio>;
530 clock-names = "clk32k";
531 };
532 };
533
534 &i2c5 {
535 pinctrl-names = "default";
536 pinctrl-0 = <&i2c5_pins>;
537
538 clock-frequency = <400000>;
539
540 gpio9: gpio@22 {
541 compatible = "ti,tca6424";
542 reg = <0x22>;
543 gpio-controller;
544 #gpio-cells = <2>;
545 };
546 };
547
548 &mcpdm {
549 pinctrl-names = "default";
550 pinctrl-0 = <&mcpdm_pins>;
551 status = "okay";
552 };
553
554 &mcbsp1 {
555 pinctrl-names = "default";
556 pinctrl-0 = <&mcbsp1_pins>;
557 status = "okay";
558 };
559
560 &mcbsp2 {
561 pinctrl-names = "default";
562 pinctrl-0 = <&mcbsp2_pins>;
563 status = "okay";
564 };
565
566 &usbhshost {
567 port2-mode = "ehci-hsic";
568 port3-mode = "ehci-hsic";
569 };
570
571 &usbhsehci {
572 phys = <0 &hsusb2_phy &hsusb3_phy>;
573 };
574
575 &usb3 {
576 extcon = <&extcon_usb3>;
577 vbus-supply = <&smps10_out1_reg>;
578 };
579
580 &mcspi1 {
581
582 };
583
584 &mcspi2 {
585 pinctrl-names = "default";
586 pinctrl-0 = <&mcspi2_pins>;
587 };
588
589 &mcspi3 {
590 pinctrl-names = "default";
591 pinctrl-0 = <&mcspi3_pins>;
592 };
593
594 &mcspi4 {
595 pinctrl-names = "default";
596 pinctrl-0 = <&mcspi4_pins>;
597 };
598
599 &uart1 {
600 pinctrl-names = "default";
601 pinctrl-0 = <&uart1_pins>;
602 };
603
604 &uart3 {
605 pinctrl-names = "default";
606 pinctrl-0 = <&uart3_pins>;
607 interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>,
608 <&omap5_pmx_core 0x19c>;
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.078798 seconds and 5 git commands to generate.