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