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