blob: 1eedd8d706ac4455548e85cb09f28789700b431d [file] [log] [blame]
Tero Kristobf4f5972020-06-16 11:03:09 +03001// 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 {
Roger Quadros0ffbc742021-08-24 14:07:27 +0300746 status = "okay";
Tero Kristobf4f5972020-06-16 11:03:09 +0300747};
748
749&hdmi {
Roger Quadros0ffbc742021-08-24 14:07:27 +0300750 status = "okay";
Tero Kristobf4f5972020-06-16 11:03:09 +0300751
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};