xref: /freebsd/sys/contrib/device-tree/src/arm/ti/omap/omap3-pandora-common.dtsi (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Copyright (C) 2015
4*f126890aSEmmanuel Vadot *   Nikolaus Schaller <hns@goldelico.com>
5*f126890aSEmmanuel Vadot *
6*f126890aSEmmanuel Vadot * Common device tree include for OpenPandora devices.
7*f126890aSEmmanuel Vadot */
8*f126890aSEmmanuel Vadot
9*f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
10*f126890aSEmmanuel Vadot
11*f126890aSEmmanuel Vadot/ {
12*f126890aSEmmanuel Vadot	cpus {
13*f126890aSEmmanuel Vadot		cpu@0 {
14*f126890aSEmmanuel Vadot			cpu0-supply = <&vcc>;
15*f126890aSEmmanuel Vadot		};
16*f126890aSEmmanuel Vadot	};
17*f126890aSEmmanuel Vadot
18*f126890aSEmmanuel Vadot	memory@80000000 {
19*f126890aSEmmanuel Vadot		device_type = "memory";
20*f126890aSEmmanuel Vadot		reg = <0x80000000 0x20000000>; /* 512 MB */
21*f126890aSEmmanuel Vadot	};
22*f126890aSEmmanuel Vadot
23*f126890aSEmmanuel Vadot	aliases {
24*f126890aSEmmanuel Vadot		display0 = &lcd;
25*f126890aSEmmanuel Vadot	};
26*f126890aSEmmanuel Vadot
27*f126890aSEmmanuel Vadot	/* fixed 26MHz oscillator */
28*f126890aSEmmanuel Vadot	hfclk_26m: oscillator {
29*f126890aSEmmanuel Vadot		#clock-cells = <0>;
30*f126890aSEmmanuel Vadot		compatible = "fixed-clock";
31*f126890aSEmmanuel Vadot		clock-frequency = <26000000>;
32*f126890aSEmmanuel Vadot	};
33*f126890aSEmmanuel Vadot
34*f126890aSEmmanuel Vadot	tv: connector {
35*f126890aSEmmanuel Vadot		compatible = "connector-analog-tv";
36*f126890aSEmmanuel Vadot		label = "tv";
37*f126890aSEmmanuel Vadot
38*f126890aSEmmanuel Vadot		port {
39*f126890aSEmmanuel Vadot			tv_connector_in: endpoint {
40*f126890aSEmmanuel Vadot				remote-endpoint = <&venc_out>;
41*f126890aSEmmanuel Vadot			};
42*f126890aSEmmanuel Vadot		};
43*f126890aSEmmanuel Vadot	};
44*f126890aSEmmanuel Vadot
45*f126890aSEmmanuel Vadot	gpio-leds {
46*f126890aSEmmanuel Vadot
47*f126890aSEmmanuel Vadot		compatible = "gpio-leds";
48*f126890aSEmmanuel Vadot
49*f126890aSEmmanuel Vadot		pinctrl-names = "default";
50*f126890aSEmmanuel Vadot		pinctrl-0 = <&led_pins>;
51*f126890aSEmmanuel Vadot
52*f126890aSEmmanuel Vadot		led1 {
53*f126890aSEmmanuel Vadot			label = "pandora::sd1";
54*f126890aSEmmanuel Vadot			gpios = <&gpio5 0 GPIO_ACTIVE_HIGH>;	/* GPIO_128 */
55*f126890aSEmmanuel Vadot			linux,default-trigger = "mmc0";
56*f126890aSEmmanuel Vadot			default-state = "off";
57*f126890aSEmmanuel Vadot		};
58*f126890aSEmmanuel Vadot
59*f126890aSEmmanuel Vadot		led2 {
60*f126890aSEmmanuel Vadot			label = "pandora::sd2";
61*f126890aSEmmanuel Vadot			gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>;	/* GPIO_129 */
62*f126890aSEmmanuel Vadot			linux,default-trigger = "mmc1";
63*f126890aSEmmanuel Vadot			default-state = "off";
64*f126890aSEmmanuel Vadot		};
65*f126890aSEmmanuel Vadot
66*f126890aSEmmanuel Vadot		led3 {
67*f126890aSEmmanuel Vadot			label = "pandora::bluetooth";
68*f126890aSEmmanuel Vadot			gpios = <&gpio5 30 GPIO_ACTIVE_HIGH>;	/* GPIO_158 */
69*f126890aSEmmanuel Vadot			linux,default-trigger = "heartbeat";
70*f126890aSEmmanuel Vadot			default-state = "off";
71*f126890aSEmmanuel Vadot		};
72*f126890aSEmmanuel Vadot
73*f126890aSEmmanuel Vadot		led4 {
74*f126890aSEmmanuel Vadot			label = "pandora::wifi";
75*f126890aSEmmanuel Vadot			gpios = <&gpio5 31 GPIO_ACTIVE_HIGH>;	/* GPIO_159 */
76*f126890aSEmmanuel Vadot			linux,default-trigger = "mmc2";
77*f126890aSEmmanuel Vadot			default-state = "off";
78*f126890aSEmmanuel Vadot		};
79*f126890aSEmmanuel Vadot	};
80*f126890aSEmmanuel Vadot
81*f126890aSEmmanuel Vadot	gpio-keys {
82*f126890aSEmmanuel Vadot		compatible = "gpio-keys";
83*f126890aSEmmanuel Vadot
84*f126890aSEmmanuel Vadot		pinctrl-names = "default";
85*f126890aSEmmanuel Vadot		pinctrl-0 = <&button_pins>;
86*f126890aSEmmanuel Vadot
87*f126890aSEmmanuel Vadot		up-button {
88*f126890aSEmmanuel Vadot			label = "up";
89*f126890aSEmmanuel Vadot			linux,code = <KEY_UP>;
90*f126890aSEmmanuel Vadot			gpios = <&gpio4 14 GPIO_ACTIVE_LOW>;	/* GPIO_110 */
91*f126890aSEmmanuel Vadot			wakeup-source;
92*f126890aSEmmanuel Vadot		};
93*f126890aSEmmanuel Vadot
94*f126890aSEmmanuel Vadot		down-button {
95*f126890aSEmmanuel Vadot			label = "down";
96*f126890aSEmmanuel Vadot			linux,code = <KEY_DOWN>;
97*f126890aSEmmanuel Vadot			gpios = <&gpio4 7 GPIO_ACTIVE_LOW>;	/* GPIO_103 */
98*f126890aSEmmanuel Vadot			wakeup-source;
99*f126890aSEmmanuel Vadot		};
100*f126890aSEmmanuel Vadot
101*f126890aSEmmanuel Vadot		left-button {
102*f126890aSEmmanuel Vadot			label = "left";
103*f126890aSEmmanuel Vadot			linux,code = <KEY_LEFT>;
104*f126890aSEmmanuel Vadot			gpios = <&gpio4 0 GPIO_ACTIVE_LOW>;	/* GPIO_96 */
105*f126890aSEmmanuel Vadot			wakeup-source;
106*f126890aSEmmanuel Vadot		};
107*f126890aSEmmanuel Vadot
108*f126890aSEmmanuel Vadot		right-button {
109*f126890aSEmmanuel Vadot			label = "right";
110*f126890aSEmmanuel Vadot			linux,code = <KEY_RIGHT>;
111*f126890aSEmmanuel Vadot			gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;	/* GPIO_98 */
112*f126890aSEmmanuel Vadot			wakeup-source;
113*f126890aSEmmanuel Vadot		};
114*f126890aSEmmanuel Vadot
115*f126890aSEmmanuel Vadot		pageup-button {
116*f126890aSEmmanuel Vadot			label = "game 1";
117*f126890aSEmmanuel Vadot			linux,code = <KEY_PAGEUP>;
118*f126890aSEmmanuel Vadot			gpios = <&gpio4 13 GPIO_ACTIVE_LOW>;	/* GPIO_109 */
119*f126890aSEmmanuel Vadot			wakeup-source;
120*f126890aSEmmanuel Vadot		};
121*f126890aSEmmanuel Vadot
122*f126890aSEmmanuel Vadot		pagedown-button {
123*f126890aSEmmanuel Vadot			label = "game 3";
124*f126890aSEmmanuel Vadot			linux,code = <KEY_PAGEDOWN>;
125*f126890aSEmmanuel Vadot			gpios = <&gpio4 10 GPIO_ACTIVE_LOW>;	/* GPIO_106 */
126*f126890aSEmmanuel Vadot			wakeup-source;
127*f126890aSEmmanuel Vadot		};
128*f126890aSEmmanuel Vadot
129*f126890aSEmmanuel Vadot		home-button {
130*f126890aSEmmanuel Vadot			label = "game 4";
131*f126890aSEmmanuel Vadot			linux,code = <KEY_HOME>;
132*f126890aSEmmanuel Vadot			gpios = <&gpio4 5 GPIO_ACTIVE_LOW>;	/* GPIO_101 */
133*f126890aSEmmanuel Vadot			wakeup-source;
134*f126890aSEmmanuel Vadot		};
135*f126890aSEmmanuel Vadot
136*f126890aSEmmanuel Vadot		end-button {
137*f126890aSEmmanuel Vadot			label = "game 2";
138*f126890aSEmmanuel Vadot			linux,code = <KEY_END>;
139*f126890aSEmmanuel Vadot			gpios = <&gpio4 15 GPIO_ACTIVE_LOW>;	/* GPIO_111 */
140*f126890aSEmmanuel Vadot			wakeup-source;
141*f126890aSEmmanuel Vadot		};
142*f126890aSEmmanuel Vadot
143*f126890aSEmmanuel Vadot		right-shift {
144*f126890aSEmmanuel Vadot			label = "l";
145*f126890aSEmmanuel Vadot			linux,code = <KEY_RIGHTSHIFT>;
146*f126890aSEmmanuel Vadot			gpios = <&gpio4 6 GPIO_ACTIVE_LOW>;	/* GPIO_102 */
147*f126890aSEmmanuel Vadot			wakeup-source;
148*f126890aSEmmanuel Vadot		};
149*f126890aSEmmanuel Vadot
150*f126890aSEmmanuel Vadot		kp-plus {
151*f126890aSEmmanuel Vadot			label = "l2";
152*f126890aSEmmanuel Vadot			linux,code = <KEY_KPPLUS>;
153*f126890aSEmmanuel Vadot			gpios = <&gpio4 1 GPIO_ACTIVE_LOW>;	/* GPIO_97 */
154*f126890aSEmmanuel Vadot			wakeup-source;
155*f126890aSEmmanuel Vadot		};
156*f126890aSEmmanuel Vadot
157*f126890aSEmmanuel Vadot		right-ctrl {
158*f126890aSEmmanuel Vadot			label = "r";
159*f126890aSEmmanuel Vadot			linux,code = <KEY_RIGHTCTRL>;
160*f126890aSEmmanuel Vadot			gpios = <&gpio4 9 GPIO_ACTIVE_LOW>;	/* GPIO_105 */
161*f126890aSEmmanuel Vadot			wakeup-source;
162*f126890aSEmmanuel Vadot		};
163*f126890aSEmmanuel Vadot
164*f126890aSEmmanuel Vadot		kp-minus {
165*f126890aSEmmanuel Vadot			label = "r2";
166*f126890aSEmmanuel Vadot			linux,code = <KEY_KPMINUS>;
167*f126890aSEmmanuel Vadot			gpios = <&gpio4 11 GPIO_ACTIVE_LOW>;	/* GPIO_107 */
168*f126890aSEmmanuel Vadot			wakeup-source;
169*f126890aSEmmanuel Vadot		};
170*f126890aSEmmanuel Vadot
171*f126890aSEmmanuel Vadot		left-ctrl {
172*f126890aSEmmanuel Vadot			label = "ctrl";
173*f126890aSEmmanuel Vadot			linux,code = <KEY_LEFTCTRL>;
174*f126890aSEmmanuel Vadot			gpios = <&gpio4 8 GPIO_ACTIVE_LOW>;	/* GPIO_104 */
175*f126890aSEmmanuel Vadot			wakeup-source;
176*f126890aSEmmanuel Vadot		};
177*f126890aSEmmanuel Vadot
178*f126890aSEmmanuel Vadot		menu {
179*f126890aSEmmanuel Vadot			label = "menu";
180*f126890aSEmmanuel Vadot			linux,code = <KEY_MENU>;
181*f126890aSEmmanuel Vadot			gpios = <&gpio4 3 GPIO_ACTIVE_LOW>;	/* GPIO_99 */
182*f126890aSEmmanuel Vadot			wakeup-source;
183*f126890aSEmmanuel Vadot		};
184*f126890aSEmmanuel Vadot
185*f126890aSEmmanuel Vadot		hold {
186*f126890aSEmmanuel Vadot			label = "hold";
187*f126890aSEmmanuel Vadot			linux,code = <KEY_COFFEE>;
188*f126890aSEmmanuel Vadot			gpios = <&gpio6 16 GPIO_ACTIVE_LOW>;	/* GPIO_176 */
189*f126890aSEmmanuel Vadot			wakeup-source;
190*f126890aSEmmanuel Vadot		};
191*f126890aSEmmanuel Vadot
192*f126890aSEmmanuel Vadot		left-alt {
193*f126890aSEmmanuel Vadot			label = "alt";
194*f126890aSEmmanuel Vadot			linux,code = <KEY_LEFTALT>;
195*f126890aSEmmanuel Vadot			gpios = <&gpio4 4 GPIO_ACTIVE_HIGH>;	/* GPIO_100 */
196*f126890aSEmmanuel Vadot			wakeup-source;
197*f126890aSEmmanuel Vadot		};
198*f126890aSEmmanuel Vadot
199*f126890aSEmmanuel Vadot		lid {
200*f126890aSEmmanuel Vadot			label = "lid";
201*f126890aSEmmanuel Vadot			linux,code = <0x00>;    /* SW_LID lid shut */
202*f126890aSEmmanuel Vadot			linux,input-type = <0x05>;    /* EV_SW */
203*f126890aSEmmanuel Vadot			gpios = <&gpio4 12 GPIO_ACTIVE_HIGH>;   /* GPIO_108 */
204*f126890aSEmmanuel Vadot		};
205*f126890aSEmmanuel Vadot	};
206*f126890aSEmmanuel Vadot
207*f126890aSEmmanuel Vadot	/* HS USB Host PHY on PORT 2 */
208*f126890aSEmmanuel Vadot	hsusb2_phy: hsusb2-phy-pins {
209*f126890aSEmmanuel Vadot		compatible = "usb-nop-xceiv";
210*f126890aSEmmanuel Vadot		reset-gpios = <&gpio1 16 GPIO_ACTIVE_LOW>; /* GPIO_16 */
211*f126890aSEmmanuel Vadot		vcc-supply = <&vaux2>;
212*f126890aSEmmanuel Vadot		#phy-cells = <0>;
213*f126890aSEmmanuel Vadot	};
214*f126890aSEmmanuel Vadot
215*f126890aSEmmanuel Vadot	/* HS USB Host VBUS supply
216*f126890aSEmmanuel Vadot	 * disabling this regulator causes current leakage, and LCD flicker
217*f126890aSEmmanuel Vadot	 * on earlier (CC) board revisions, so keep it always on */
218*f126890aSEmmanuel Vadot	usb_host_5v: fixed-regulator-usb_host_5v {
219*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
220*f126890aSEmmanuel Vadot		regulator-name = "usb_host_5v";
221*f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
222*f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
223*f126890aSEmmanuel Vadot		regulator-always-on;
224*f126890aSEmmanuel Vadot		regulator-boot-on;
225*f126890aSEmmanuel Vadot		enable-active-high;
226*f126890aSEmmanuel Vadot		gpio = <&gpio6 4 GPIO_ACTIVE_HIGH>;	/* GPIO_164 */
227*f126890aSEmmanuel Vadot	};
228*f126890aSEmmanuel Vadot
229*f126890aSEmmanuel Vadot	/* wl1251 wifi+bt module */
230*f126890aSEmmanuel Vadot	wlan_en: fixed-regulator-wg7210_en {
231*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
232*f126890aSEmmanuel Vadot		regulator-name = "vwlan";
233*f126890aSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
234*f126890aSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
235*f126890aSEmmanuel Vadot		startup-delay-us = <50000>;
236*f126890aSEmmanuel Vadot		enable-active-high;
237*f126890aSEmmanuel Vadot		gpio = <&gpio1 23 GPIO_ACTIVE_HIGH>;
238*f126890aSEmmanuel Vadot	};
239*f126890aSEmmanuel Vadot
240*f126890aSEmmanuel Vadot	/* wg7210 (wifi+bt module) 32k clock buffer */
241*f126890aSEmmanuel Vadot	wg7210_32k: fixed-regulator-wg7210_32k {
242*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
243*f126890aSEmmanuel Vadot		regulator-name = "wg7210_32k";
244*f126890aSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
245*f126890aSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
246*f126890aSEmmanuel Vadot		regulator-always-on;
247*f126890aSEmmanuel Vadot		enable-active-high;
248*f126890aSEmmanuel Vadot		gpio = <&twl_gpio 13 GPIO_ACTIVE_HIGH>;
249*f126890aSEmmanuel Vadot	};
250*f126890aSEmmanuel Vadot};
251*f126890aSEmmanuel Vadot
252*f126890aSEmmanuel Vadot&omap3_pmx_core {
253*f126890aSEmmanuel Vadot
254*f126890aSEmmanuel Vadot	mmc1_pins: mmc1-pins {
255*f126890aSEmmanuel Vadot		pinctrl-single,pins = <
256*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2144, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_clk.sdmmc1_clk */
257*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2146, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_cmd.sdmmc1_cmd */
258*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2148, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_dat0.sdmmc1_dat0 */
259*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x214a, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_dat1.sdmmc1_dat1 */
260*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x214c, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_dat2.sdmmc1_dat2 */
261*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_dat3.sdmmc1_dat3 */
262*f126890aSEmmanuel Vadot		>;
263*f126890aSEmmanuel Vadot	};
264*f126890aSEmmanuel Vadot
265*f126890aSEmmanuel Vadot	mmc2_pins: mmc2-pins {
266*f126890aSEmmanuel Vadot		pinctrl-single,pins = <
267*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2158, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_clk.sdmmc2_clk */
268*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x215a, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_cmd.sdmmc2_cmd */
269*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x215c, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat0.sdmmc2_dat0 */
270*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x215e, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat1.sdmmc2_dat1 */
271*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2160, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat2.sdmmc2_dat2 */
272*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2162, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat3.sdmmc2_dat3 */
273*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2164, PIN_OUTPUT_PULLUP | MUX_MODE1)	/* sdmmc2_dat4.sdmmc2_dirdat0 */
274*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2166, PIN_OUTPUT_PULLUP | MUX_MODE1)	/* sdmmc2_dat5.sdmmc2_dirdat1 */
275*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2168, PIN_OUTPUT_PULLUP | MUX_MODE1)	/* sdmmc2_dat6.sdmmc2_dircmd */
276*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x216a, PIN_INPUT_PULLUP | MUX_MODE1)		/* sdmmc2_dat7.sdmmc2_clkin */
277*f126890aSEmmanuel Vadot		>;
278*f126890aSEmmanuel Vadot	};
279*f126890aSEmmanuel Vadot
280*f126890aSEmmanuel Vadot	dss_dpi_pins: dss-dpi-pins {
281*f126890aSEmmanuel Vadot		pinctrl-single,pins = <
282*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT | MUX_MODE0)	/* dss_pclk.dss_pclk */
283*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT | MUX_MODE0)	/* dss_hsync.dss_hsync */
284*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT | MUX_MODE0)	/* dss_vsync.dss_vsync */
285*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT | MUX_MODE0)	/* dss_acbias.dss_acbias */
286*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT | MUX_MODE0)	/* dss_data0.dss_data0 */
287*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20de, PIN_OUTPUT | MUX_MODE0)	/* dss_data1.dss_data1 */
288*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20e0, PIN_OUTPUT | MUX_MODE0)	/* dss_data2.dss_data2 */
289*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT | MUX_MODE0)	/* dss_data3.dss_data3 */
290*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT | MUX_MODE0)	/* dss_data4.dss_data4 */
291*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT | MUX_MODE0)	/* dss_data5.dss_data5 */
292*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT | MUX_MODE0)	/* dss_data6.dss_data6 */
293*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT | MUX_MODE0)	/* dss_data7.dss_data7 */
294*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT | MUX_MODE0)	/* dss_data8.dss_data8 */
295*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT | MUX_MODE0)	/* dss_data9.dss_data9 */
296*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE0)	/* dss_data10.dss_data10 */
297*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE0)	/* dss_data11.dss_data11 */
298*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE0)	/* dss_data12.dss_data12 */
299*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE0)	/* dss_data13.dss_data13 */
300*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT | MUX_MODE0)	/* dss_data14.dss_data14 */
301*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT | MUX_MODE0)	/* dss_data15.dss_data15 */
302*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE0)	/* dss_data16.dss_data16 */
303*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE0)	/* dss_data17.dss_data17 */
304*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT | MUX_MODE0)	/* dss_data18.dss_data18 */
305*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT | MUX_MODE0)	/* dss_data19.dss_data19 */
306*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE0)	/* dss_data20.dss_data20 */
307*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT | MUX_MODE0)	/* dss_data21.dss_data21 */
308*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE0)	/* dss_data22.dss_data22 */
309*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE0)	/* dss_data23.dss_data23 */
310*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x218e, PIN_OUTPUT | MUX_MODE4)	/* GPIO_157 = lcd reset */
311*f126890aSEmmanuel Vadot		>;
312*f126890aSEmmanuel Vadot	};
313*f126890aSEmmanuel Vadot
314*f126890aSEmmanuel Vadot	uart3_pins: uart3-pins {
315*f126890aSEmmanuel Vadot		pinctrl-single,pins = <
316*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x219e, PIN_INPUT | PIN_OFF_WAKEUPENABLE | MUX_MODE0)	/* uart3_rx_irrx.uart3_rx_irrx */
317*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x21a0, PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx.uart3_tx_irtx */
318*f126890aSEmmanuel Vadot		>;
319*f126890aSEmmanuel Vadot	};
320*f126890aSEmmanuel Vadot
321*f126890aSEmmanuel Vadot	led_pins: leds-pins {
322*f126890aSEmmanuel Vadot		pinctrl-single,pins = <
323*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2154, PIN_OUTPUT | MUX_MODE4)	/* GPIO_128 */
324*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2156, PIN_OUTPUT | MUX_MODE4)	/* GPIO_129 */
325*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2190, PIN_OUTPUT | MUX_MODE4)	/* GPIO_158 */
326*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2192, PIN_OUTPUT | MUX_MODE4)	/* GPIO_159 */
327*f126890aSEmmanuel Vadot		>;
328*f126890aSEmmanuel Vadot	};
329*f126890aSEmmanuel Vadot
330*f126890aSEmmanuel Vadot	button_pins: button-pins {
331*f126890aSEmmanuel Vadot		pinctrl-single,pins = <
332*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2110, PIN_INPUT | MUX_MODE4)	/* GPIO_96 */
333*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2112, PIN_INPUT | MUX_MODE4)	/* GPIO_97 */
334*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2114, PIN_INPUT | MUX_MODE4)	/* GPIO_98 */
335*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2116, PIN_INPUT | MUX_MODE4)	/* GPIO_99 */
336*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2118, PIN_INPUT | MUX_MODE4)	/* GPIO_100 */
337*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x211a, PIN_INPUT | MUX_MODE4)	/* GPIO_101 */
338*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x211c, PIN_INPUT | MUX_MODE4)	/* GPIO_102 */
339*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x211e, PIN_INPUT | MUX_MODE4)	/* GPIO_103 */
340*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2120, PIN_INPUT | MUX_MODE4)	/* GPIO_104 */
341*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2122, PIN_INPUT | MUX_MODE4)	/* GPIO_105 */
342*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2124, PIN_INPUT | MUX_MODE4)	/* GPIO_106 */
343*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2126, PIN_INPUT | MUX_MODE4)	/* GPIO_107 */
344*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x2128, PIN_INPUT | MUX_MODE4)	/* GPIO_108 */
345*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x212a, PIN_INPUT | MUX_MODE4)	/* GPIO_109 */
346*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x212c, PIN_INPUT | MUX_MODE4)	/* GPIO_110 */
347*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x212e, PIN_INPUT | MUX_MODE4)	/* GPIO_111 */
348*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x21d2, PIN_INPUT | MUX_MODE4)	/* GPIO_176 */
349*f126890aSEmmanuel Vadot		>;
350*f126890aSEmmanuel Vadot	};
351*f126890aSEmmanuel Vadot
352*f126890aSEmmanuel Vadot	penirq_pins: penirq-pins {
353*f126890aSEmmanuel Vadot		pinctrl-single,pins = <
354*f126890aSEmmanuel Vadot			/* here we could enable to wakeup the cpu from suspend by a pen touch */
355*f126890aSEmmanuel Vadot			OMAP3_CORE1_IOPAD(0x210c, PIN_INPUT | MUX_MODE4)	/* GPIO_94 */
356*f126890aSEmmanuel Vadot		>;
357*f126890aSEmmanuel Vadot	};
358*f126890aSEmmanuel Vadot
359*f126890aSEmmanuel Vadot};
360*f126890aSEmmanuel Vadot
361*f126890aSEmmanuel Vadot&omap3_pmx_core2 {
362*f126890aSEmmanuel Vadot	/* define in CPU specific file that includes this one
363*f126890aSEmmanuel Vadot	 * use either OMAP3430_CORE2_IOPAD() or OMAP3630_CORE2_IOPAD()
364*f126890aSEmmanuel Vadot	 */
365*f126890aSEmmanuel Vadot};
366*f126890aSEmmanuel Vadot
367*f126890aSEmmanuel Vadot&i2c1 {
368*f126890aSEmmanuel Vadot	clock-frequency = <2600000>;
369*f126890aSEmmanuel Vadot
370*f126890aSEmmanuel Vadot	twl: twl@48 {
371*f126890aSEmmanuel Vadot		reg = <0x48>;
372*f126890aSEmmanuel Vadot		interrupts = <7>; /* SYS_NIRQ cascaded to intc */
373*f126890aSEmmanuel Vadot		interrupt-parent = <&intc>;
374*f126890aSEmmanuel Vadot
375*f126890aSEmmanuel Vadot		clocks = <&hfclk_26m>;
376*f126890aSEmmanuel Vadot		clock-names = "fck";
377*f126890aSEmmanuel Vadot
378*f126890aSEmmanuel Vadot		twl_power: power {
379*f126890aSEmmanuel Vadot			compatible = "ti,twl4030-power-reset";
380*f126890aSEmmanuel Vadot			ti,use_poweroff;
381*f126890aSEmmanuel Vadot		};
382*f126890aSEmmanuel Vadot
383*f126890aSEmmanuel Vadot		twl_audio: audio {
384*f126890aSEmmanuel Vadot			compatible = "ti,twl4030-audio";
385*f126890aSEmmanuel Vadot
386*f126890aSEmmanuel Vadot			codec {
387*f126890aSEmmanuel Vadot				ti,ramp_delay_value = <3>;
388*f126890aSEmmanuel Vadot			};
389*f126890aSEmmanuel Vadot		};
390*f126890aSEmmanuel Vadot	};
391*f126890aSEmmanuel Vadot};
392*f126890aSEmmanuel Vadot
393*f126890aSEmmanuel Vadot#include "twl4030.dtsi"
394*f126890aSEmmanuel Vadot#include "twl4030_omap3.dtsi"
395*f126890aSEmmanuel Vadot
396*f126890aSEmmanuel Vadot&twl_keypad {
397*f126890aSEmmanuel Vadot	keypad,num-rows = <8>;
398*f126890aSEmmanuel Vadot	keypad,num-columns = <6>;
399*f126890aSEmmanuel Vadot	linux,keymap = <
400*f126890aSEmmanuel Vadot		MATRIX_KEY(0, 0, KEY_9)
401*f126890aSEmmanuel Vadot		MATRIX_KEY(0, 1, KEY_8)
402*f126890aSEmmanuel Vadot		MATRIX_KEY(0, 2, KEY_I)
403*f126890aSEmmanuel Vadot		MATRIX_KEY(0, 3, KEY_J)
404*f126890aSEmmanuel Vadot		MATRIX_KEY(0, 4, KEY_N)
405*f126890aSEmmanuel Vadot		MATRIX_KEY(0, 5, KEY_M)
406*f126890aSEmmanuel Vadot		MATRIX_KEY(1, 0, KEY_0)
407*f126890aSEmmanuel Vadot		MATRIX_KEY(1, 1, KEY_7)
408*f126890aSEmmanuel Vadot		MATRIX_KEY(1, 2, KEY_U)
409*f126890aSEmmanuel Vadot		MATRIX_KEY(1, 3, KEY_H)
410*f126890aSEmmanuel Vadot		MATRIX_KEY(1, 4, KEY_B)
411*f126890aSEmmanuel Vadot		MATRIX_KEY(1, 5, KEY_SPACE)
412*f126890aSEmmanuel Vadot		MATRIX_KEY(2, 0, KEY_BACKSPACE)
413*f126890aSEmmanuel Vadot		MATRIX_KEY(2, 1, KEY_6)
414*f126890aSEmmanuel Vadot		MATRIX_KEY(2, 2, KEY_Y)
415*f126890aSEmmanuel Vadot		MATRIX_KEY(2, 3, KEY_G)
416*f126890aSEmmanuel Vadot		MATRIX_KEY(2, 4, KEY_V)
417*f126890aSEmmanuel Vadot		MATRIX_KEY(2, 5, KEY_FN)
418*f126890aSEmmanuel Vadot		MATRIX_KEY(3, 0, KEY_O)
419*f126890aSEmmanuel Vadot		MATRIX_KEY(3, 1, KEY_5)
420*f126890aSEmmanuel Vadot		MATRIX_KEY(3, 2, KEY_T)
421*f126890aSEmmanuel Vadot		MATRIX_KEY(3, 3, KEY_F)
422*f126890aSEmmanuel Vadot		MATRIX_KEY(3, 4, KEY_C)
423*f126890aSEmmanuel Vadot		MATRIX_KEY(4, 0, KEY_P)
424*f126890aSEmmanuel Vadot		MATRIX_KEY(4, 1, KEY_4)
425*f126890aSEmmanuel Vadot		MATRIX_KEY(4, 2, KEY_R)
426*f126890aSEmmanuel Vadot		MATRIX_KEY(4, 3, KEY_D)
427*f126890aSEmmanuel Vadot		MATRIX_KEY(4, 4, KEY_X)
428*f126890aSEmmanuel Vadot		MATRIX_KEY(5, 0, KEY_K)
429*f126890aSEmmanuel Vadot		MATRIX_KEY(5, 1, KEY_3)
430*f126890aSEmmanuel Vadot		MATRIX_KEY(5, 2, KEY_E)
431*f126890aSEmmanuel Vadot		MATRIX_KEY(5, 3, KEY_S)
432*f126890aSEmmanuel Vadot		MATRIX_KEY(5, 4, KEY_Z)
433*f126890aSEmmanuel Vadot		MATRIX_KEY(6, 0, KEY_L)
434*f126890aSEmmanuel Vadot		MATRIX_KEY(6, 1, KEY_2)
435*f126890aSEmmanuel Vadot		MATRIX_KEY(6, 2, KEY_W)
436*f126890aSEmmanuel Vadot		MATRIX_KEY(6, 3, KEY_A)
437*f126890aSEmmanuel Vadot		MATRIX_KEY(6, 4, KEY_RIGHTBRACE)
438*f126890aSEmmanuel Vadot		MATRIX_KEY(7, 0, KEY_ENTER)
439*f126890aSEmmanuel Vadot		MATRIX_KEY(7, 1, KEY_1)
440*f126890aSEmmanuel Vadot		MATRIX_KEY(7, 2, KEY_Q)
441*f126890aSEmmanuel Vadot		MATRIX_KEY(7, 3, KEY_LEFTSHIFT)
442*f126890aSEmmanuel Vadot		MATRIX_KEY(7, 4, KEY_LEFTBRACE )
443*f126890aSEmmanuel Vadot	 >;
444*f126890aSEmmanuel Vadot};
445*f126890aSEmmanuel Vadot
446*f126890aSEmmanuel Vadot/* backup battery charger */
447*f126890aSEmmanuel Vadot&charger {
448*f126890aSEmmanuel Vadot	ti,bb-uvolt = <3200000>;
449*f126890aSEmmanuel Vadot	ti,bb-uamp = <150>;
450*f126890aSEmmanuel Vadot};
451*f126890aSEmmanuel Vadot
452*f126890aSEmmanuel Vadot/* MMC2 */
453*f126890aSEmmanuel Vadot&vmmc2 {
454*f126890aSEmmanuel Vadot	regulator-min-microvolt = <1850000>;
455*f126890aSEmmanuel Vadot	regulator-max-microvolt = <3150000>;
456*f126890aSEmmanuel Vadot};
457*f126890aSEmmanuel Vadot
458*f126890aSEmmanuel Vadot/* LCD */
459*f126890aSEmmanuel Vadot&vaux1 {
460*f126890aSEmmanuel Vadot	regulator-min-microvolt = <3000000>;
461*f126890aSEmmanuel Vadot	regulator-max-microvolt = <3000000>;
462*f126890aSEmmanuel Vadot};
463*f126890aSEmmanuel Vadot
464*f126890aSEmmanuel Vadot/* USB Host PHY */
465*f126890aSEmmanuel Vadot&vaux2 {
466*f126890aSEmmanuel Vadot	regulator-min-microvolt = <1800000>;
467*f126890aSEmmanuel Vadot	regulator-max-microvolt = <1800000>;
468*f126890aSEmmanuel Vadot};
469*f126890aSEmmanuel Vadot
470*f126890aSEmmanuel Vadot/* available on expansion connector */
471*f126890aSEmmanuel Vadot&vaux3 {
472*f126890aSEmmanuel Vadot	regulator-min-microvolt = <2800000>;
473*f126890aSEmmanuel Vadot	regulator-max-microvolt = <2800000>;
474*f126890aSEmmanuel Vadot};
475*f126890aSEmmanuel Vadot
476*f126890aSEmmanuel Vadot/* ADS7846 and nubs */
477*f126890aSEmmanuel Vadot&vaux4 {
478*f126890aSEmmanuel Vadot	regulator-min-microvolt = <2800000>;
479*f126890aSEmmanuel Vadot	regulator-max-microvolt = <2800000>;
480*f126890aSEmmanuel Vadot};
481*f126890aSEmmanuel Vadot
482*f126890aSEmmanuel Vadot/* power audio DAC and LID sensor */
483*f126890aSEmmanuel Vadot&vsim {
484*f126890aSEmmanuel Vadot	regulator-min-microvolt = <2800000>;
485*f126890aSEmmanuel Vadot	regulator-max-microvolt = <2800000>;
486*f126890aSEmmanuel Vadot	regulator-always-on;
487*f126890aSEmmanuel Vadot};
488*f126890aSEmmanuel Vadot
489*f126890aSEmmanuel Vadot&i2c2 {
490*f126890aSEmmanuel Vadot	clock-frequency = <100000>;
491*f126890aSEmmanuel Vadot	/* no clients so we should disable clock */
492*f126890aSEmmanuel Vadot};
493*f126890aSEmmanuel Vadot
494*f126890aSEmmanuel Vadot&i2c3 {
495*f126890aSEmmanuel Vadot	clock-frequency = <100000>;
496*f126890aSEmmanuel Vadot
497*f126890aSEmmanuel Vadot	bq27500@55 {
498*f126890aSEmmanuel Vadot		compatible = "ti,bq27500";
499*f126890aSEmmanuel Vadot		reg = <0x55>;
500*f126890aSEmmanuel Vadot	};
501*f126890aSEmmanuel Vadot
502*f126890aSEmmanuel Vadot};
503*f126890aSEmmanuel Vadot
504*f126890aSEmmanuel Vadot&usb_otg_hs {
505*f126890aSEmmanuel Vadot	interface-type = <0>;
506*f126890aSEmmanuel Vadot	usb-phy = <&usb2_phy>;
507*f126890aSEmmanuel Vadot	phys = <&usb2_phy>;
508*f126890aSEmmanuel Vadot	phy-names = "usb2-phy";
509*f126890aSEmmanuel Vadot	mode = <3>;
510*f126890aSEmmanuel Vadot	power = <50>;
511*f126890aSEmmanuel Vadot};
512*f126890aSEmmanuel Vadot
513*f126890aSEmmanuel Vadot/*
514*f126890aSEmmanuel Vadot * Many pandora boards have been produced with defective write-protect switches
515*f126890aSEmmanuel Vadot * on either slot, so it was decided not to use this feature. If you know
516*f126890aSEmmanuel Vadot * your board has good switches, feel free to uncomment wp-gpios below.
517*f126890aSEmmanuel Vadot */
518*f126890aSEmmanuel Vadot&mmc1 {
519*f126890aSEmmanuel Vadot	pinctrl-names = "default";
520*f126890aSEmmanuel Vadot	pinctrl-0 = <&mmc1_pins>;
521*f126890aSEmmanuel Vadot	vmmc-supply = <&vmmc1>;
522*f126890aSEmmanuel Vadot	bus-width = <4>;
523*f126890aSEmmanuel Vadot	cd-gpios = <&twl_gpio 0 GPIO_ACTIVE_LOW>;
524*f126890aSEmmanuel Vadot	/*wp-gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>;*/	/* GPIO_126 */
525*f126890aSEmmanuel Vadot};
526*f126890aSEmmanuel Vadot
527*f126890aSEmmanuel Vadot&mmc2 {
528*f126890aSEmmanuel Vadot	pinctrl-names = "default";
529*f126890aSEmmanuel Vadot	pinctrl-0 = <&mmc2_pins>;
530*f126890aSEmmanuel Vadot	vmmc-supply = <&vmmc2>;
531*f126890aSEmmanuel Vadot	bus-width = <4>;
532*f126890aSEmmanuel Vadot	cd-gpios = <&twl_gpio 1 GPIO_ACTIVE_LOW>;
533*f126890aSEmmanuel Vadot	/*wp-gpios = <&gpio4 31 GPIO_ACTIVE_HIGH>;*/	/* GPIO_127 */
534*f126890aSEmmanuel Vadot};
535*f126890aSEmmanuel Vadot
536*f126890aSEmmanuel Vadot&mmc3 {
537*f126890aSEmmanuel Vadot	vmmc-supply = <&wlan_en>;
538*f126890aSEmmanuel Vadot
539*f126890aSEmmanuel Vadot	bus-width = <4>;
540*f126890aSEmmanuel Vadot	non-removable;
541*f126890aSEmmanuel Vadot	ti,non-removable;
542*f126890aSEmmanuel Vadot	cap-power-off-card;
543*f126890aSEmmanuel Vadot
544*f126890aSEmmanuel Vadot	pinctrl-names = "default";
545*f126890aSEmmanuel Vadot	pinctrl-0 = <&mmc3_pins>;
546*f126890aSEmmanuel Vadot
547*f126890aSEmmanuel Vadot	#address-cells = <1>;
548*f126890aSEmmanuel Vadot	#size-cells = <0>;
549*f126890aSEmmanuel Vadot
550*f126890aSEmmanuel Vadot	wlan: wifi@1 {
551*f126890aSEmmanuel Vadot		compatible = "ti,wl1251";
552*f126890aSEmmanuel Vadot
553*f126890aSEmmanuel Vadot		reg = <1>;
554*f126890aSEmmanuel Vadot
555*f126890aSEmmanuel Vadot		interrupt-parent = <&gpio1>;
556*f126890aSEmmanuel Vadot		interrupts = <21 IRQ_TYPE_LEVEL_HIGH>;	/* GPIO_21 */
557*f126890aSEmmanuel Vadot
558*f126890aSEmmanuel Vadot		ti,wl1251-has-eeprom;
559*f126890aSEmmanuel Vadot	};
560*f126890aSEmmanuel Vadot};
561*f126890aSEmmanuel Vadot
562*f126890aSEmmanuel Vadot/* bluetooth*/
563*f126890aSEmmanuel Vadot&uart1 {
564*f126890aSEmmanuel Vadot};
565*f126890aSEmmanuel Vadot
566*f126890aSEmmanuel Vadot/* spare (expansion connector) */
567*f126890aSEmmanuel Vadot&uart2 {
568*f126890aSEmmanuel Vadot};
569*f126890aSEmmanuel Vadot
570*f126890aSEmmanuel Vadot/* console (expansion connector) */
571*f126890aSEmmanuel Vadot&uart3 {
572*f126890aSEmmanuel Vadot	pinctrl-names = "default";
573*f126890aSEmmanuel Vadot	pinctrl-0 = <&uart3_pins>;
574*f126890aSEmmanuel Vadot	interrupts-extended = <&intc 74 &omap3_pmx_core OMAP3_UART3_RX>;
575*f126890aSEmmanuel Vadot};
576*f126890aSEmmanuel Vadot
577*f126890aSEmmanuel Vadot&usbhshost {
578*f126890aSEmmanuel Vadot	port2-mode = "ehci-phy";
579*f126890aSEmmanuel Vadot};
580*f126890aSEmmanuel Vadot
581*f126890aSEmmanuel Vadot&usbhsehci {
582*f126890aSEmmanuel Vadot	phys = <0 &hsusb2_phy>;
583*f126890aSEmmanuel Vadot};
584*f126890aSEmmanuel Vadot
585*f126890aSEmmanuel Vadot&gpmc {
586*f126890aSEmmanuel Vadot	ranges = <0 0 0x30000000 0x1000000>; /* CS0: 16MB for NAND */
587*f126890aSEmmanuel Vadot
588*f126890aSEmmanuel Vadot	nand@0,0 {
589*f126890aSEmmanuel Vadot		compatible = "ti,omap2-nand";
590*f126890aSEmmanuel Vadot		reg = <0 0 4>; /* CS0, offset 0, IO size 4 */
591*f126890aSEmmanuel Vadot		interrupt-parent = <&gpmc>;
592*f126890aSEmmanuel Vadot		interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
593*f126890aSEmmanuel Vadot			     <1 IRQ_TYPE_NONE>;	/* termcount */
594*f126890aSEmmanuel Vadot		nand-bus-width = <16>;
595*f126890aSEmmanuel Vadot		ti,nand-ecc-opt = "sw";
596*f126890aSEmmanuel Vadot
597*f126890aSEmmanuel Vadot		gpmc,sync-clk-ps = <0>;
598*f126890aSEmmanuel Vadot		gpmc,cs-on-ns = <0>;
599*f126890aSEmmanuel Vadot		gpmc,cs-rd-off-ns = <44>;
600*f126890aSEmmanuel Vadot		gpmc,cs-wr-off-ns = <44>;
601*f126890aSEmmanuel Vadot		gpmc,adv-on-ns = <6>;
602*f126890aSEmmanuel Vadot		gpmc,adv-rd-off-ns = <34>;
603*f126890aSEmmanuel Vadot		gpmc,adv-wr-off-ns = <44>;
604*f126890aSEmmanuel Vadot		gpmc,we-off-ns = <40>;
605*f126890aSEmmanuel Vadot		gpmc,oe-off-ns = <54>;
606*f126890aSEmmanuel Vadot		gpmc,access-ns = <64>;
607*f126890aSEmmanuel Vadot		gpmc,rd-cycle-ns = <82>;
608*f126890aSEmmanuel Vadot		gpmc,wr-cycle-ns = <82>;
609*f126890aSEmmanuel Vadot		gpmc,wr-access-ns = <40>;
610*f126890aSEmmanuel Vadot		gpmc,wr-data-mux-bus-ns = <0>;
611*f126890aSEmmanuel Vadot		gpmc,device-width = <2>;
612*f126890aSEmmanuel Vadot
613*f126890aSEmmanuel Vadot		#address-cells = <1>;
614*f126890aSEmmanuel Vadot		#size-cells = <1>;
615*f126890aSEmmanuel Vadot
616*f126890aSEmmanuel Vadot		/* u-boot uses mtdparts=nand:512k(xloader),1920k(uboot),128k(uboot-env),10m(boot),-(rootfs) */
617*f126890aSEmmanuel Vadot
618*f126890aSEmmanuel Vadot		x-loader@0 {
619*f126890aSEmmanuel Vadot			label = "xloader";
620*f126890aSEmmanuel Vadot			reg = <0 0x80000>;
621*f126890aSEmmanuel Vadot		};
622*f126890aSEmmanuel Vadot
623*f126890aSEmmanuel Vadot		bootloaders@80000 {
624*f126890aSEmmanuel Vadot			label = "uboot";
625*f126890aSEmmanuel Vadot			reg = <0x80000 0x1e0000>;
626*f126890aSEmmanuel Vadot		};
627*f126890aSEmmanuel Vadot
628*f126890aSEmmanuel Vadot		bootloaders_env@260000 {
629*f126890aSEmmanuel Vadot			label = "uboot-env";
630*f126890aSEmmanuel Vadot			reg = <0x260000 0x20000>;
631*f126890aSEmmanuel Vadot		};
632*f126890aSEmmanuel Vadot
633*f126890aSEmmanuel Vadot		kernel@280000 {
634*f126890aSEmmanuel Vadot			label = "boot";
635*f126890aSEmmanuel Vadot			reg = <0x280000 0xa00000>;
636*f126890aSEmmanuel Vadot		};
637*f126890aSEmmanuel Vadot
638*f126890aSEmmanuel Vadot		filesystem@c80000 {
639*f126890aSEmmanuel Vadot			label = "rootfs";
640*f126890aSEmmanuel Vadot			reg = <0xc80000 0>;	/* 0 = MTDPART_SIZ_FULL */
641*f126890aSEmmanuel Vadot		};
642*f126890aSEmmanuel Vadot	};
643*f126890aSEmmanuel Vadot};
644*f126890aSEmmanuel Vadot
645*f126890aSEmmanuel Vadot&mcspi1 {
646*f126890aSEmmanuel Vadot	tsc2046@0 {
647*f126890aSEmmanuel Vadot		reg = <0>;	/* CS0 */
648*f126890aSEmmanuel Vadot		compatible = "ti,tsc2046";
649*f126890aSEmmanuel Vadot		spi-max-frequency = <1000000>;
650*f126890aSEmmanuel Vadot		pinctrl-names = "default";
651*f126890aSEmmanuel Vadot		pinctrl-0 = <&penirq_pins>;
652*f126890aSEmmanuel Vadot		interrupt-parent = <&gpio3>;
653*f126890aSEmmanuel Vadot		interrupts = <30 IRQ_TYPE_NONE>;	/* GPIO_94 */
654*f126890aSEmmanuel Vadot		pendown-gpio = <&gpio3 30 GPIO_ACTIVE_LOW>;
655*f126890aSEmmanuel Vadot		vcc-supply = <&vaux4>;
656*f126890aSEmmanuel Vadot
657*f126890aSEmmanuel Vadot		ti,x-min = /bits/ 16 <0>;
658*f126890aSEmmanuel Vadot		ti,x-max = /bits/ 16 <8000>;
659*f126890aSEmmanuel Vadot		ti,y-min = /bits/ 16 <0>;
660*f126890aSEmmanuel Vadot		ti,y-max = /bits/ 16 <4800>;
661*f126890aSEmmanuel Vadot		ti,x-plate-ohms = /bits/ 16 <40>;
662*f126890aSEmmanuel Vadot		ti,pressure-max = /bits/ 16 <255>;
663*f126890aSEmmanuel Vadot
664*f126890aSEmmanuel Vadot		wakeup-source;
665*f126890aSEmmanuel Vadot	};
666*f126890aSEmmanuel Vadot
667*f126890aSEmmanuel Vadot	lcd: lcd@1 {
668*f126890aSEmmanuel Vadot		reg = <1>;	/* CS1 */
669*f126890aSEmmanuel Vadot		compatible = "tpo,td043mtea1";
670*f126890aSEmmanuel Vadot		spi-max-frequency = <100000>;
671*f126890aSEmmanuel Vadot		spi-cpol;
672*f126890aSEmmanuel Vadot		spi-cpha;
673*f126890aSEmmanuel Vadot
674*f126890aSEmmanuel Vadot		label = "lcd";
675*f126890aSEmmanuel Vadot		reset-gpios = <&gpio5 29 GPIO_ACTIVE_LOW>;	/* GPIO_157 */
676*f126890aSEmmanuel Vadot		vcc-supply = <&vaux1>;
677*f126890aSEmmanuel Vadot
678*f126890aSEmmanuel Vadot		port {
679*f126890aSEmmanuel Vadot			lcd_in: endpoint {
680*f126890aSEmmanuel Vadot				remote-endpoint = <&dpi_out>;
681*f126890aSEmmanuel Vadot			};
682*f126890aSEmmanuel Vadot		};
683*f126890aSEmmanuel Vadot	};
684*f126890aSEmmanuel Vadot
685*f126890aSEmmanuel Vadot
686*f126890aSEmmanuel Vadot};
687*f126890aSEmmanuel Vadot
688*f126890aSEmmanuel Vadot/* n/a - used as GPIOs */
689*f126890aSEmmanuel Vadot&mcbsp1 {
690*f126890aSEmmanuel Vadot};
691*f126890aSEmmanuel Vadot
692*f126890aSEmmanuel Vadot/* audio DAC */
693*f126890aSEmmanuel Vadot&mcbsp2 {
694*f126890aSEmmanuel Vadot};
695*f126890aSEmmanuel Vadot
696*f126890aSEmmanuel Vadot/* bluetooth */
697*f126890aSEmmanuel Vadot&mcbsp3 {
698*f126890aSEmmanuel Vadot};
699*f126890aSEmmanuel Vadot
700*f126890aSEmmanuel Vadot/* to twl4030*/
701*f126890aSEmmanuel Vadot&mcbsp4 {
702*f126890aSEmmanuel Vadot};
703*f126890aSEmmanuel Vadot
704*f126890aSEmmanuel Vadot&venc {
705*f126890aSEmmanuel Vadot	status = "okay";
706*f126890aSEmmanuel Vadot
707*f126890aSEmmanuel Vadot	vdda-supply = <&vdac>;
708*f126890aSEmmanuel Vadot
709*f126890aSEmmanuel Vadot	port {
710*f126890aSEmmanuel Vadot		venc_out: endpoint {
711*f126890aSEmmanuel Vadot			remote-endpoint = <&tv_connector_in>;
712*f126890aSEmmanuel Vadot			ti,channels = <2>;
713*f126890aSEmmanuel Vadot		};
714*f126890aSEmmanuel Vadot	};
715*f126890aSEmmanuel Vadot};
716*f126890aSEmmanuel Vadot
717*f126890aSEmmanuel Vadot&dss {
718*f126890aSEmmanuel Vadot	pinctrl-names = "default";
719*f126890aSEmmanuel Vadot	pinctrl-0 = < &dss_dpi_pins >;
720*f126890aSEmmanuel Vadot
721*f126890aSEmmanuel Vadot	status = "okay";
722*f126890aSEmmanuel Vadot	vdds_dsi-supply = <&vpll2>;
723*f126890aSEmmanuel Vadot
724*f126890aSEmmanuel Vadot	port {
725*f126890aSEmmanuel Vadot		dpi_out: endpoint {
726*f126890aSEmmanuel Vadot			remote-endpoint = <&lcd_in>;
727*f126890aSEmmanuel Vadot			data-lines = <24>;
728*f126890aSEmmanuel Vadot		};
729*f126890aSEmmanuel Vadot	};
730*f126890aSEmmanuel Vadot};
731