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