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