Merge branch 'linus' into perf/urgent, to synchronize UAPI headers
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / omap5-board-common.dtsi
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 #include "omap5.dtsi"
9 #include <dt-bindings/interrupt-controller/irq.h>
10 #include <dt-bindings/interrupt-controller/arm-gic.h>
11
12 / {
13         aliases {
14                 display0 = &hdmi0;
15         };
16
17         chosen {
18                 stdout-path = &uart3;
19         };
20
21         vmain: fixedregulator-vmain {
22                 compatible = "regulator-fixed";
23                 regulator-name = "vmain";
24                 regulator-min-microvolt = <5000000>;
25                 regulator-max-microvolt = <5000000>;
26         };
27
28         vsys_cobra: fixedregulator-vsys_cobra {
29                 compatible = "regulator-fixed";
30                 regulator-name = "vsys_cobra";
31                 vin-supply = <&vmain>;
32                 regulator-min-microvolt = <5000000>;
33                 regulator-max-microvolt = <5000000>;
34         };
35
36         vdds_1v8_main: fixedregulator-vdds_1v8_main {
37                 compatible = "regulator-fixed";
38                 regulator-name = "vdds_1v8_main";
39                 vin-supply = <&smps7_reg>;
40                 regulator-min-microvolt = <1800000>;
41                 regulator-max-microvolt = <1800000>;
42         };
43
44         vmmcsd_fixed: fixedregulator-mmcsd {
45                 compatible = "regulator-fixed";
46                 regulator-name = "vmmcsd_fixed";
47                 regulator-min-microvolt = <3000000>;
48                 regulator-max-microvolt = <3000000>;
49         };
50
51         mmc3_pwrseq: sdhci0_pwrseq {
52                 compatible = "mmc-pwrseq-simple";
53                 clocks = <&clk32kgaudio>;
54                 clock-names = "ext_clock";
55         };
56
57         vmmcsdio_fixed: fixedregulator-mmcsdio {
58                 compatible = "regulator-fixed";
59                 regulator-name = "vmmcsdio_fixed";
60                 regulator-min-microvolt = <1800000>;
61                 regulator-max-microvolt = <1800000>;
62                 gpio = <&gpio5 12 GPIO_ACTIVE_HIGH>;    /* gpio140 WLAN_EN */
63                 enable-active-high;
64                 startup-delay-us = <70000>;
65                 pinctrl-names = "default";
66                 pinctrl-0 = <&wlan_pins>;
67         };
68
69         /* HS USB Host PHY on PORT 2 */
70         hsusb2_phy: hsusb2_phy {
71                 compatible = "usb-nop-xceiv";
72                 reset-gpios = <&gpio3 16 GPIO_ACTIVE_LOW>; /* gpio3_80 HUB_NRESET */
73                 clocks = <&auxclk1_ck>;
74                 clock-names = "main_clk";
75                 clock-frequency = <19200000>;
76         };
77
78         /* HS USB Host PHY on PORT 3 */
79         hsusb3_phy: hsusb3_phy {
80                 compatible = "usb-nop-xceiv";
81                 reset-gpios = <&gpio3 15 GPIO_ACTIVE_LOW>; /* gpio3_79 ETH_NRESET */
82         };
83
84         tpd12s015: encoder {
85                 compatible = "ti,tpd12s015";
86
87                 pinctrl-names = "default";
88                 pinctrl-0 = <&tpd12s015_pins>;
89
90                 /* gpios defined in the board specific dts */
91
92                 ports {
93                         #address-cells = <1>;
94                         #size-cells = <0>;
95
96                         port@0 {
97                                 reg = <0>;
98
99                                 tpd12s015_in: endpoint {
100                                         remote-endpoint = <&hdmi_out>;
101                                 };
102                         };
103
104                         port@1 {
105                                 reg = <1>;
106
107                                 tpd12s015_out: endpoint {
108                                         remote-endpoint = <&hdmi_connector_in>;
109                                 };
110                         };
111                 };
112         };
113
114         hdmi0: connector {
115                 compatible = "hdmi-connector";
116                 label = "hdmi";
117
118                 type = "b";
119
120                 port {
121                         hdmi_connector_in: endpoint {
122                                 remote-endpoint = <&tpd12s015_out>;
123                         };
124                 };
125         };
126
127         sound: sound {
128                 compatible = "ti,abe-twl6040";
129                 ti,model = "omap5-uevm";
130
131                 ti,jack-detection;
132                 ti,mclk-freq = <19200000>;
133
134                 ti,mcpdm = <&mcpdm>;
135
136                 ti,twl6040 = <&twl6040>;
137
138                 /* Audio routing */
139                 ti,audio-routing =
140                         "Headset Stereophone", "HSOL",
141                         "Headset Stereophone", "HSOR",
142                         "Line Out", "AUXL",
143                         "Line Out", "AUXR",
144                         "HSMIC", "Headset Mic",
145                         "Headset Mic", "Headset Mic Bias",
146                         "AFML", "Line In",
147                         "AFMR", "Line In";
148         };
149 };
150
151 &gpio8 {
152         /* TI trees use GPIO instead of msecure, see also muxing */
153         p234 {
154                 gpio-hog;
155                 gpios = <10 GPIO_ACTIVE_HIGH>;
156                 output-high;
157                 line-name = "gpio8_234/msecure";
158         };
159 };
160
161 &omap5_pmx_core {
162         pinctrl-names = "default";
163         pinctrl-0 = <
164                         &usbhost_pins
165                         &led_gpio_pins
166         >;
167
168         twl6040_pins: pinmux_twl6040_pins {
169                 pinctrl-single,pins = <
170                         OMAP5_IOPAD(0x1be, PIN_OUTPUT | MUX_MODE6)      /* mcspi1_somi.gpio5_141 */
171                 >;
172         };
173
174         mcpdm_pins: pinmux_mcpdm_pins {
175                 pinctrl-single,pins = <
176                         OMAP5_IOPAD(0x182, PIN_INPUT_PULLDOWN | MUX_MODE0)      /* abe_clks.abe_clks */
177                         OMAP5_IOPAD(0x19c, PIN_INPUT_PULLDOWN | MUX_MODE0)      /* abemcpdm_ul_data.abemcpdm_ul_data */
178                         OMAP5_IOPAD(0x19e, PIN_INPUT_PULLDOWN | MUX_MODE0)      /* abemcpdm_dl_data.abemcpdm_dl_data */
179                         OMAP5_IOPAD(0x1a0, PIN_INPUT_PULLUP | MUX_MODE0)        /* abemcpdm_frame.abemcpdm_frame */
180                         OMAP5_IOPAD(0x1a2, PIN_INPUT_PULLDOWN | MUX_MODE0)      /* abemcpdm_lb_clk.abemcpdm_lb_clk */
181                 >;
182         };
183
184         mcbsp1_pins: pinmux_mcbsp1_pins {
185                 pinctrl-single,pins = <
186                         OMAP5_IOPAD(0x18c, PIN_INPUT | MUX_MODE1)               /* abedmic_clk2.abemcbsp1_fsx */
187                         OMAP5_IOPAD(0x18e, PIN_OUTPUT_PULLDOWN | MUX_MODE1)     /* abedmic_clk3.abemcbsp1_dx */
188                         OMAP5_IOPAD(0x190, PIN_INPUT | MUX_MODE1)               /* abeslimbus1_clock.abemcbsp1_clkx */
189                         OMAP5_IOPAD(0x192, PIN_INPUT_PULLDOWN | MUX_MODE1)      /* abeslimbus1_data.abemcbsp1_dr */
190                 >;
191         };
192
193         mcbsp2_pins: pinmux_mcbsp2_pins {
194                 pinctrl-single,pins = <
195                         OMAP5_IOPAD(0x194, PIN_INPUT_PULLDOWN | MUX_MODE0)      /* abemcbsp2_dr.abemcbsp2_dr */
196                         OMAP5_IOPAD(0x196, PIN_OUTPUT_PULLDOWN | MUX_MODE0)     /* abemcbsp2_dx.abemcbsp2_dx */
197                         OMAP5_IOPAD(0x198, PIN_INPUT | MUX_MODE0)               /* abemcbsp2_fsx.abemcbsp2_fsx */
198                         OMAP5_IOPAD(0x19a, PIN_INPUT | MUX_MODE0)               /* abemcbsp2_clkx.abemcbsp2_clkx */
199                 >;
200         };
201
202         i2c1_pins: pinmux_i2c1_pins {
203                 pinctrl-single,pins = <
204                         OMAP5_IOPAD(0x1f2, PIN_INPUT_PULLUP | MUX_MODE0)        /* i2c1_scl */
205                         OMAP5_IOPAD(0x1f4, PIN_INPUT_PULLUP | MUX_MODE0)        /* i2c1_sda */
206                 >;
207         };
208
209         mcspi2_pins: pinmux_mcspi2_pins {
210                 pinctrl-single,pins = <
211                         OMAP5_IOPAD(0x0fc, PIN_INPUT | MUX_MODE0)               /*  mcspi2_clk */
212                         OMAP5_IOPAD(0x0fe, PIN_INPUT | MUX_MODE0)               /*  mcspi2_simo */
213                         OMAP5_IOPAD(0x100, PIN_INPUT_PULLUP | MUX_MODE0)        /*  mcspi2_somi */
214                         OMAP5_IOPAD(0x102, PIN_OUTPUT | MUX_MODE0)              /*  mcspi2_cs0 */
215                 >;
216         };
217
218         mcspi3_pins: pinmux_mcspi3_pins {
219                 pinctrl-single,pins = <
220                         OMAP5_IOPAD(0x0b8, PIN_INPUT | MUX_MODE1)               /*  mcspi3_somi */
221                         OMAP5_IOPAD(0x0ba, PIN_INPUT | MUX_MODE1)               /*  mcspi3_cs0 */
222                         OMAP5_IOPAD(0x0bc, PIN_INPUT | MUX_MODE1)               /*  mcspi3_simo */
223                         OMAP5_IOPAD(0x0be, PIN_INPUT | MUX_MODE1)               /*  mcspi3_clk */
224                 >;
225         };
226
227         mmc3_pins: pinmux_mmc3_pins {
228                 pinctrl-single,pins = <
229                         OMAP5_IOPAD(0x01a4, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_clk */
230                         OMAP5_IOPAD(0x01a6, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_cmd */
231                         OMAP5_IOPAD(0x01a8, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_data0 */
232                         OMAP5_IOPAD(0x01aa, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_data1 */
233                         OMAP5_IOPAD(0x01ac, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_data2 */
234                         OMAP5_IOPAD(0x01ae, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_data3 */
235                 >;
236         };
237
238         wlan_pins: pinmux_wlan_pins {
239                 pinctrl-single,pins = <
240                         OMAP5_IOPAD(0x1bc, PIN_OUTPUT | MUX_MODE6) /* mcspi1_clk.gpio5_140 */
241                 >;
242         };
243
244         /* TI trees use GPIO mode; msecure mode does not work reliably? */
245         palmas_msecure_pins: palmas_msecure_pins {
246                 pinctrl-single,pins = <
247                         OMAP5_IOPAD(0x180, PIN_OUTPUT | MUX_MODE6) /* gpio8_234 */
248                 >;
249         };
250
251         usbhost_pins: pinmux_usbhost_pins {
252                 pinctrl-single,pins = <
253                         OMAP5_IOPAD(0x0c4, PIN_INPUT | MUX_MODE0) /* usbb2_hsic_strobe */
254                         OMAP5_IOPAD(0x0c6, PIN_INPUT | MUX_MODE0) /* usbb2_hsic_data */
255
256                         OMAP5_IOPAD(0x1de, PIN_INPUT | MUX_MODE0) /* usbb3_hsic_strobe */
257                         OMAP5_IOPAD(0x1e0, PIN_INPUT | MUX_MODE0) /* usbb3_hsic_data */
258
259                         OMAP5_IOPAD(0x0b0, PIN_OUTPUT | MUX_MODE6) /* gpio3_80 HUB_NRESET */
260                         OMAP5_IOPAD(0x0ae, PIN_OUTPUT | MUX_MODE6) /* gpio3_79 ETH_NRESET */
261                 >;
262         };
263
264         led_gpio_pins: pinmux_led_gpio_pins {
265                 pinctrl-single,pins = <
266                         OMAP5_IOPAD(0x1d6, PIN_OUTPUT | MUX_MODE6) /* uart3_cts_rctx.gpio5_153 */
267                 >;
268         };
269
270         uart1_pins: pinmux_uart1_pins {
271                 pinctrl-single,pins = <
272                         OMAP5_IOPAD(0x0a0, PIN_OUTPUT | MUX_MODE0) /* uart1_tx.uart1_cts */
273                         OMAP5_IOPAD(0x0a2, PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_tx.uart1_cts */
274                         OMAP5_IOPAD(0x0a4, PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_rx.uart1_rts */
275                         OMAP5_IOPAD(0x0a6, PIN_OUTPUT | MUX_MODE0) /* uart1_rx.uart1_rts */
276                 >;
277         };
278
279         uart3_pins: pinmux_uart3_pins {
280                 pinctrl-single,pins = <
281                         OMAP5_IOPAD(0x1da, PIN_OUTPUT | MUX_MODE0) /* uart3_rts_irsd.uart3_tx_irtx */
282                         OMAP5_IOPAD(0x1dc, PIN_INPUT_PULLUP | MUX_MODE0) /* uart3_rx_irrx.uart3_usbb3_hsic */
283                 >;
284         };
285
286         uart5_pins: pinmux_uart5_pins {
287                 pinctrl-single,pins = <
288                         OMAP5_IOPAD(0x1b0, PIN_INPUT_PULLUP | MUX_MODE0) /* uart5_rx.uart5_rx */
289                         OMAP5_IOPAD(0x1b2, PIN_OUTPUT | MUX_MODE0) /* uart5_tx.uart5_tx */
290                         OMAP5_IOPAD(0x1b4, PIN_INPUT_PULLUP | MUX_MODE0) /* uart5_cts.uart5_rts */
291                         OMAP5_IOPAD(0x1b6, PIN_OUTPUT | MUX_MODE0) /* uart5_cts.uart5_rts */
292                 >;
293         };
294
295         dss_hdmi_pins: pinmux_dss_hdmi_pins {
296                 pinctrl-single,pins = <
297                         OMAP5_IOPAD(0x13c, PIN_INPUT | MUX_MODE0)       /* hdmi_cec.hdmi_cec */
298                         OMAP5_IOPAD(0x140, PIN_INPUT | MUX_MODE0)       /* hdmi_ddc_scl.hdmi_ddc_scl */
299                         OMAP5_IOPAD(0x142, PIN_INPUT | MUX_MODE0)       /* hdmi_ddc_sda.hdmi_ddc_sda */
300                 >;
301         };
302
303         tpd12s015_pins: pinmux_tpd12s015_pins {
304                 pinctrl-single,pins = <
305                         OMAP5_IOPAD(0x13e, PIN_INPUT_PULLDOWN | MUX_MODE6)      /* hdmi_hpd.gpio7_193 */
306                 >;
307         };
308 };
309
310 &omap5_pmx_wkup {
311         pinctrl-names = "default";
312         pinctrl-0 = <
313                         &usbhost_wkup_pins
314         >;
315
316         palmas_sys_nirq_pins: pinmux_palmas_sys_nirq_pins {
317                 pinctrl-single,pins = <
318                         OMAP5_IOPAD(0x068, PIN_INPUT_PULLUP | MUX_MODE0) /* sys_nirq1 */
319                 >;
320         };
321
322         usbhost_wkup_pins: pinmux_usbhost_wkup_pins {
323                 pinctrl-single,pins = <
324                         OMAP5_IOPAD(0x05a, PIN_OUTPUT | MUX_MODE0) /* fref_clk1_out, USB hub clk */
325                 >;
326         };
327
328         wlcore_irq_pin: pinmux_wlcore_irq_pin {
329                 pinctrl-single,pins = <
330                         OMAP5_IOPAD(0x40, PIN_INPUT | MUX_MODE6)        /* llia_wakereqin.gpio1_wk14 */
331                 >;
332         };
333 };
334
335 &mmc1 {
336         vmmc-supply = <&ldo9_reg>;
337         bus-width = <4>;
338 };
339
340 &mmc2 {
341         vmmc-supply = <&vmmcsd_fixed>;
342         bus-width = <8>;
343         ti,non-removable;
344 };
345
346 &mmc3 {
347         vmmc-supply = <&vmmcsdio_fixed>;
348         mmc-pwrseq = <&mmc3_pwrseq>;
349         bus-width = <4>;
350         non-removable;
351         cap-power-off-card;
352         pinctrl-names = "default";
353         pinctrl-0 = <&mmc3_pins>;
354         interrupts-extended = <&wakeupgen GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH
355                                &omap5_pmx_core 0x16a>;
356
357         #address-cells = <1>;
358         #size-cells = <0>;
359         wlcore: wlcore@2 {
360                 compatible = "ti,wl1271";
361                 reg = <2>;
362                 pinctrl-names = "default";
363                 pinctrl-0 = <&wlcore_irq_pin>;
364                 interrupt-parent = <&gpio1>;
365                 interrupts = <14 IRQ_TYPE_LEVEL_HIGH>;  /* gpio 14 */
366                 ref-clock-frequency = <26000000>;
367         };
368 };
369
370 &mmc4 {
371         status = "disabled";
372 };
373
374 &mmc5 {
375         status = "disabled";
376 };
377
378 &i2c1 {
379         pinctrl-names = "default";
380         pinctrl-0 = <&i2c1_pins>;
381
382         clock-frequency = <400000>;
383
384         palmas: palmas@48 {
385                 compatible = "ti,palmas";
386                 interrupts = <GIC_SPI 7 IRQ_TYPE_NONE>; /* IRQ_SYS_1N */
387                 reg = <0x48>;
388                 interrupt-controller;
389                 #interrupt-cells = <2>;
390                 ti,system-power-controller;
391                 ti,mux-pad1 = <0xa1>;
392                 ti,mux-pad2 = <0x1b>;
393                 pinctrl-names = "default";
394                 pinctrl-0 = <&palmas_sys_nirq_pins &palmas_msecure_pins>;
395
396                 palmas_gpio: gpio {
397                         compatible = "ti,palmas-gpio";
398                         gpio-controller;
399                         #gpio-cells = <2>;
400                 };
401
402                 extcon_usb3: palmas_usb {
403                         compatible = "ti,palmas-usb-vid";
404                         ti,enable-vbus-detection;
405                         ti,enable-id-detection;
406                         ti,wakeup;
407                         id-gpios = <&palmas_gpio 0 GPIO_ACTIVE_HIGH>;
408                 };
409
410                 clk32kgaudio: palmas_clk32k@1 {
411                         compatible = "ti,palmas-clk32kgaudio";
412                         #clock-cells = <0>;
413                 };
414
415                 rtc {
416                         compatible = "ti,palmas-rtc";
417                         interrupt-parent = <&palmas>;
418                         interrupts = <8 IRQ_TYPE_NONE>;
419                         ti,backup-battery-chargeable;
420                         ti,backup-battery-charge-high-current;
421                 };
422
423                 gpadc: gpadc {
424                         compatible = "ti,palmas-gpadc";
425                         interrupts = <18 0
426                                       16 0
427                                       17 0>;
428                         #io-channel-cells = <1>;
429                         ti,channel0-current-microamp = <5>;
430                         ti,channel3-current-microamp = <10>;
431                 };
432
433                 palmas_pmic {
434                         compatible = "ti,palmas-pmic";
435                         interrupt-parent = <&palmas>;
436                         interrupts = <14 IRQ_TYPE_NONE>;
437                         interrupt-names = "short-irq";
438
439                         ti,ldo6-vibrator;
440
441                         smps123-in-supply = <&vsys_cobra>;
442                         smps45-in-supply = <&vsys_cobra>;
443                         smps6-in-supply = <&vsys_cobra>;
444                         smps7-in-supply = <&vsys_cobra>;
445                         smps8-in-supply = <&vsys_cobra>;
446                         smps9-in-supply = <&vsys_cobra>;
447                         smps10_out2-in-supply = <&vsys_cobra>;
448                         smps10_out1-in-supply = <&vsys_cobra>;
449                         ldo1-in-supply = <&vsys_cobra>;
450                         ldo2-in-supply = <&vsys_cobra>;
451                         ldo3-in-supply = <&vdds_1v8_main>;
452                         ldo4-in-supply = <&vdds_1v8_main>;
453                         ldo5-in-supply = <&vsys_cobra>;
454                         ldo6-in-supply = <&vdds_1v8_main>;
455                         ldo7-in-supply = <&vsys_cobra>;
456                         ldo8-in-supply = <&vsys_cobra>;
457                         ldo9-in-supply = <&vmmcsd_fixed>;
458                         ldoln-in-supply = <&vsys_cobra>;
459                         ldousb-in-supply = <&vsys_cobra>;
460
461                         regulators {
462                                 smps123_reg: smps123 {
463                                         /* VDD_OPP_MPU */
464                                         regulator-name = "smps123";
465                                         regulator-min-microvolt = < 600000>;
466                                         regulator-max-microvolt = <1500000>;
467                                         regulator-always-on;
468                                         regulator-boot-on;
469                                 };
470
471                                 smps45_reg: smps45 {
472                                         /* VDD_OPP_MM */
473                                         regulator-name = "smps45";
474                                         regulator-min-microvolt = < 600000>;
475                                         regulator-max-microvolt = <1310000>;
476                                         regulator-always-on;
477                                         regulator-boot-on;
478                                 };
479
480                                 smps6_reg: smps6 {
481                                         /* VDD_DDR3 - over VDD_SMPS6 */
482                                         regulator-name = "smps6";
483                                         regulator-min-microvolt = <1350000>;
484                                         regulator-max-microvolt = <1350000>;
485                                         regulator-always-on;
486                                         regulator-boot-on;
487                                 };
488
489                                 smps7_reg: smps7 {
490                                         /* VDDS_1v8_OMAP over VDDS_1v8_MAIN */
491                                         regulator-name = "smps7";
492                                         regulator-min-microvolt = <1800000>;
493                                         regulator-max-microvolt = <1800000>;
494                                         regulator-always-on;
495                                         regulator-boot-on;
496                                 };
497
498                                 smps8_reg: smps8 {
499                                         /* VDD_OPP_CORE */
500                                         regulator-name = "smps8";
501                                         regulator-min-microvolt = < 600000>;
502                                         regulator-max-microvolt = <1310000>;
503                                         regulator-always-on;
504                                         regulator-boot-on;
505                                 };
506
507                                 smps9_reg: smps9 {
508                                         /* VDDA_2v1_AUD over VDD_2v1 */
509                                         regulator-name = "smps9";
510                                         regulator-min-microvolt = <2100000>;
511                                         regulator-max-microvolt = <2100000>;
512                                         ti,smps-range = <0x80>;
513                                 };
514
515                                 smps10_out2_reg: smps10_out2 {
516                                         /* VBUS_5V_OTG */
517                                         regulator-name = "smps10_out2";
518                                         regulator-min-microvolt = <5000000>;
519                                         regulator-max-microvolt = <5000000>;
520                                         regulator-always-on;
521                                         regulator-boot-on;
522                                 };
523
524                                 smps10_out1_reg: smps10_out1 {
525                                         /* VBUS_5V_OTG */
526                                         regulator-name = "smps10_out1";
527                                         regulator-min-microvolt = <5000000>;
528                                         regulator-max-microvolt = <5000000>;
529                                 };
530
531                                 ldo1_reg: ldo1 {
532                                         /* VDDAPHY_CAM: vdda_csiport */
533                                         regulator-name = "ldo1";
534                                         regulator-min-microvolt = <1800000>;
535                                         regulator-max-microvolt = <1800000>;
536                                 };
537
538                                 ldo2_reg: ldo2 {
539                                         /* VCC_2V8_DISP: Does not go anywhere */
540                                         regulator-name = "ldo2";
541                                         regulator-min-microvolt = <2800000>;
542                                         regulator-max-microvolt = <2800000>;
543                                         /* Unused */
544                                         status = "disabled";
545                                 };
546
547                                 ldo3_reg: ldo3 {
548                                         /* VDDAPHY_MDM: vdda_lli */
549                                         regulator-name = "ldo3";
550                                         regulator-min-microvolt = <1500000>;
551                                         regulator-max-microvolt = <1500000>;
552                                         regulator-boot-on;
553                                         /* Only if Modem is used */
554                                         status = "disabled";
555                                 };
556
557                                 ldo4_reg: ldo4 {
558                                         /* VDDAPHY_DISP: vdda_dsiport/hdmi */
559                                         regulator-name = "ldo4";
560                                         regulator-min-microvolt = <1800000>;
561                                         regulator-max-microvolt = <1800000>;
562                                 };
563
564                                 ldo5_reg: ldo5 {
565                                         /* VDDA_1V8_PHY: usb/sata/hdmi.. */
566                                         regulator-name = "ldo5";
567                                         regulator-min-microvolt = <1800000>;
568                                         regulator-max-microvolt = <1800000>;
569                                         regulator-always-on;
570                                         regulator-boot-on;
571                                 };
572
573                                 ldo6_reg: ldo6 {
574                                         /* VDDS_1V2_WKUP: hsic/ldo_emu_wkup */
575                                         regulator-name = "ldo6";
576                                         regulator-min-microvolt = <1200000>;
577                                         regulator-max-microvolt = <1200000>;
578                                         regulator-always-on;
579                                         regulator-boot-on;
580                                 };
581
582                                 ldo7_reg: ldo7 {
583                                         /* VDD_VPP: vpp1 */
584                                         regulator-name = "ldo7";
585                                         regulator-min-microvolt = <2000000>;
586                                         regulator-max-microvolt = <2000000>;
587                                         /* Only for efuse reprograming! */
588                                         status = "disabled";
589                                 };
590
591                                 ldo8_reg: ldo8 {
592                                         /* VDD_3v0: Does not go anywhere */
593                                         regulator-name = "ldo8";
594                                         regulator-min-microvolt = <3000000>;
595                                         regulator-max-microvolt = <3000000>;
596                                         regulator-boot-on;
597                                         /* Unused */
598                                         status = "disabled";
599                                 };
600
601                                 ldo9_reg: ldo9 {
602                                         /* VCC_DV_SDIO: vdds_sdcard */
603                                         regulator-name = "ldo9";
604                                         regulator-min-microvolt = <1800000>;
605                                         regulator-max-microvolt = <3000000>;
606                                         regulator-boot-on;
607                                 };
608
609                                 ldoln_reg: ldoln {
610                                         /* VDDA_1v8_REF: vdds_osc/mm_l4per.. */
611                                         regulator-name = "ldoln";
612                                         regulator-min-microvolt = <1800000>;
613                                         regulator-max-microvolt = <1800000>;
614                                         regulator-always-on;
615                                         regulator-boot-on;
616                                 };
617
618                                 ldousb_reg: ldousb {
619                                         /* VDDA_3V_USB: VDDA_USBHS33 */
620                                         regulator-name = "ldousb";
621                                         regulator-min-microvolt = <3250000>;
622                                         regulator-max-microvolt = <3250000>;
623                                         regulator-always-on;
624                                         regulator-boot-on;
625                                 };
626
627                                 regen3_reg: regen3 {
628                                         /* REGEN3 controls LDO9 supply to card */
629                                         regulator-name = "regen3";
630                                         regulator-always-on;
631                                         regulator-boot-on;
632                                 };
633                         };
634                 };
635
636                 palmas_power_button: palmas_power_button {
637                         compatible = "ti,palmas-pwrbutton";
638                         interrupt-parent = <&palmas>;
639                         interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
640                         wakeup-source;
641                 };
642         };
643
644         twl6040: twl@4b {
645                 compatible = "ti,twl6040";
646                 #clock-cells = <0>;
647                 reg = <0x4b>;
648
649                 pinctrl-names = "default";
650                 pinctrl-0 = <&twl6040_pins>;
651
652                 interrupts = <GIC_SPI 119 IRQ_TYPE_NONE>; /* IRQ_SYS_2N cascaded to gic */
653
654                 /* audpwron gpio defined in the board specific dts */
655
656                 vio-supply = <&smps7_reg>;
657                 v2v1-supply = <&smps9_reg>;
658                 enable-active-high;
659
660                 clocks = <&clk32kgaudio>;
661                 clock-names = "clk32k";
662         };
663 };
664
665 &mcpdm {
666         pinctrl-names = "default";
667         pinctrl-0 = <&mcpdm_pins>;
668
669         clocks = <&twl6040>;
670         clock-names = "pdmclk";
671
672         status = "okay";
673 };
674
675 &mcbsp1 {
676         pinctrl-names = "default";
677         pinctrl-0 = <&mcbsp1_pins>;
678         status = "okay";
679 };
680
681 &mcbsp2 {
682         pinctrl-names = "default";
683         pinctrl-0 = <&mcbsp2_pins>;
684         status = "okay";
685 };
686
687 &usbhshost {
688         port2-mode = "ehci-hsic";
689         port3-mode = "ehci-hsic";
690 };
691
692 &usbhsehci {
693         phys = <0 &hsusb2_phy &hsusb3_phy>;
694 };
695
696 &usb3 {
697         extcon = <&extcon_usb3>;
698         vbus-supply = <&smps10_out1_reg>;
699 };
700
701 &mcspi1 {
702
703 };
704
705 &mcspi2 {
706         pinctrl-names = "default";
707         pinctrl-0 = <&mcspi2_pins>;
708 };
709
710 &mcspi3 {
711         pinctrl-names = "default";
712         pinctrl-0 = <&mcspi3_pins>;
713 };
714
715 &uart1 {
716         pinctrl-names = "default";
717         pinctrl-0 = <&uart1_pins>;
718 };
719
720 &uart3 {
721         pinctrl-names = "default";
722         pinctrl-0 = <&uart3_pins>;
723         interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>,
724                               <&omap5_pmx_core 0x19c>;
725 };
726
727 &uart5 {
728         pinctrl-names = "default";
729         pinctrl-0 = <&uart5_pins>;
730 };
731
732 &cpu0 {
733         cpu0-supply = <&smps123_reg>;
734 };
735
736 &dss {
737         status = "ok";
738 };
739
740 &hdmi {
741         status = "ok";
742
743         /* vdda-supply populated in board specific dts file */
744
745         pinctrl-names = "default";
746         pinctrl-0 = <&dss_hdmi_pins>;
747
748         port {
749                 hdmi_out: endpoint {
750                         remote-endpoint = <&tpd12s015_in>;
751                 };
752         };
753 };