Merge tag 'pm+acpi-3.16-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafae...
[sfrench/cifs-2.6.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
105 &omap5_pmx_core {
106         pinctrl-names = "default";
107         pinctrl-0 = <
108                         &twl6040_pins
109                         &mcpdm_pins
110                         &mcbsp1_pins
111                         &mcbsp2_pins
112                         &usbhost_pins
113                         &led_gpio_pins
114         >;
115
116         twl6040_pins: pinmux_twl6040_pins {
117                 pinctrl-single,pins = <
118                         0x17e (PIN_OUTPUT | MUX_MODE6)  /* mcspi1_somi.gpio5_141 */
119                 >;
120         };
121
122         mcpdm_pins: pinmux_mcpdm_pins {
123                 pinctrl-single,pins = <
124                         0x142 (PIN_INPUT_PULLDOWN | MUX_MODE0)  /* abe_clks.abe_clks */
125                         0x15c (PIN_INPUT_PULLDOWN | MUX_MODE0)  /* abemcpdm_ul_data.abemcpdm_ul_data */
126                         0x15e (PIN_INPUT_PULLDOWN | MUX_MODE0)  /* abemcpdm_dl_data.abemcpdm_dl_data */
127                         0x160 (PIN_INPUT_PULLUP | MUX_MODE0)    /* abemcpdm_frame.abemcpdm_frame */
128                         0x162 (PIN_INPUT_PULLDOWN | MUX_MODE0)  /* abemcpdm_lb_clk.abemcpdm_lb_clk */
129                 >;
130         };
131
132         mcbsp1_pins: pinmux_mcbsp1_pins {
133                 pinctrl-single,pins = <
134                         0x14c (PIN_INPUT | MUX_MODE1)           /* abedmic_clk2.abemcbsp1_fsx */
135                         0x14e (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* abedmic_clk3.abemcbsp1_dx */
136                         0x150 (PIN_INPUT | MUX_MODE1)           /* abeslimbus1_clock.abemcbsp1_clkx */
137                         0x152 (PIN_INPUT_PULLDOWN | MUX_MODE1)  /* abeslimbus1_data.abemcbsp1_dr */
138                 >;
139         };
140
141         mcbsp2_pins: pinmux_mcbsp2_pins {
142                 pinctrl-single,pins = <
143                         0x154 (PIN_INPUT_PULLDOWN | MUX_MODE0)  /* abemcbsp2_dr.abemcbsp2_dr */
144                         0x156 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* abemcbsp2_dx.abemcbsp2_dx */
145                         0x158 (PIN_INPUT | MUX_MODE0)           /* abemcbsp2_fsx.abemcbsp2_fsx */
146                         0x15a (PIN_INPUT | MUX_MODE0)           /* abemcbsp2_clkx.abemcbsp2_clkx */
147                 >;
148         };
149
150         i2c1_pins: pinmux_i2c1_pins {
151                 pinctrl-single,pins = <
152                         0x1b2 (PIN_INPUT_PULLUP | MUX_MODE0)    /* i2c1_scl */
153                         0x1b4 (PIN_INPUT_PULLUP | MUX_MODE0)    /* i2c1_sda */
154                 >;
155         };
156
157         i2c5_pins: pinmux_i2c5_pins {
158                 pinctrl-single,pins = <
159                         0x184 (PIN_INPUT | MUX_MODE0)           /* i2c5_scl */
160                         0x186 (PIN_INPUT | MUX_MODE0)           /* i2c5_sda */
161                 >;
162         };
163
164         mcspi2_pins: pinmux_mcspi2_pins {
165                 pinctrl-single,pins = <
166                         0xbc (PIN_INPUT | MUX_MODE0)            /*  mcspi2_clk */
167                         0xbe (PIN_INPUT | MUX_MODE0)            /*  mcspi2_simo */
168                         0xc0 (PIN_INPUT_PULLUP | MUX_MODE0)     /*  mcspi2_somi */
169                         0xc2 (PIN_OUTPUT | MUX_MODE0)           /*  mcspi2_cs0 */
170                 >;
171         };
172
173         mcspi3_pins: pinmux_mcspi3_pins {
174                 pinctrl-single,pins = <
175                         0x78 (PIN_INPUT | MUX_MODE1)            /*  mcspi3_somi */
176                         0x7a (PIN_INPUT | MUX_MODE1)            /*  mcspi3_cs0 */
177                         0x7c (PIN_INPUT | MUX_MODE1)            /*  mcspi3_simo */
178                         0x7e (PIN_INPUT | MUX_MODE1)            /*  mcspi3_clk */
179                 >;
180         };
181
182         mcspi4_pins: pinmux_mcspi4_pins {
183                 pinctrl-single,pins = <
184                         0x164 (PIN_INPUT | MUX_MODE1)           /*  mcspi4_clk */
185                         0x168 (PIN_INPUT | MUX_MODE1)           /*  mcspi4_simo */
186                         0x16a (PIN_INPUT | MUX_MODE1)           /*  mcspi4_somi */
187                         0x16c (PIN_INPUT | MUX_MODE1)           /*  mcspi4_cs0 */
188                 >;
189         };
190
191         usbhost_pins: pinmux_usbhost_pins {
192                 pinctrl-single,pins = <
193                         0x84 (PIN_INPUT | MUX_MODE0) /* usbb2_hsic_strobe */
194                         0x86 (PIN_INPUT | MUX_MODE0) /* usbb2_hsic_data */
195
196                         0x19e (PIN_INPUT | MUX_MODE0) /* usbb3_hsic_strobe */
197                         0x1a0 (PIN_INPUT | MUX_MODE0) /* usbb3_hsic_data */
198
199                         0x70 (PIN_OUTPUT | MUX_MODE6) /* gpio3_80 HUB_NRESET */
200                         0x6e (PIN_OUTPUT | MUX_MODE6) /* gpio3_79 ETH_NRESET */
201                 >;
202         };
203
204         led_gpio_pins: pinmux_led_gpio_pins {
205                 pinctrl-single,pins = <
206                         0x196 (PIN_OUTPUT | MUX_MODE6) /* uart3_cts_rctx.gpio5_153 */
207                 >;
208         };
209
210         uart1_pins: pinmux_uart1_pins {
211                 pinctrl-single,pins = <
212                         0x60 (PIN_OUTPUT | MUX_MODE0) /* uart1_tx.uart1_cts */
213                         0x62 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_tx.uart1_cts */
214                         0x64 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_rx.uart1_rts */
215                         0x66 (PIN_OUTPUT | MUX_MODE0) /* uart1_rx.uart1_rts */
216                 >;
217         };
218
219         uart3_pins: pinmux_uart3_pins {
220                 pinctrl-single,pins = <
221                         0x19a (PIN_OUTPUT | MUX_MODE0) /* uart3_rts_irsd.uart3_tx_irtx */
222                         0x19c (PIN_INPUT_PULLUP | MUX_MODE0) /* uart3_rx_irrx.uart3_usbb3_hsic */
223                 >;
224         };
225
226         uart5_pins: pinmux_uart5_pins {
227                 pinctrl-single,pins = <
228                         0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart5_rx.uart5_rx */
229                         0x172 (PIN_OUTPUT | MUX_MODE0) /* uart5_tx.uart5_tx */
230                         0x174 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart5_cts.uart5_rts */
231                         0x176 (PIN_OUTPUT | MUX_MODE0) /* uart5_cts.uart5_rts */
232                 >;
233         };
234
235         dss_hdmi_pins: pinmux_dss_hdmi_pins {
236                 pinctrl-single,pins = <
237                         0x0fc (PIN_INPUT_PULLUP | MUX_MODE0)    /* hdmi_cec.hdmi_cec */
238                         0x100 (PIN_INPUT | MUX_MODE0)   /* hdmi_ddc_scl.hdmi_ddc_scl */
239                         0x102 (PIN_INPUT | MUX_MODE0)   /* hdmi_ddc_sda.hdmi_ddc_sda */
240                 >;
241         };
242
243         tpd12s015_pins: pinmux_tpd12s015_pins {
244                 pinctrl-single,pins = <
245                         0x0fe (PIN_INPUT_PULLDOWN | MUX_MODE6)  /* hdmi_hpd.gpio7_193 */
246                 >;
247         };
248 };
249
250 &omap5_pmx_wkup {
251         pinctrl-names = "default";
252         pinctrl-0 = <
253                         &usbhost_wkup_pins
254         >;
255
256         usbhost_wkup_pins: pinmux_usbhost_wkup_pins {
257                 pinctrl-single,pins = <
258                         0x1A (PIN_OUTPUT | MUX_MODE0) /* fref_clk1_out, USB hub clk */
259                 >;
260         };
261 };
262
263 &mmc1 {
264         vmmc-supply = <&ldo9_reg>;
265         bus-width = <4>;
266 };
267
268 &mmc2 {
269         vmmc-supply = <&vmmcsd_fixed>;
270         bus-width = <8>;
271         ti,non-removable;
272 };
273
274 &mmc3 {
275         bus-width = <4>;
276         ti,non-removable;
277 };
278
279 &mmc4 {
280         status = "disabled";
281 };
282
283 &mmc5 {
284         status = "disabled";
285 };
286
287 &i2c1 {
288         pinctrl-names = "default";
289         pinctrl-0 = <&i2c1_pins>;
290
291         clock-frequency = <400000>;
292
293         palmas: palmas@48 {
294                 compatible = "ti,palmas";
295                 interrupts = <GIC_SPI 7 IRQ_TYPE_NONE>; /* IRQ_SYS_1N */
296                 interrupt-parent = <&gic>;
297                 reg = <0x48>;
298                 interrupt-controller;
299                 #interrupt-cells = <2>;
300                 ti,system-power-controller;
301
302                 extcon_usb3: palmas_usb {
303                         compatible = "ti,palmas-usb-vid";
304                         ti,enable-vbus-detection;
305                         ti,enable-id-detection;
306                         ti,wakeup;
307                 };
308
309                 palmas_pmic {
310                         compatible = "ti,palmas-pmic";
311                         interrupt-parent = <&palmas>;
312                         interrupts = <14 IRQ_TYPE_NONE>;
313                         interrupt-name = "short-irq";
314
315                         ti,ldo6-vibrator;
316
317                         regulators {
318                                 smps123_reg: smps123 {
319                                         /* VDD_OPP_MPU */
320                                         regulator-name = "smps123";
321                                         regulator-min-microvolt = < 600000>;
322                                         regulator-max-microvolt = <1500000>;
323                                         regulator-always-on;
324                                         regulator-boot-on;
325                                 };
326
327                                 smps45_reg: smps45 {
328                                         /* VDD_OPP_MM */
329                                         regulator-name = "smps45";
330                                         regulator-min-microvolt = < 600000>;
331                                         regulator-max-microvolt = <1310000>;
332                                         regulator-always-on;
333                                         regulator-boot-on;
334                                 };
335
336                                 smps6_reg: smps6 {
337                                         /* VDD_DDR3 - over VDD_SMPS6 */
338                                         regulator-name = "smps6";
339                                         regulator-min-microvolt = <1200000>;
340                                         regulator-max-microvolt = <1200000>;
341                                         regulator-always-on;
342                                         regulator-boot-on;
343                                 };
344
345                                 smps7_reg: smps7 {
346                                         /* VDDS_1v8_OMAP over VDDS_1v8_MAIN */
347                                         regulator-name = "smps7";
348                                         regulator-min-microvolt = <1800000>;
349                                         regulator-max-microvolt = <1800000>;
350                                         regulator-always-on;
351                                         regulator-boot-on;
352                                 };
353
354                                 smps8_reg: smps8 {
355                                         /* VDD_OPP_CORE */
356                                         regulator-name = "smps8";
357                                         regulator-min-microvolt = < 600000>;
358                                         regulator-max-microvolt = <1310000>;
359                                         regulator-always-on;
360                                         regulator-boot-on;
361                                 };
362
363                                 smps9_reg: smps9 {
364                                         /* VDDA_2v1_AUD over VDD_2v1 */
365                                         regulator-name = "smps9";
366                                         regulator-min-microvolt = <2100000>;
367                                         regulator-max-microvolt = <2100000>;
368                                         ti,smps-range = <0x80>;
369                                 };
370
371                                 smps10_out2_reg: smps10_out2 {
372                                         /* VBUS_5V_OTG */
373                                         regulator-name = "smps10_out2";
374                                         regulator-min-microvolt = <5000000>;
375                                         regulator-max-microvolt = <5000000>;
376                                         regulator-always-on;
377                                         regulator-boot-on;
378                                 };
379
380                                 smps10_out1_reg: smps10_out1 {
381                                         /* VBUS_5V_OTG */
382                                         regulator-name = "smps10_out1";
383                                         regulator-min-microvolt = <5000000>;
384                                         regulator-max-microvolt = <5000000>;
385                                 };
386
387                                 ldo1_reg: ldo1 {
388                                         /* VDDAPHY_CAM: vdda_csiport */
389                                         regulator-name = "ldo1";
390                                         regulator-min-microvolt = <1500000>;
391                                         regulator-max-microvolt = <1800000>;
392                                 };
393
394                                 ldo2_reg: ldo2 {
395                                         /* VCC_2V8_DISP: Does not go anywhere */
396                                         regulator-name = "ldo2";
397                                         regulator-min-microvolt = <2800000>;
398                                         regulator-max-microvolt = <2800000>;
399                                         /* Unused */
400                                         status = "disabled";
401                                 };
402
403                                 ldo3_reg: ldo3 {
404                                         /* VDDAPHY_MDM: vdda_lli */
405                                         regulator-name = "ldo3";
406                                         regulator-min-microvolt = <1500000>;
407                                         regulator-max-microvolt = <1500000>;
408                                         regulator-boot-on;
409                                         /* Only if Modem is used */
410                                         status = "disabled";
411                                 };
412
413                                 ldo4_reg: ldo4 {
414                                         /* VDDAPHY_DISP: vdda_dsiport/hdmi */
415                                         regulator-name = "ldo4";
416                                         regulator-min-microvolt = <1500000>;
417                                         regulator-max-microvolt = <1800000>;
418                                 };
419
420                                 ldo5_reg: ldo5 {
421                                         /* VDDA_1V8_PHY: usb/sata/hdmi.. */
422                                         regulator-name = "ldo5";
423                                         regulator-min-microvolt = <1800000>;
424                                         regulator-max-microvolt = <1800000>;
425                                         regulator-always-on;
426                                         regulator-boot-on;
427                                 };
428
429                                 ldo6_reg: ldo6 {
430                                         /* VDDS_1V2_WKUP: hsic/ldo_emu_wkup */
431                                         regulator-name = "ldo6";
432                                         regulator-min-microvolt = <1200000>;
433                                         regulator-max-microvolt = <1200000>;
434                                         regulator-always-on;
435                                         regulator-boot-on;
436                                 };
437
438                                 ldo7_reg: ldo7 {
439                                         /* VDD_VPP: vpp1 */
440                                         regulator-name = "ldo7";
441                                         regulator-min-microvolt = <2000000>;
442                                         regulator-max-microvolt = <2000000>;
443                                         /* Only for efuse reprograming! */
444                                         status = "disabled";
445                                 };
446
447                                 ldo8_reg: ldo8 {
448                                         /* VDD_3v0: Does not go anywhere */
449                                         regulator-name = "ldo8";
450                                         regulator-min-microvolt = <3000000>;
451                                         regulator-max-microvolt = <3000000>;
452                                         regulator-boot-on;
453                                         /* Unused */
454                                         status = "disabled";
455                                 };
456
457                                 ldo9_reg: ldo9 {
458                                         /* VCC_DV_SDIO: vdds_sdcard */
459                                         regulator-name = "ldo9";
460                                         regulator-min-microvolt = <1800000>;
461                                         regulator-max-microvolt = <3000000>;
462                                         regulator-boot-on;
463                                 };
464
465                                 ldoln_reg: ldoln {
466                                         /* VDDA_1v8_REF: vdds_osc/mm_l4per.. */
467                                         regulator-name = "ldoln";
468                                         regulator-min-microvolt = <1800000>;
469                                         regulator-max-microvolt = <1800000>;
470                                         regulator-always-on;
471                                         regulator-boot-on;
472                                 };
473
474                                 ldousb_reg: ldousb {
475                                         /* VDDA_3V_USB: VDDA_USBHS33 */
476                                         regulator-name = "ldousb";
477                                         regulator-min-microvolt = <3250000>;
478                                         regulator-max-microvolt = <3250000>;
479                                         regulator-always-on;
480                                         regulator-boot-on;
481                                 };
482
483                                 regen3_reg: regen3 {
484                                         /* REGEN3 controls LDO9 supply to card */
485                                         regulator-name = "regen3";
486                                         regulator-always-on;
487                                         regulator-boot-on;
488                                 };
489                         };
490                 };
491         };
492 };
493
494 &i2c5 {
495         pinctrl-names = "default";
496         pinctrl-0 = <&i2c5_pins>;
497
498         clock-frequency = <400000>;
499
500         gpio9: gpio@22 {
501                 compatible = "ti,tca6424";
502                 reg = <0x22>;
503                 gpio-controller;
504                 #gpio-cells = <2>;
505         };
506 };
507
508 &mcbsp3 {
509         status = "disabled";
510 };
511
512 &usbhshost {
513         port2-mode = "ehci-hsic";
514         port3-mode = "ehci-hsic";
515 };
516
517 &usbhsehci {
518         phys = <0 &hsusb2_phy &hsusb3_phy>;
519 };
520
521 &usb3 {
522         extcon = <&extcon_usb3>;
523         vbus-supply = <&smps10_out1_reg>;
524 };
525
526 &mcspi1 {
527
528 };
529
530 &mcspi2 {
531         pinctrl-names = "default";
532         pinctrl-0 = <&mcspi2_pins>;
533 };
534
535 &mcspi3 {
536         pinctrl-names = "default";
537         pinctrl-0 = <&mcspi3_pins>;
538 };
539
540 &mcspi4 {
541         pinctrl-names = "default";
542         pinctrl-0 = <&mcspi4_pins>;
543 };
544
545 &uart1 {
546         pinctrl-names = "default";
547         pinctrl-0 = <&uart1_pins>;
548 };
549
550 &uart3 {
551         pinctrl-names = "default";
552         pinctrl-0 = <&uart3_pins>;
553 };
554
555 &uart5 {
556         pinctrl-names = "default";
557         pinctrl-0 = <&uart5_pins>;
558 };
559
560 &cpu0 {
561         cpu0-supply = <&smps123_reg>;
562 };
563
564 &dss {
565         status = "ok";
566 };
567
568 &hdmi {
569         status = "ok";
570         vdda-supply = <&ldo4_reg>;
571
572         pinctrl-names = "default";
573         pinctrl-0 = <&dss_hdmi_pins>;
574
575         port {
576                 hdmi_out: endpoint {
577                         remote-endpoint = <&tpd12s015_in>;
578                 };
579         };
580 };