blob: c54f7720ac9152936f167414aac433ca82837b1b [file] [log] [blame]
Tony Lindgren687c2762015-05-20 09:23:43 -07001/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License version 2 as
4 * published by the Free Software Foundation.
5 */
6
7/dts-v1/;
8
9#include "omap36xx.dtsi"
10#include "logicpd-torpedo-som.dtsi"
11#include "omap-gpmc-smsc9221.dtsi"
12
13/ {
14 model = "LogicPD Zoom DM3730 Torpedo Development Kit";
Tony Lindgren57df5382015-10-16 12:23:33 -070015 compatible = "logicpd,dm3730-torpedo-devkit", "ti,omap3630", "ti,omap3";
Tony Lindgren687c2762015-05-20 09:23:43 -070016
17 gpio_keys {
18 compatible = "gpio-keys";
19 pinctrl-names = "default";
20 pinctrl-0 = <&gpio_key_pins &gpio_key_pins_wkup>;
21
22 sysboot2 {
23 label = "sysboot2";
24 gpios = <&gpio1 2 GPIO_ACTIVE_LOW>; /* gpio2 */
25 linux,code = <BTN_0>;
Sudeep Holla0c4d63b2015-10-21 11:10:12 +010026 wakeup-source;
Tony Lindgren687c2762015-05-20 09:23:43 -070027 };
28
29 sysboot5 {
30 label = "sysboot5";
31 gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; /* gpio7 */
32 linux,code = <BTN_1>;
Sudeep Holla0c4d63b2015-10-21 11:10:12 +010033 wakeup-source;
Tony Lindgren687c2762015-05-20 09:23:43 -070034 };
35
36 gpio1 {
37 label = "gpio1";
38 gpios = <&gpio6 21 GPIO_ACTIVE_LOW>; /* gpio181 */
39 linux,code = <BTN_2>;
Sudeep Holla0c4d63b2015-10-21 11:10:12 +010040 wakeup-source;
Tony Lindgren687c2762015-05-20 09:23:43 -070041 };
42
43 gpio2 {
44 label = "gpio2";
45 gpios = <&gpio6 18 GPIO_ACTIVE_LOW>; /* gpio178 */
46 linux,code = <BTN_3>;
Sudeep Holla0c4d63b2015-10-21 11:10:12 +010047 wakeup-source;
Tony Lindgren687c2762015-05-20 09:23:43 -070048 };
49 };
50
Adam Fordf81902e2015-10-23 07:20:23 -050051 sound {
52 compatible = "ti,omap-twl4030";
53 ti,model = "omap3logic";
54 ti,mcbsp = <&mcbsp2>;
55 };
56
Tony Lindgren687c2762015-05-20 09:23:43 -070057 leds {
58 compatible = "gpio-leds";
59 pinctrl-names = "default";
60 pinctrl-0 = <&led_pins>;
61
62 led1 {
63 label = "led1";
64 gpios = <&gpio6 20 GPIO_ACTIVE_HIGH>; /* gpio180 */
65 linux,default-trigger = "cpu0";
66 };
67
68 led2 {
69 label = "led2";
70 gpios = <&gpio6 19 GPIO_ACTIVE_HIGH>; /* gpio179 */
71 linux,default-trigger = "none";
72 };
73 };
74};
75
Adam Ford2d119612015-10-23 07:27:33 -050076&vaux1 {
77 regulator-min-microvolt = <3000000>;
78 regulator-max-microvolt = <3000000>;
79};
80
81&vaux4 {
82 regulator-min-microvolt = <1800000>;
83 regulator-max-microvolt = <1800000>;
84};
85
Adam Fordb6f0f6c2015-10-26 07:53:10 -050086&vaux1 {
87 regulator-min-microvolt = <3000000>;
88 regulator-max-microvolt = <3000000>;
89};
90
91&vaux4 {
92 regulator-min-microvolt = <1800000>;
93 regulator-max-microvolt = <1800000>;
94};
95
Adam Fordf81902e2015-10-23 07:20:23 -050096&mcbsp2 {
97 status = "okay";
98};
99
Tony Lindgren687c2762015-05-20 09:23:43 -0700100&charger {
101 ti,bb-uvolt = <3200000>;
102 ti,bb-uamp = <150>;
103};
104
105&gpmc {
106 ranges = <1 0 0x08000000 0x1000000>; /* CS1: 16MB for LAN9221 */
107
108 ethernet@gpmc {
109 pinctrl-names = "default";
110 pinctrl-0 = <&lan9221_pins>;
111 interrupt-parent = <&gpio5>;
112 interrupts = <1 IRQ_TYPE_LEVEL_LOW>; /* gpio129 */
113 reg = <1 0 0xff>;
114 };
115};
116
Adam Ford60db5542015-12-16 21:18:29 -0600117&vpll2 {
118 regulator-always-on;
119};
120
121&dss {
122 status = "ok";
123 vdds_dsi-supply = <&vpll2>;
124 pinctrl-names = "default";
125 pinctrl-0 = <&dss_dpi_pins1>;
126 port {
127 dpi_out: endpoint {
128 remote-endpoint = <&lcd_in>;
129 data-lines = <16>;
130 };
131 };
132};
133
134/ {
135 aliases {
136 display0 = &lcd0;
137 };
138
139 lcd0: display@0 {
140 compatible = "panel-dpi";
141 label = "15";
142 status = "okay";
143 /* default-on; */
144 pinctrl-names = "default";
145 enable-gpios = <&gpio5 27 GPIO_ACTIVE_HIGH>; /* gpio155, lcd INI */
146
147 port {
148 lcd_in: endpoint {
149 remote-endpoint = <&dpi_out>;
150 };
151 };
152
153 panel-timing {
154 clock-frequency = <9000000>;
155 hactive = <480>;
156 vactive = <272>;
157 hfront-porch = <3>;
158 hback-porch = <2>;
159 hsync-len = <42>;
160 vback-porch = <3>;
161 vfront-porch = <4>;
162 vsync-len = <11>;
163 hsync-active = <0>;
164 vsync-active = <0>;
165 de-active = <1>;
166 pixelclk-active = <1>;
167 };
168 };
169
170 bl: backlight {
171 compatible = "gpio-backlight";
172 pinctrl-names = "default";
173 pinctrl-0 = <&backlight_pins>;
174
175 gpios = <&gpio2 24 GPIO_ACTIVE_HIGH>, /* gpio_56 */
176 <&gpio5 26 GPIO_ACTIVE_HIGH>; /* gpio_154 */
177 default-on;
178 };
179};
180
Tony Lindgren687c2762015-05-20 09:23:43 -0700181&mmc1 {
182 interrupts-extended = <&intc 83 &omap3_pmx_core 0x11a>;
183 pinctrl-names = "default";
184 pinctrl-0 = <&mmc1_pins &mmc1_cd>;
185 cd-gpios = <&gpio4 31 IRQ_TYPE_LEVEL_LOW>; /* gpio127 */
186 vmmc-supply = <&vmmc1>;
187 bus-width = <4>;
188 cap-power-off-card;
189};
190
191&omap3_pmx_core {
192 gpio_key_pins: pinmux_gpio_key_pins {
193 pinctrl-single,pins = <
194 OMAP3_CORE1_IOPAD(0x21d6, PIN_INPUT_PULLUP | MUX_MODE4) /* mcspi2_clk.gpio_178 */
195 OMAP3_CORE1_IOPAD(0x21dc, PIN_INPUT_PULLUP | MUX_MODE4) /* mcspi2_cs0.gpio_181 */
196 >;
197 };
198
199 led_pins: pinmux_led_pins {
200 pinctrl-single,pins = <
201 OMAP3_CORE1_IOPAD(0x21d8, PIN_OUTPUT | MUX_MODE4) /* gpio_179 */
202 OMAP3_CORE1_IOPAD(0x21da, PIN_OUTPUT | MUX_MODE4) /* gpio_180 */
203 >;
204 };
205
206 mmc1_pins: pinmux_mmc1_pins {
207 pinctrl-single,pins = <
208 OMAP3_CORE1_IOPAD(0x2144, PIN_OUTPUT | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */
209 OMAP3_CORE1_IOPAD(0x2146, PIN_INPUT | MUX_MODE0) /* sdmmc1_cmd.sdmmc1_cmd */
210 OMAP3_CORE1_IOPAD(0x2148, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat0.sdmmc1_dat0 */
211 OMAP3_CORE1_IOPAD(0x214a, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat1.sdmmc1_dat1 */
212 OMAP3_CORE1_IOPAD(0x214c, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat2.sdmmc1_dat2 */
213 OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */
214 >;
215 };
Adam Ford60db5542015-12-16 21:18:29 -0600216
217 backlight_pins: pinmux_backlight_pins {
218 pinctrl-single,pins = <
219 OMAP3_CORE1_IOPAD(0x20B8, PIN_OUTPUT | MUX_MODE4) /* gpmc_ncs5.gpio_56 */
220 OMAP3_CORE1_IOPAD(0x2188, PIN_OUTPUT | MUX_MODE4) /* mcbsp4_dx.gpio_154 */
221 >;
222 };
223
224 dss_dpi_pins1: pinmux_dss_dpi_pins1 {
225 pinctrl-single,pins = <
226 OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */
227 OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */
228 OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */
229 OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */
230
231 OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */
232 OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */
233 OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */
234 OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */
235 OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */
236 OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */
237 OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */
238 OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */
239 OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */
240 OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */
241 OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */
242 OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */
243
244 OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT | MUX_MODE3) /* dss_data18.dss_data0 */
245 OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT | MUX_MODE3) /* dss_data19.dss_data1 */
246 OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE3) /* dss_data20.dss_data2 */
247 OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT | MUX_MODE3) /* dss_data21.dss_data3 */
248 OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE3) /* dss_data22.dss_data4 */
249 OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE3) /* dss_data23.dss_data5 */
250 >;
251 };
Tony Lindgren687c2762015-05-20 09:23:43 -0700252};
253
254&omap3_pmx_wkup {
255 gpio_key_pins_wkup: pinmux_gpio_key_pins_wkup {
256 pinctrl-single,pins = <
257 OMAP3_WKUP_IOPAD(0x2a0a, PIN_INPUT_PULLUP | MUX_MODE4) /* sys_boot0.gpio_2 */
258 OMAP3_WKUP_IOPAD(0x2a14, PIN_INPUT_PULLUP | MUX_MODE4) /* sys_boot5.gpio_7 */
259 >;
260 };
261
262 lan9221_pins: pinmux_lan9221_pins {
263 pinctrl-single,pins = <
264 OMAP3_WKUP_IOPAD(0x2a5a, PIN_INPUT | MUX_MODE4) /* reserved.gpio_129 */
265 >;
266 };
267
268 mmc1_cd: pinmux_mmc1_cd {
269 pinctrl-single,pins = <
270 OMAP3_WKUP_IOPAD(0x2a54, PIN_INPUT_PULLUP | MUX_MODE4) /* reserved.gpio_127 */
271 >;
272 };
273};
274
275&uart1 {
276 interrupts-extended = <&intc 72 &omap3_pmx_core OMAP3_UART1_RX>;
277};
278
279/* Wired to the tps65950 on the SOM, only the USB connector is on the devkit */
280&usb_otg_hs {
281 interface-type = <0>;
282 usb-phy = <&usb2_phy>;
283 phys = <&usb2_phy>;
284 phy-names = "usb2-phy";
285 mode = <3>;
286 power = <50>;
287};