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