xref: /linux/scripts/dtc/include-prefixes/arm/ti/omap/motorola-mapphone-common.dtsi (revision 06d07429858317ded2db7986113a9e0129cd599b)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-only
2724ba675SRob Herring/dts-v1/;
3724ba675SRob Herring
4724ba675SRob Herring#include <dt-bindings/input/input.h>
5724ba675SRob Herring#include "omap443x.dtsi"
6724ba675SRob Herring#include "motorola-cpcap-mapphone.dtsi"
7724ba675SRob Herring
8724ba675SRob Herring/ {
9724ba675SRob Herring	/*
10724ba675SRob Herring	 * We seem to have only 1021 MB accessible, 1021 - 1022 is locked,
11724ba675SRob Herring	 * then 1023 - 1024 seems to contain mbm.
12724ba675SRob Herring	 */
13724ba675SRob Herring	memory {
14724ba675SRob Herring		device_type = "memory";
15724ba675SRob Herring		reg = <0x80000000 0x3fd00000>;	/* 1021 MB */
16724ba675SRob Herring	};
17724ba675SRob Herring
18724ba675SRob Herring	/* Poweroff GPIO probably connected to CPCAP */
19724ba675SRob Herring	gpio-poweroff {
20724ba675SRob Herring		compatible = "gpio-poweroff";
21724ba675SRob Herring		pinctrl-0 = <&poweroff_gpio>;
22724ba675SRob Herring		pinctrl-names = "default";
23724ba675SRob Herring		gpios = <&gpio2 18 GPIO_ACTIVE_LOW>;	/* gpio50 */
24724ba675SRob Herring	};
25724ba675SRob Herring
26724ba675SRob Herring	hdmi0: connector {
27724ba675SRob Herring		compatible = "hdmi-connector";
28724ba675SRob Herring		pinctrl-0 = <&hdmi_hpd_gpio>;
29724ba675SRob Herring		pinctrl-names = "default";
30724ba675SRob Herring		label = "hdmi";
31724ba675SRob Herring		type = "d";
32724ba675SRob Herring
33724ba675SRob Herring		hpd-gpios = <&gpio2 31 GPIO_ACTIVE_HIGH>;	/* gpio63 */
34724ba675SRob Herring
35724ba675SRob Herring		port {
36724ba675SRob Herring			hdmi_connector_in: endpoint {
37724ba675SRob Herring				remote-endpoint = <&hdmi_out>;
38724ba675SRob Herring			};
39724ba675SRob Herring		};
40724ba675SRob Herring	};
41724ba675SRob Herring
42724ba675SRob Herring	/*
43724ba675SRob Herring	 * HDMI 5V regulator probably sourced from battery. Let's keep
44724ba675SRob Herring	 * keep this as always enabled for HDMI to work until we've
45724ba675SRob Herring	 * figured what the encoder chip is.
46724ba675SRob Herring	 */
47724ba675SRob Herring	hdmi_regulator: regulator-hdmi {
48724ba675SRob Herring		compatible = "regulator-fixed";
49724ba675SRob Herring		regulator-name = "hdmi";
50724ba675SRob Herring		regulator-min-microvolt = <5000000>;
51724ba675SRob Herring		regulator-max-microvolt = <5000000>;
52724ba675SRob Herring		gpio = <&gpio2 27 GPIO_ACTIVE_HIGH>;	/* gpio59 */
53724ba675SRob Herring		enable-active-high;
54724ba675SRob Herring		regulator-always-on;
55724ba675SRob Herring	};
56724ba675SRob Herring
57724ba675SRob Herring	/* This is probably coming straight from the battery.. */
58724ba675SRob Herring	wl12xx_vmmc: regulator-wl12xx {
59724ba675SRob Herring		compatible = "regulator-fixed";
60724ba675SRob Herring		regulator-name = "vwl1271";
61724ba675SRob Herring		regulator-min-microvolt = <1650000>;
62724ba675SRob Herring		regulator-max-microvolt = <1650000>;
63724ba675SRob Herring		gpio = <&gpio3 30 GPIO_ACTIVE_HIGH>;	/* gpio94 */
64724ba675SRob Herring		startup-delay-us = <70000>;
65724ba675SRob Herring		enable-active-high;
66724ba675SRob Herring	};
67724ba675SRob Herring
68724ba675SRob Herring	soundcard {
69724ba675SRob Herring		compatible = "audio-graph-card";
70724ba675SRob Herring		label = "Mapphone Audio";
71724ba675SRob Herring
72724ba675SRob Herring		widgets =
73724ba675SRob Herring			"Speaker", "Earpiece",
74724ba675SRob Herring			"Speaker", "Loudspeaker",
75724ba675SRob Herring			"Headphone", "Headphone Jack",
76724ba675SRob Herring			"Microphone", "Internal Mic";
77724ba675SRob Herring
78724ba675SRob Herring		routing =
79724ba675SRob Herring			"Earpiece", "EP",
80724ba675SRob Herring			"Loudspeaker", "SPKR",
81724ba675SRob Herring			"Headphone Jack", "HSL",
82724ba675SRob Herring			"Headphone Jack", "HSR",
83724ba675SRob Herring			"MICR", "Internal Mic";
84724ba675SRob Herring
85724ba675SRob Herring		dais = <&mcbsp2_port>, <&mcbsp3_port>;
86724ba675SRob Herring	};
87724ba675SRob Herring};
88724ba675SRob Herring
89724ba675SRob Herring&cpu_thermal {
90724ba675SRob Herring	polling-delay = <10000>; /* milliseconds */
91724ba675SRob Herring};
92724ba675SRob Herring
93724ba675SRob Herring&cpu_alert0 {
94724ba675SRob Herring        temperature = <80000>; /* millicelsius */
95724ba675SRob Herring};
96724ba675SRob Herring
97724ba675SRob Herring&cpu0 {
98724ba675SRob Herring        /*
99724ba675SRob Herring	 * Note that the 1.2GiHz mode is enabled for all SoC variants for
100724ba675SRob Herring	 * the Motorola Android Linux v3.0.8 based kernel.
101724ba675SRob Herring	 */
102724ba675SRob Herring        operating-points = <
103724ba675SRob Herring	        /* kHz    uV */
104724ba675SRob Herring	        300000  1025000
105724ba675SRob Herring	        600000  1200000
106724ba675SRob Herring	        800000  1313000
107724ba675SRob Herring	        1008000 1375000
108724ba675SRob Herring		1200000 1375000
109724ba675SRob Herring        >;
110724ba675SRob Herring};
111724ba675SRob Herring
112724ba675SRob Herring&dss {
113724ba675SRob Herring	status = "okay";
114724ba675SRob Herring};
115724ba675SRob Herring
116724ba675SRob Herring&hdmi {
117724ba675SRob Herring	status = "okay";
118724ba675SRob Herring	pinctrl-0 = <&dss_hdmi_pins>;
119724ba675SRob Herring	pinctrl-names = "default";
120724ba675SRob Herring	vdda-supply = <&vdac>;
121724ba675SRob Herring
122724ba675SRob Herring	port {
123724ba675SRob Herring		hdmi_out: endpoint {
124724ba675SRob Herring			remote-endpoint = <&hdmi_connector_in>;
125724ba675SRob Herring			lanes = <1 0 3 2 5 4 7 6>;
126724ba675SRob Herring		};
127724ba675SRob Herring	};
128724ba675SRob Herring};
129724ba675SRob Herring
130724ba675SRob Herring&i2c1 {
131724ba675SRob Herring	tmp105@48 {
132724ba675SRob Herring		compatible = "ti,tmp105";
133724ba675SRob Herring		reg = <0x48>;
134724ba675SRob Herring		pinctrl-0 = <&tmp105_irq>;
135724ba675SRob Herring		pinctrl-names = "default";
136724ba675SRob Herring		/* kpd_row0.gpio_178 */
137724ba675SRob Herring		interrupts-extended = <&gpio6 18 IRQ_TYPE_EDGE_FALLING
138724ba675SRob Herring				       &omap4_pmx_core 0x14e>;
139724ba675SRob Herring		interrupt-names = "irq", "wakeup";
140724ba675SRob Herring		wakeup-source;
141724ba675SRob Herring	};
142724ba675SRob Herring};
143724ba675SRob Herring
144724ba675SRob Herring&mmc1 {
145724ba675SRob Herring	vmmc-supply = <&vwlan2>;
146724ba675SRob Herring	bus-width = <4>;
147724ba675SRob Herring	cd-gpios = <&gpio6 16 GPIO_ACTIVE_LOW>;	/* gpio176 */
148724ba675SRob Herring};
149724ba675SRob Herring
150724ba675SRob Herring&mmc2 {
151724ba675SRob Herring	vmmc-supply = <&vsdio>;
152724ba675SRob Herring	bus-width = <8>;
153724ba675SRob Herring	ti,non-removable;
154724ba675SRob Herring};
155724ba675SRob Herring
156724ba675SRob Herring&mmc3 {
157724ba675SRob Herring	pinctrl-names = "default";
158724ba675SRob Herring	pinctrl-0 = <&mmc3_pins>;
159724ba675SRob Herring	vmmc-supply = <&wl12xx_vmmc>;
160724ba675SRob Herring	/* uart2_tx.sdmmc3_dat1 pad as wakeirq */
161724ba675SRob Herring	interrupts-extended = <&wakeupgen GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH
162724ba675SRob Herring			       &omap4_pmx_core 0xde>;
163724ba675SRob Herring	interrupt-names = "irq", "wakeup";
164724ba675SRob Herring	non-removable;
165724ba675SRob Herring	bus-width = <4>;
166724ba675SRob Herring	cap-power-off-card;
167724ba675SRob Herring	keep-power-in-suspend;
168724ba675SRob Herring
169724ba675SRob Herring	#address-cells = <1>;
170724ba675SRob Herring	#size-cells = <0>;
171724ba675SRob Herring	wlcore: wlcore@2 {
172724ba675SRob Herring		compatible = "ti,wl1285";
173724ba675SRob Herring		reg = <2>;
174724ba675SRob Herring		/* gpio_100 with gpmc_wait2 pad as wakeirq */
175724ba675SRob Herring		interrupts-extended = <&gpio4 4 IRQ_TYPE_LEVEL_HIGH>,
176724ba675SRob Herring				      <&omap4_pmx_core 0x4e>;
177724ba675SRob Herring		interrupt-names = "irq", "wakeup";
178724ba675SRob Herring		ref-clock-frequency = <26000000>;
179724ba675SRob Herring		tcxo-clock-frequency = <26000000>;
180724ba675SRob Herring	};
181724ba675SRob Herring};
182724ba675SRob Herring
183724ba675SRob Herring&omap4_pmx_core {
184724ba675SRob Herring
185724ba675SRob Herring	/* hdmi_hpd.gpio_63 */
186724ba675SRob Herring	hdmi_hpd_gpio: hdmi-hpd-pins {
187724ba675SRob Herring		pinctrl-single,pins = <
188724ba675SRob Herring		OMAP4_IOPAD(0x098, PIN_INPUT | MUX_MODE3)
189724ba675SRob Herring		>;
190724ba675SRob Herring	};
191724ba675SRob Herring
192724ba675SRob Herring	/* hdmi_cec.hdmi_cec, hdmi_scl.hdmi_scl, hdmi_sda.hdmi_sda */
193724ba675SRob Herring	dss_hdmi_pins: dss-hdmi-pins {
194724ba675SRob Herring		pinctrl-single,pins = <
195724ba675SRob Herring		OMAP4_IOPAD(0x09a, PIN_INPUT | MUX_MODE0)
196724ba675SRob Herring		OMAP4_IOPAD(0x09c, PIN_INPUT | MUX_MODE0)
197724ba675SRob Herring		OMAP4_IOPAD(0x09e, PIN_INPUT | MUX_MODE0)
198724ba675SRob Herring		>;
199724ba675SRob Herring	};
200724ba675SRob Herring
201724ba675SRob Herring	/*
202724ba675SRob Herring	 * Android uses PIN_OFF_INPUT_PULLDOWN | PIN_INPUT_PULLUP | MUX_MODE3
203724ba675SRob Herring	 * for gpio_100, but the internal pull makes wlan flakey on some
204724ba675SRob Herring	 * devices. Off mode value should be tested if we have off mode working
205724ba675SRob Herring	 * later on.
206724ba675SRob Herring	 */
207724ba675SRob Herring	mmc3_pins: mmc3-pins {
208724ba675SRob Herring		pinctrl-single,pins = <
209724ba675SRob Herring		/* 0x4a10008e gpmc_wait2.gpio_100 d23 */
210724ba675SRob Herring		OMAP4_IOPAD(0x08e, PIN_INPUT | MUX_MODE3)
211724ba675SRob Herring
212724ba675SRob Herring		/* 0x4a100102 abe_mcbsp1_dx.sdmmc3_dat2 ab25 */
213724ba675SRob Herring		OMAP4_IOPAD(0x102, PIN_INPUT_PULLUP | MUX_MODE1)
214724ba675SRob Herring
215724ba675SRob Herring		/* 0x4a100104 abe_mcbsp1_fsx.sdmmc3_dat3 ac27 */
216724ba675SRob Herring		OMAP4_IOPAD(0x104, PIN_INPUT_PULLUP | MUX_MODE1)
217724ba675SRob Herring
218724ba675SRob Herring		/* 0x4a100118 uart2_cts.sdmmc3_clk ab26 */
219724ba675SRob Herring		OMAP4_IOPAD(0x118, PIN_INPUT | MUX_MODE1)
220724ba675SRob Herring
221724ba675SRob Herring		/* 0x4a10011a uart2_rts.sdmmc3_cmd ab27 */
222724ba675SRob Herring		OMAP4_IOPAD(0x11a, PIN_INPUT_PULLUP | MUX_MODE1)
223724ba675SRob Herring
224724ba675SRob Herring		/* 0x4a10011c uart2_rx.sdmmc3_dat0 aa25 */
225724ba675SRob Herring		OMAP4_IOPAD(0x11c, PIN_INPUT_PULLUP | MUX_MODE1)
226724ba675SRob Herring
227724ba675SRob Herring		/* 0x4a10011e uart2_tx.sdmmc3_dat1 aa26 */
228724ba675SRob Herring		OMAP4_IOPAD(0x11e, PIN_INPUT_PULLUP | MUX_MODE1)
229724ba675SRob Herring		>;
230724ba675SRob Herring	};
231724ba675SRob Herring
232724ba675SRob Herring	/* gpmc_ncs0.gpio_50 */
233724ba675SRob Herring	poweroff_gpio: poweroff-pins {
234724ba675SRob Herring		pinctrl-single,pins = <
235724ba675SRob Herring		OMAP4_IOPAD(0x074, PIN_OUTPUT_PULLUP | MUX_MODE3)
236724ba675SRob Herring		>;
237724ba675SRob Herring	};
238724ba675SRob Herring
239724ba675SRob Herring	/* kpd_row0.gpio_178 */
240724ba675SRob Herring	tmp105_irq: tmp105-irq-pins {
241724ba675SRob Herring		pinctrl-single,pins = <
242724ba675SRob Herring		OMAP4_IOPAD(0x18e, PIN_INPUT_PULLUP | MUX_MODE3)
243724ba675SRob Herring		>;
244724ba675SRob Herring	};
245724ba675SRob Herring
246724ba675SRob Herring	usb_gpio_mux_sel1: usb-gpio-mux-sel1-pins {
247724ba675SRob Herring		/* gpio_60 */
248724ba675SRob Herring		pinctrl-single,pins = <
249724ba675SRob Herring		OMAP4_IOPAD(0x088, PIN_OUTPUT | MUX_MODE3)
250724ba675SRob Herring		>;
251724ba675SRob Herring	};
252724ba675SRob Herring
253724ba675SRob Herring	usb_ulpi_pins: usb-ulpi-pins {
254724ba675SRob Herring		pinctrl-single,pins = <
255724ba675SRob Herring		OMAP4_IOPAD(0x196, MUX_MODE7)
256724ba675SRob Herring		OMAP4_IOPAD(0x198, MUX_MODE7)
257724ba675SRob Herring		OMAP4_IOPAD(0x1b2, PIN_INPUT_PULLUP | MUX_MODE0)
258724ba675SRob Herring		OMAP4_IOPAD(0x1b4, PIN_INPUT_PULLUP | MUX_MODE0)
259724ba675SRob Herring		OMAP4_IOPAD(0x1b6, PIN_INPUT_PULLUP | MUX_MODE0)
260724ba675SRob Herring		OMAP4_IOPAD(0x1b8, PIN_INPUT_PULLUP | MUX_MODE0)
261724ba675SRob Herring		OMAP4_IOPAD(0x1ba, PIN_INPUT_PULLUP | MUX_MODE0)
262724ba675SRob Herring		OMAP4_IOPAD(0x1bc, PIN_INPUT_PULLUP | MUX_MODE0)
263724ba675SRob Herring		OMAP4_IOPAD(0x1be, PIN_INPUT_PULLUP | MUX_MODE0)
264724ba675SRob Herring		OMAP4_IOPAD(0x1c0, PIN_INPUT_PULLUP | MUX_MODE0)
265724ba675SRob Herring		OMAP4_IOPAD(0x1c2, PIN_INPUT_PULLUP | MUX_MODE0)
266724ba675SRob Herring		OMAP4_IOPAD(0x1c4, PIN_INPUT_PULLUP | MUX_MODE0)
267724ba675SRob Herring		OMAP4_IOPAD(0x1c6, PIN_INPUT_PULLUP | MUX_MODE0)
268724ba675SRob Herring		OMAP4_IOPAD(0x1c8, PIN_INPUT_PULLUP | MUX_MODE0)
269724ba675SRob Herring		>;
270724ba675SRob Herring	};
271724ba675SRob Herring
272724ba675SRob Herring	/* usb0_otg_dp and usb0_otg_dm */
273724ba675SRob Herring	usb_utmi_pins: usb-utmi-pins {
274724ba675SRob Herring		pinctrl-single,pins = <
275724ba675SRob Herring		OMAP4_IOPAD(0x196, PIN_INPUT | MUX_MODE0)
276724ba675SRob Herring		OMAP4_IOPAD(0x198, PIN_INPUT | MUX_MODE0)
277724ba675SRob Herring		OMAP4_IOPAD(0x1b2, PIN_INPUT_PULLUP | MUX_MODE7)
278724ba675SRob Herring		OMAP4_IOPAD(0x1b4, PIN_INPUT_PULLUP | MUX_MODE7)
279724ba675SRob Herring		OMAP4_IOPAD(0x1b6, PIN_INPUT_PULLUP | MUX_MODE7)
280724ba675SRob Herring		OMAP4_IOPAD(0x1b8, PIN_INPUT_PULLUP | MUX_MODE7)
281724ba675SRob Herring		OMAP4_IOPAD(0x1ba, PIN_INPUT_PULLUP | MUX_MODE7)
282724ba675SRob Herring		OMAP4_IOPAD(0x1bc, PIN_INPUT_PULLUP | MUX_MODE7)
283724ba675SRob Herring		OMAP4_IOPAD(0x1be, PIN_INPUT_PULLUP | MUX_MODE7)
284724ba675SRob Herring		OMAP4_IOPAD(0x1c0, PIN_INPUT_PULLUP | MUX_MODE7)
285724ba675SRob Herring		OMAP4_IOPAD(0x1c2, PIN_INPUT_PULLUP | MUX_MODE7)
286724ba675SRob Herring		OMAP4_IOPAD(0x1c4, PIN_INPUT_PULLUP | MUX_MODE7)
287724ba675SRob Herring		OMAP4_IOPAD(0x1c6, PIN_INPUT_PULLUP | MUX_MODE7)
288724ba675SRob Herring		OMAP4_IOPAD(0x1c8, PIN_INPUT_PULLUP | MUX_MODE7)
289724ba675SRob Herring		>;
290724ba675SRob Herring	};
291724ba675SRob Herring
292724ba675SRob Herring	/*
293724ba675SRob Herring	 * Note that the v3.0.8 stock userspace dynamically remuxes uart1
294724ba675SRob Herring	 * rts pin probably for PM purposes to PIN_INPUT_PULLUP | MUX_MODE7
295724ba675SRob Herring	 * when not used. If needed, we can add rts pin remux later based
296724ba675SRob Herring	 * on power measurements.
297724ba675SRob Herring	 */
298724ba675SRob Herring	uart1_pins: uart1-pins {
299724ba675SRob Herring		pinctrl-single,pins = <
300724ba675SRob Herring		/* 0x4a10013c mcspi1_cs2.uart1_cts ag23 */
301724ba675SRob Herring		OMAP4_IOPAD(0x13c, PIN_INPUT_PULLUP | MUX_MODE1)
302724ba675SRob Herring
303724ba675SRob Herring		/* 0x4a10013e mcspi1_cs3.uart1_rts ah23 */
304724ba675SRob Herring		OMAP4_IOPAD(0x13e, MUX_MODE1)
305724ba675SRob Herring
306724ba675SRob Herring		/* 0x4a100140 uart3_cts_rctx.uart1_tx f27 */
307724ba675SRob Herring		OMAP4_IOPAD(0x140, PIN_OUTPUT | MUX_MODE1)
308724ba675SRob Herring
309724ba675SRob Herring		/* 0x4a1001ca dpm_emu14.uart1_rx aa3 */
310724ba675SRob Herring		OMAP4_IOPAD(0x1ca, PIN_INPUT_PULLUP | MUX_MODE2)
311724ba675SRob Herring		>;
312724ba675SRob Herring	};
313724ba675SRob Herring
314724ba675SRob Herring	/* uart3_tx_irtx and uart3_rx_irrx */
315724ba675SRob Herring	uart3_pins: uart3-pins {
316724ba675SRob Herring		pinctrl-single,pins = <
317724ba675SRob Herring		OMAP4_IOPAD(0x196, MUX_MODE7)
318724ba675SRob Herring		OMAP4_IOPAD(0x198, MUX_MODE7)
319724ba675SRob Herring		OMAP4_IOPAD(0x1b2, PIN_INPUT_PULLUP | MUX_MODE7)
320724ba675SRob Herring		OMAP4_IOPAD(0x1b4, PIN_INPUT_PULLUP | MUX_MODE7)
321724ba675SRob Herring		OMAP4_IOPAD(0x1b6, PIN_INPUT_PULLUP | MUX_MODE7)
322724ba675SRob Herring		OMAP4_IOPAD(0x1b8, PIN_INPUT_PULLUP | MUX_MODE7)
323724ba675SRob Herring		OMAP4_IOPAD(0x1ba, MUX_MODE2)
324724ba675SRob Herring		OMAP4_IOPAD(0x1bc, PIN_INPUT | MUX_MODE2)
325724ba675SRob Herring		OMAP4_IOPAD(0x1be, PIN_INPUT_PULLUP | MUX_MODE7)
326724ba675SRob Herring		OMAP4_IOPAD(0x1c0, PIN_INPUT_PULLUP | MUX_MODE7)
327724ba675SRob Herring		OMAP4_IOPAD(0x1c2, PIN_INPUT_PULLUP | MUX_MODE7)
328724ba675SRob Herring		OMAP4_IOPAD(0x1c4, PIN_INPUT_PULLUP | MUX_MODE7)
329724ba675SRob Herring		OMAP4_IOPAD(0x1c6, PIN_INPUT_PULLUP | MUX_MODE7)
330724ba675SRob Herring		OMAP4_IOPAD(0x1c8, PIN_INPUT_PULLUP | MUX_MODE7)
331724ba675SRob Herring		>;
332724ba675SRob Herring	};
333724ba675SRob Herring
334724ba675SRob Herring	uart4_pins: uart4-pins {
335724ba675SRob Herring		pinctrl-single,pins = <
336724ba675SRob Herring		OMAP4_IOPAD(0x15c, PIN_INPUT | MUX_MODE0)		/* uart4_rx */
337724ba675SRob Herring		OMAP4_IOPAD(0x15e, PIN_OUTPUT | MUX_MODE0)		/* uart4_tx */
338724ba675SRob Herring		OMAP4_IOPAD(0x110, PIN_INPUT_PULLUP | MUX_MODE5)	/* uart4_cts */
339724ba675SRob Herring		OMAP4_IOPAD(0x112, PIN_OUTPUT_PULLUP | MUX_MODE5)	/* uart4_rts */
340724ba675SRob Herring		>;
341724ba675SRob Herring	};
342724ba675SRob Herring
343724ba675SRob Herring	mcbsp2_pins: mcbsp2-pins {
344724ba675SRob Herring		pinctrl-single,pins = <
345724ba675SRob Herring		OMAP4_IOPAD(0x0f6, PIN_INPUT | MUX_MODE0)	/* abe_mcbsp2_clkx */
346724ba675SRob Herring		OMAP4_IOPAD(0x0f8, PIN_INPUT | MUX_MODE0)	/* abe_mcbsp2_dr */
347724ba675SRob Herring		OMAP4_IOPAD(0x0fa, PIN_OUTPUT | MUX_MODE0)	/* abe_mcbsp2_dx */
348724ba675SRob Herring		OMAP4_IOPAD(0x0fc, PIN_INPUT | MUX_MODE0)	/* abe_mcbsp2_fsx */
349724ba675SRob Herring		>;
350724ba675SRob Herring	};
351724ba675SRob Herring
352724ba675SRob Herring	mcbsp3_pins: mcbsp3-pins {
353724ba675SRob Herring		pinctrl-single,pins = <
354724ba675SRob Herring		OMAP4_IOPAD(0x106, PIN_INPUT | MUX_MODE1)	/* abe_mcbsp3_dr */
355724ba675SRob Herring		OMAP4_IOPAD(0x108, PIN_OUTPUT | MUX_MODE1)	/* abe_mcbsp3_dx */
356724ba675SRob Herring		OMAP4_IOPAD(0x10a, PIN_INPUT | MUX_MODE1)	/* abe_mcbsp3_clkx */
357724ba675SRob Herring		OMAP4_IOPAD(0x10c, PIN_INPUT | MUX_MODE1)	/* abe_mcbsp3_fsx */
358724ba675SRob Herring		>;
359724ba675SRob Herring	};
360724ba675SRob Herring};
361724ba675SRob Herring
362724ba675SRob Herring&omap4_pmx_wkup {
363724ba675SRob Herring	usb_gpio_mux_sel2: usb-gpio-mux-sel2-pins {
364724ba675SRob Herring		/* gpio_wk0 */
365724ba675SRob Herring		pinctrl-single,pins = <
366724ba675SRob Herring		OMAP4_IOPAD(0x040, PIN_OUTPUT_PULLDOWN | MUX_MODE3)
367724ba675SRob Herring		>;
368724ba675SRob Herring	};
369724ba675SRob Herring};
370724ba675SRob Herring
371724ba675SRob Herring/* RNG is used by secure mode and not accessible */
372724ba675SRob Herring&rng_target {
373724ba675SRob Herring	status = "disabled";
374724ba675SRob Herring};
375724ba675SRob Herring
376724ba675SRob Herring/*
377724ba675SRob Herring * The uart1 port is wired to mdm6600 with rts and cts. The modem uses gpio_149
378724ba675SRob Herring * for wake-up events for both the USB PHY and the UART. We can use gpio_149
379724ba675SRob Herring * pad as the shared wakeirq for the UART rather than the RX or CTS pad as we
380724ba675SRob Herring * have gpio_149 trigger before the UART transfer starts.
381724ba675SRob Herring */
382724ba675SRob Herring&uart1 {
383724ba675SRob Herring	pinctrl-names = "default";
384724ba675SRob Herring	pinctrl-0 = <&uart1_pins>;
385724ba675SRob Herring	interrupts-extended = <&wakeupgen GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH
386724ba675SRob Herring			       &omap4_pmx_core 0x110>;
387724ba675SRob Herring	uart-has-rtscts;
388724ba675SRob Herring	current-speed = <115200>;
389724ba675SRob Herring};
390724ba675SRob Herring
391724ba675SRob Herring&uart3 {
392724ba675SRob Herring	interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH
393724ba675SRob Herring			       &omap4_pmx_core 0x17c>;
394*5ad37b5eSTony Lindgren	overrun-throttle-ms = <500>;
395724ba675SRob Herring};
396724ba675SRob Herring
397724ba675SRob Herring&uart4 {
398724ba675SRob Herring	pinctrl-names = "default";
399724ba675SRob Herring	pinctrl-0 = <&uart4_pins>;
400724ba675SRob Herring
401724ba675SRob Herring	bluetooth {
402724ba675SRob Herring		compatible = "ti,wl1285-st";
403724ba675SRob Herring		enable-gpios = <&gpio6 14 GPIO_ACTIVE_HIGH>; /* gpio 174 */
404724ba675SRob Herring		max-speed = <3686400>;
405724ba675SRob Herring	};
406724ba675SRob Herring};
407724ba675SRob Herring
408724ba675SRob Herring/* Internal UTMI+ PHY used for OTG, CPCAP ULPI PHY for detection and charger */
409724ba675SRob Herring&usb_otg_hs {
410724ba675SRob Herring	interface-type = <1>;
411724ba675SRob Herring	mode = <3>;
412724ba675SRob Herring
413724ba675SRob Herring	/*
414724ba675SRob Herring	 * Max 300 mA steps based on similar PMIC MC13783UG.pdf "Table 10-4.
415724ba675SRob Herring	 * VBUS Regulator Main Characteristics". Binding uses 2 mA units.
416724ba675SRob Herring	 */
417724ba675SRob Herring	power = <150>;
418724ba675SRob Herring};
419724ba675SRob Herring
420724ba675SRob Herring&mcbsp2 {
421724ba675SRob Herring	#sound-dai-cells = <0>;
422724ba675SRob Herring	pinctrl-names = "default";
423724ba675SRob Herring	pinctrl-0 = <&mcbsp2_pins>;
424724ba675SRob Herring	status = "okay";
425724ba675SRob Herring
426724ba675SRob Herring	mcbsp2_port: port {
427724ba675SRob Herring		cpu_dai2: endpoint {
428724ba675SRob Herring			dai-format = "i2s";
429724ba675SRob Herring			remote-endpoint = <&cpcap_audio_codec0>;
430724ba675SRob Herring			frame-master = <&cpcap_audio_codec0>;
431724ba675SRob Herring			bitclock-master = <&cpcap_audio_codec0>;
432724ba675SRob Herring		};
433724ba675SRob Herring	};
434724ba675SRob Herring};
435724ba675SRob Herring
436724ba675SRob Herring&mcbsp3 {
437724ba675SRob Herring	#sound-dai-cells = <0>;
438724ba675SRob Herring	pinctrl-names = "default";
439724ba675SRob Herring	pinctrl-0 = <&mcbsp3_pins>;
440724ba675SRob Herring	status = "okay";
441724ba675SRob Herring
442724ba675SRob Herring	mcbsp3_port: port {
443724ba675SRob Herring		cpu_dai3: endpoint {
444724ba675SRob Herring			dai-format = "dsp_a";
445724ba675SRob Herring			frame-master = <&cpcap_audio_codec1>;
446724ba675SRob Herring			bitclock-master = <&cpcap_audio_codec1>;
447724ba675SRob Herring			remote-endpoint = <&cpcap_audio_codec1>;
448724ba675SRob Herring		};
449724ba675SRob Herring	};
450724ba675SRob Herring};
451724ba675SRob Herring
452724ba675SRob Herring&cpcap_audio_codec0 {
453724ba675SRob Herring	remote-endpoint = <&cpu_dai2>;
454724ba675SRob Herring};
455724ba675SRob Herring
456724ba675SRob Herring&cpcap_audio_codec1 {
457724ba675SRob Herring	remote-endpoint = <&cpu_dai3>;
458724ba675SRob Herring};
459